[Stormdos-develop] tasks.txt
Status: Planning
Brought to you by:
exhu
From: Juras <yb...@tu...> - 2004-11-06 18:54:44
|
Hello stormdos-develop, Processes are: 1) kernel (starter, the first thread which loads shell etc. - it has limited address space, because it is then shared to all processes) 2) drivers 3) applications Processes are characterized by their own address space, but sharing kernel address space and having some addresses reserved by DLLs. Drivers are executed at 0 priviledge level. Each driver executes on its own address space and has at least one thread. Applications use drivers by sending messages. Memory sharing (for drivers to be able to write to it) is provided by the kernel in the following way: 1) application registers a memory handle with BASE and SIZE in the address space of the process. (the kernel translates it into physical BASE and SIZE) 2) drivers get this handle via a message and LOCK it, the kernel allocates pages mapped to the physical ones specified by the handle. 3) drivers unlock it. 4) application unregister the handle. ----------------------------------- 1) one TSS for kernel/app/drivers/vm86 and software multi-tasking (stack-based) 2) TSSes for exceptions -- Best regards, Juras mailto:yb...@tu... |