Message-Id: <199703140753.IAA17825@math.amu.edu.pl> Comments: Authenticated sender is From: "Mark Habersack" Organization: KGB To: "Colin W. Glenn" Date: Fri, 14 Mar 1997 08:54:38 +0100 MIME-Version: 1.0 Content-type: text/plain; charset=US-ASCII Content-transfer-encoding: 7BIT Subject: Re: [opendos] IOSYS Magic? Reply-to: grendel AT ananke DOT amu DOT edu DOT pl CC: "'OpenDOS Mailing List'" References: <199703131542 DOT QAA15421 AT math DOT amu DOT edu DOT pl> In-reply-to: Sender: owner-opendos AT mail DOT tacoma DOT net Precedence: bulk On 13 Mar 97 (at 19:49) Colin W. Glenn became famous by saying: > To those familar with how the kernel works, I got a question: > > > How so? The only potential problem I see is that the stack is undefined > > > upon entry into the command processor, but seeing as you MUST define it > > > as the permanent command shell, you never have to worry about exiting to > > > an unknow machine state. Them who forget to add the /p switch will need > > > to be > > > > And what about loading the command.com high? If the feature is enabled, > > then what gets loaded high is the proxy and not the real shell. Also DOS > > kernel does some magic when starting up a shell - dunno what exactly > > (yet), but I'm sure that not every program may be a shell (hint: set > > win.com as the shell) > > Does the kernel set anything special up before loading the shell? Does the Yes. The shell is special in that it is being loaded in two parts - each of them in a specific region of memory. The resident portion goes low in the memory, right after the kernel code (with an exception when DOS is loaded up or high - the the shell goes there as well) while the transient portion is pushed up towards the end of TPA to protect it from being overwritten too soon. > shell have to meet certain requirements to be a shell? Can a shell have a I'm not sure, but I suspect the answer is yes. From what I investigated, M$-DOG kernel does some undocummented calls into the shell on load time. Besides try to set *any* program as a shell? > preloader which does something before loading the shell? Yes, that would be possible provided that we supply a fork function with special capability of slicin the shell-to-come into the two mentioned pieces. It is going to be the first thing I'll check when we I the sources. > Inquiring minds need to know! Inquiring minds join together! ;-) ------------------------ On promenades where drunks propose to lonely arcade mannequins, where ceremonies pause at the jewellers shop display feigning casual silence in strained romantic interludes till they commit themselves to the muted journey home. And the pool player rests on another cue. Last night's hero picking up his dues, a honeymoon gambled on a richochet...