RMMTOS - Real Mode MultiTasking Operating System
RMMTOS - Real Mode MultiTasking Operating System
I am making an operating system that runs in real mode and does multitasking. I already have two test tasks printing stuff on the screen. It uses BIOS to access device by now, but I will write my own drivers because using BIOS with multitasking might be a bit hard. It will also have some basic userspace apps, and I might even make the system self hosting some day.
It won't probably offer anything new to the operating system world, but it's still fun
Project page in Google Code (not very much to see yet):
http://code.google.com/p/rmmtos/
I am planning to make a release when I have a shell and some apps running.
For now I it is 100% ASM.
It won't probably offer anything new to the operating system world, but it's still fun
Project page in Google Code (not very much to see yet):
http://code.google.com/p/rmmtos/
I am planning to make a release when I have a shell and some apps running.
For now I it is 100% ASM.
http://code.google.com/p/rmmtos/ - Real Mode MultiTasking Operating System
Re: RMMTOS - Real Mode MultiTasking Operating System
Sounds like fun, what assembler are you using for the project ?
- Love4Boobies
- Member
- Posts: 2111
- Joined: Fri Mar 07, 2008 5:36 pm
- Location: Bucharest, Romania
Re: RMMTOS - Real Mode MultiTasking Operating System
Are you sure you have enough memory available for custom-made drivers, the kernel and multiple applications (it is a multitasking OS, right?)? You could try swapping but that would be even slower than using BIOS' services one at a time because you'd have to do it constantly. May I suggest unreal mode instead?
"Computers in the future may weigh no more than 1.5 tons.", Popular Mechanics (1949)
[ Project UDI ]
[ Project UDI ]
Re: RMMTOS - Real Mode MultiTasking Operating System
@Dex: I am using nasm for the project.
@Love4Boobies: As I am not going to port programs very much, the programs aren't really going to be very big.
If it is possible to use 32 bit segment values in unreal mode, I might consider using it.
@Love4Boobies: As I am not going to port programs very much, the programs aren't really going to be very big.
If it is possible to use 32 bit segment values in unreal mode, I might consider using it.
http://code.google.com/p/rmmtos/ - Real Mode MultiTasking Operating System
- Love4Boobies
- Member
- Posts: 2111
- Joined: Fri Mar 07, 2008 5:36 pm
- Location: Bucharest, Romania
Re: RMMTOS - Real Mode MultiTasking Operating System
The x86(_64) only supports 16-bit segments. It doesn't matter which operating mode you are in, segments stay 16 bits long.
"Computers in the future may weigh no more than 1.5 tons.", Popular Mechanics (1949)
[ Project UDI ]
[ Project UDI ]
Re: RMMTOS - Real Mode MultiTasking Operating System
Huh? They support 16(rm/pm) and 32bit segments. 32bit data segments can be used in unreal mode. Actually it shouldn't be called 'support', it's rather a must.
-
- Member
- Posts: 93
- Joined: Mon Nov 24, 2008 9:13 am
Re: RMMTOS - Real Mode MultiTasking Operating System
The segment values are 16 bit, only the offsets can be 32 bit (in (un)real mode). No?cyr1x wrote:Huh? They support 16(rm/pm) and 32bit segments. 32bit data segments can be used in unreal mode. Actually it shouldn't be called 'support', it's rather a must.
--TS
Re: RMMTOS - Real Mode MultiTasking Operating System
Have you see this http://dex4u.com/ASMcompo512b/nanoos2.zip
Realmode multitasking in less than 512byte, fits into boot sector of floppy, cool .
Realmode multitasking in less than 512byte, fits into boot sector of floppy, cool .
Re: RMMTOS - Real Mode MultiTasking Operating System
I hadn't seen it but I tried it and it seems cool. My kernel is already a kilobyte in size, but I am an asm noob so there may be a lot to optimize.Dex wrote:Have you see this http://dex4u.com/ASMcompo512b/nanoos2.zip
Realmode multitasking in less than 512byte, fits into boot sector of floppy, cool .
http://code.google.com/p/rmmtos/ - Real Mode MultiTasking Operating System
Re: RMMTOS - Real Mode MultiTasking Operating System
In the same dir (in the above link), there are many 512byte example eg: game, maybe a good start to port to your OS, as they are so small.
Also if you have not seen already, you could see MiniDos, a very simple dos clone i coded, in less than 2k.
Your free to do as you like with the code, but if you add MT to it, that would be cool.
See here: http://board.flatassembler.net/topic.php?t=5275
Also if you have not seen already, you could see MiniDos, a very simple dos clone i coded, in less than 2k.
Your free to do as you like with the code, but if you add MT to it, that would be cool.
See here: http://board.flatassembler.net/topic.php?t=5275
Re: RMMTOS - Real Mode MultiTasking Operating System
I finally got multitasking working on real hardware.
I don't think the scheduler is very good yet, as two identical tasks take slightly different time to run.
But now I am moving onto implementing VFS, device driver interface, floppy driver and a FAT driver.
I don't think the scheduler is very good yet, as two identical tasks take slightly different time to run.
But now I am moving onto implementing VFS, device driver interface, floppy driver and a FAT driver.
http://code.google.com/p/rmmtos/ - Real Mode MultiTasking Operating System