Page 1 of 1

Desktop OS

Posted: Tue Dec 25, 2007 5:19 am
by Andrew275
Hello everyone. This is an operating system I've worked here and there since 2003. It's a 32-bit operating system with multitasking/multithreading, dynamically loadable libraries and drivers, and some other things. Devices can point to dynamically created driver stacks for easy filtering and other cool tricks. For instance, I have a very simple cache driver that filters on top of the floppy device.

Devices can also provide a query interface to extend the object namespace, and this is how the filesystem drivers work. For instance, the floppy is typically mounted at /Boot Disk. If a request is made to open /Boot Disk/Desktop/Libraries/StandardC, the Boot Disk device (which in this case is provided by the Fat driver) is passed the remaining part of the path.

There is another component of the namespace, which starts at /System, and is case sensitive. This contains objects which are the actual processes, threads, drivers, etc. in the system. Running the info utility on any of these can provide more info. The processes also act as directories, which contain thread objects.

It will definitely run in VMWare, and should also run in Bochs, Virtual PC, and on a real computer. It's been a while since running it in anything other than VMWare though, so I can't vouch for that. A Pentium or greater is required. Check out the /Desktop/Utilities on the floppy disk to see what can be run.

Booting from CD-ROM and hard disk is also possible, it's just a matter of creating the image, installing GRUB, and tweaking the /boot/grub/menu.lst file.

Here's a link. On that page, you will find a download link to a recent floppy image.

Thanks for reading!

Posted: Wed Dec 26, 2007 7:39 am
by Combuster
I was unable to get anything meaningful out of the OS under bochs - it locks up at the loading and then does apparently nothing.

It worked on a real computer though... (it does take quite some time for it to react to input though)

Posted: Wed Dec 26, 2007 7:52 am
by Andrew275
Hmm really? I'll have to check out the disk image later today. There shouldn't be an input slowness or lockups while booting.

Posted: Wed Dec 26, 2007 9:11 am
by piranha
Hmm......I like....

Do you have the source available, or is it closed-source?

-JL

Posted: Wed Dec 26, 2007 11:26 am
by crazygray1
Real computers are all that matters.

Posted: Wed Dec 26, 2007 11:45 am
by octavio
crazygray1 wrote:Real computers are all that matters.
Yes, but it happens that most people on this board don´t want to test a hobby OS in a real computer.

Posted: Wed Dec 26, 2007 5:07 pm
by crazygray1
If you want other people to use the OS real computers are all that matter.

Posted: Wed Dec 26, 2007 8:53 pm
by Andrew275
OK, I've got it working again under Bochs. New image is here. I have not noticed any slowness with input under Bochs or VMWare.

Currently it's closed source, although I haven't ruled out releasing the code.

Posted: Wed Dec 26, 2007 9:19 pm
by Brynet-Inc
Hey Andrew, currently your OS crashes QEMU v9x..

Hopefully this screen shot will be of some assistance.. :)

MD5 (DesktopOS-122607.img) = eefe325bbf313300599ce015308bf66d

Posted: Thu Dec 27, 2007 2:42 am
by 512dev
Working fine emulated in MS VPC 2007 on an 3.2GHz CeleronD XP Pro SP2 box with 1.5GB RAM (64MB emulated RAM).

-512

Posted: Thu Dec 27, 2007 8:19 am
by Andrew275
Thanks for the info Brynet. I reproduced the problem in Qemu. I'm suspecting some sort of issue with the floppy driver. I will look into it.

Glad to hear that it still works in VPC; I hadn't checked that in months.

Amazing

Posted: Thu Dec 27, 2007 8:50 am
by Bobalandi
I tried it out in bochs and it worked wonderfully but there seemed to be a big lag when I was examining the directories. Great job though, can't wait to see more. :D

Posted: Thu Dec 27, 2007 6:34 pm
by Andrew275
I have a debugging option enabled in this build which outputs information to the serial port; the FAT driver uses it quite a bit, so this could be part of the slowness. I'll try to remember to disable that in the next image I post. The FAT driver is also not well optimized, especially in the directory listing code, so that is probably the other problem.

Directory listings done within /System should be fast at least.

Also, to note, the path separator is a forward slash, not a backslash, so that's why 512dev's initial cd command did not work.