Mojo 0.1.3 released - works on all my hardware
Mojo 0.1.3 released - works on all my hardware
Hi
Everything now works in all major emulators and all the real hardware that I have access to. I finished improving the existing drivers and file systems to meet my goals for my next major release.
It is 1 year (and 3 days) since I started writing my operating system
You can download floppy and ISO images from the homepage - http://softwarewizard.dk/mojo/index.php?page=download.
This is my test goals for this release (more details here http://softwarewizard.dk/mojo/index.php?page=testing):
1. Working on real hardware
2. Kernel memory handling working on real hardware
3. ATA/ATAPI driver works on real hardware
New features:
- Improved handling of BIOS memory map
- ATA/ATAPI driver works on real hardware
- Added support for German
- Kernel command line parameters
- Loads and boots 3 to 4 times faster (on real hardware)
- Unit tests runs under Cygwin to cross validate my libc, POSIX and STL implementations
- Many minor improvements
Old features:
- Micro kernel
- Preemptive multitasking
- Partial asynchronous IPC
- Simple shell and simple GUI applications
- Follows standards (libc, STL, POSIX)
- Good test coverage
All feedback and feature request are welcome.
clange
P.S. I have also finally gotten my code tracking tool online again - http://softwarewizard.dk/codetracker/.
Everything now works in all major emulators and all the real hardware that I have access to. I finished improving the existing drivers and file systems to meet my goals for my next major release.
It is 1 year (and 3 days) since I started writing my operating system
You can download floppy and ISO images from the homepage - http://softwarewizard.dk/mojo/index.php?page=download.
This is my test goals for this release (more details here http://softwarewizard.dk/mojo/index.php?page=testing):
1. Working on real hardware
2. Kernel memory handling working on real hardware
3. ATA/ATAPI driver works on real hardware
New features:
- Improved handling of BIOS memory map
- ATA/ATAPI driver works on real hardware
- Added support for German
- Kernel command line parameters
- Loads and boots 3 to 4 times faster (on real hardware)
- Unit tests runs under Cygwin to cross validate my libc, POSIX and STL implementations
- Many minor improvements
Old features:
- Micro kernel
- Preemptive multitasking
- Partial asynchronous IPC
- Simple shell and simple GUI applications
- Follows standards (libc, STL, POSIX)
- Good test coverage
All feedback and feature request are welcome.
clange
P.S. I have also finally gotten my code tracking tool online again - http://softwarewizard.dk/codetracker/.
Re: Mojo 0.1.3 released - works on all my hardware
worked great in bochs! =)
there were no real issues that caused any sort of panic or the like.
Just two things:
1: the 'help' command takes a very long time to print the list of commands available. I have a feeling your algorithm that finds the available commands is buggy or maybe there's just a ton of stuff to parse, I don't know, but compared to normal screen-work, it seemed very slow.
2: could you add the ability to change tabs in the system info app with arrow keys or the tab button instead of having to press the 's' in system info?
great work!
there were no real issues that caused any sort of panic or the like.
Just two things:
1: the 'help' command takes a very long time to print the list of commands available. I have a feeling your algorithm that finds the available commands is buggy or maybe there's just a ton of stuff to parse, I don't know, but compared to normal screen-work, it seemed very slow.
2: could you add the ability to change tabs in the system info app with arrow keys or the tab button instead of having to press the 's' in system info?
great work!
Website: https://joscor.com
Re: Mojo 0.1.3 released - works on all my hardware
Hi 01000101
Thanks for testing.
1. My layout algorithm is not very efficient, it is O(n * n) and with a big constant. I think the main reason for the slow output is that i print each command (and even worse) each space character individually. And each print takes several messages each. It is easily optimized and will only make the code a little bit uglier
2. Great idea. I'll implement it.
clange
Edit: Fixed both issues and uploaded new images.
Edit 2: Layout algorithm is not O(n) but O(n * n).
Thanks for testing.
1. My layout algorithm is not very efficient, it is O(n * n) and with a big constant. I think the main reason for the slow output is that i print each command (and even worse) each space character individually. And each print takes several messages each. It is easily optimized and will only make the code a little bit uglier
2. Great idea. I'll implement it.
clange
Edit: Fixed both issues and uploaded new images.
Edit 2: Layout algorithm is not O(n) but O(n * n).
Re: Mojo 0.1.3 released - works on all my hardware
wow, fast work.
the help command output is not significantly faster (no noticeable lag at all), and the tabbing in M2 works great.
the help command output is not significantly faster (no noticeable lag at all), and the tabbing in M2 works great.
Website: https://joscor.com
-
- Member
- Posts: 368
- Joined: Sun Sep 23, 2007 4:52 am
Re: Mojo 0.1.3 released - works on all my hardware
What does this mean? Are your programs not running in ring 3?User space in ring 3 (cull)
Re: Mojo 0.1.3 released - works on all my hardware
Everything runs in ring 0 so far. But each process has is own address space so as long as no programs are trashing the kernel (which of course is mapped into each process' address space) everything should be fine
clange
clange
- Combuster
- Member
- Posts: 9301
- Joined: Wed Oct 18, 2006 3:45 am
- Libera.chat IRC: [com]buster
- Location: On the balcony, where I can actually keep 1½m distance
- Contact:
Re: Mojo 0.1.3 released - works on all my hardware
Is it me or is the floppy device missing from the filesystem?
Re: Mojo 0.1.3 released - works on all my hardware
Hi Combuster
Sorry for not replying sooner - I just saw your post now.
I consider floppy drives to be (mostly) obsolete. The only real advantage is testing OS's. So I decided not to support floppy disks and instead spend time on other stuff. But if you have some heavy arguments for supporting it I will do it.
clange
Sorry for not replying sooner - I just saw your post now.
I consider floppy drives to be (mostly) obsolete. The only real advantage is testing OS's. So I decided not to support floppy disks and instead spend time on other stuff. But if you have some heavy arguments for supporting it I will do it.
clange
- Combuster
- Member
- Posts: 9301
- Joined: Wed Oct 18, 2006 3:45 am
- Libera.chat IRC: [com]buster
- Location: On the balcony, where I can actually keep 1½m distance
- Contact:
Re: Mojo 0.1.3 released - works on all my hardware
- The real alternative is using a CD - which means a very development cycle since you need to write a CD in the process. And CD's in heavy use aren't that durable.clange wrote:But if you have some heavy arguments for supporting it I will do it.
- There are computers that can't read rewritables (2 / 13 computers over here)
- There are computers that can't boot from CD (3 / 13 computers over here)
- Other media are too expert and time consuming (few people support netbooting, writing hd images needs a method of transferring that image prior)
And,
- ALL my computers have floppy drives.
Re: Mojo 0.1.3 released - works on all my hardware
I'm with clange. All my hardware is new enough to support either netbooting or CD-RWs, so those are what I use.
Re: Mojo 0.1.3 released - works on all my hardware
This is a very good argument if you also volunteer to test my OS on all your machinesCombuster wrote: - ALL my computers have floppy drives.
I might write a floppy driver but right now I will continue to just let the boot loader load data from the floppy disk and then later accessing them through my boot fs. I will continue to make floppy images even though I actually considered not to do it any more. But your arguments and the fact that more people have downloaded the floppy images than the CD images makes that choice obvious.
clange