Therx OS Development Library and OSID Updates

Question about which tools to use, bugs, the best way to implement a function, etc should go here. Don't forget to see if your question is answered in the wiki first! When in doubt post here.
Post Reply
Therx

Therx OS Development Library and OSID Updates

Post by Therx »

I've noticed a lot of people wanting info on multitasking recently and also noticed the lack of a tutorial on the net so I've writen one. You'll find it under OS Theory at http://xinit.port5.com

Enjoy!
Perica
Member
Member
Posts: 454
Joined: Sat Nov 25, 2006 12:50 am

Re:Multitasking Tutorial

Post by Perica »

..
Last edited by Perica on Sun Dec 03, 2006 8:53 pm, edited 1 time in total.
Therx

Re:Multitasking Tutorial

Post by Therx »

Thanks for the hint. I've added a bit about priorities and having kernel and user tasks with different GDTs to restrict access to certain memory areas, etc.
Therx

Re:Therx OS Development Library and OSID Updates

Post by Therx »

Ok now the OSID Modify feature should work
xinit.port5.com/osid/
Tim

Re:Therx OS Development Library and OSID Updates

Post by Tim »

Nice tutorial :). A few points:
I do not know of a successful OS which uses this method as it requires ALL apps to co-operate.
Are 16-bit Windows and MacOS not successful? :) They used co-operative multi-tasking for years on hardware where the overhead of pre-emptive multitasking would have been too great.
Other useful ideas are giving each task its own GDT so that it can only access its own memory and not interfere with the kernel.
This doesn't mean anything -- there can be only one GDT (hence the name 'global'). You should instead talk about either: giving each task its own segments; giving each task its own LDT; or (with paging) giving each task its own page directory.

I think you should also mention threading: that a thread is the basic unit of multitasking and that a process can contain several threads. You'd apply memory protection to the process rather than individual threads.

PS: could you provide HTML versions of these pages, either as well as or instead of the PDFs? I find it a pain having to read pure text documents in Acrobat Reader when I could read them in IE.
Therx

Re:Therx OS Development Library and OSID Updates

Post by Therx »

Ok, made that correction.

Any hints for the site itself. Do you think I need to find tutorials for any other key sections? Can you recommend any tutorials which I could put up? I know that I'm missing anything todo with Memory Management. I have several things in mind which I could put up:-
[0]Tim's two brilliant tutorials
[0]Some things from the OSD seem quite good so I might see if I can use them
[0]The Cottontail document on Memory Management by Frank Millea
Therx

Re:Therx OS Development Library and OSID Updates

Post by Therx »

Ok added Tim's tutorials (MM1, MM2 and DM) and Cottontail Memory Management(more of a document) but still interesting
Post Reply