23 Nov 2004 13:17
Re: Re: implementing the process abstraction in movitz
Muli Ben-Yehuda <mulix <at> mulix.org>
2004-11-23 12:17:54 GMT
2004-11-23 12:17:54 GMT
On Sun, Nov 21, 2004 at 06:58:20PM +0100, Frode Vatvedt Fjeld wrote: > Muli Ben-Yehuda <mulix <at> mulix.org> writes: > > > First of all, I think movitz is very cool. I've been thinking for a > > long time of writing a lisp OS, and was very happy to stumble up on > > movitz. I am now considering implementing the process abstraction > > (namely, fork(), wait(), some variant of exec(), and context > > switching) in movitz, as an OS project, along the lines of the > > attached proposal. [..] > > Hi (again), sounds like an interesting project to me. I think the > first thing you need to make clear for yourself is the exact nature of > the fork() etc. That is, the normal unix fork() sets up a new > address-space etc and in principle shares nothing with anyone else > (except perhaps by copy-on-write semantics) and communicates purely > through system-calls (in various forms). Is this what you want to > do? The ultimate term goal is a full POSIX / Linux emulation layer for movitz that would allow you to run unmodified Linux binaries. Since this is a very big undertaking, my short term goals are the following basic operations - fork - set up a new context. Open questions are whether it supports seperate address spaces (process or threads?) and whether it supports memory protections (user context vs. kernel context). I haven't decided yet, I would prefer processes to threads and user contexts to kernel contexts, but I don't have a good feeling of the scope of the effort involved yet. > Btw. I expect to implement some lightweight threading stuff in Movitz > soon, I expect to need it for the thesis I'm working on. Could you elaborate on what you have in mind? I wouldn't want to duplicate effort. Cheers, Muli -- Muli Ben-Yehuda http://www.mulix.org | http://mulix.livejournal.com/
On Sun, Nov 21, 2004 at 06:58:20PM +0100, Frode Vatvedt Fjeld wrote: > Muli Ben-Yehuda <mulix <at> mulix.org> writes: > > > First of all, I think movitz is very cool. I've been thinking for a > > long time of writing a lisp OS, and was very happy to stumble up on > > movitz. I am now considering implementing the process abstraction > > (namely, fork(), wait(), some variant of exec(), and context > > switching) in movitz, as an OS project, along the lines of the > > attached proposal. [..] > > Hi (again), sounds like an interesting project to me. I think the > first thing you need to make clear for yourself is the exact nature of > the fork() etc. That is, the normal unix fork() sets up a new > address-space etc and in principle shares nothing with anyone else > (except perhaps by copy-on-write semantics) and communicates purely > through system-calls (in various forms). Is this what you want to > do? The ultimate term goal is a full POSIX / Linux emulation layer for movitz that would allow you to run unmodified Linux binaries. Since this is a very big undertaking, my short term goals are the following basic operations - fork - set up a new context. Open questions are whether it supports seperate address spaces (process or threads?) and whether it supports memory protections (user context vs. kernel context). I haven't decided yet, I would prefer processes to threads and user contexts to kernel contexts, but I don't have a good feeling of the scope of the effort involved yet. > Btw. I expect to implement some lightweight threading stuff in Movitz > soon, I expect to need it for the thesis I'm working on. Could you elaborate on what you have in mind? I wouldn't want to duplicate effort. Cheers, Muli -- -- Muli Ben-Yehuda http://www.mulix.org | http://mulix.livejournal.com/
RSS Feed