Page 2 of 2

Posted: Thu Apr 12, 2007 7:27 pm
by mystran
Tyler wrote:A DOS Clone is not an operating system by todays standards though.
I'm not quite sure it was an operating system back then either. Original PC-DOS 1.0 was released 1981 (says wikipedia). Unix was started 1970. It wasn't the first operating system.

1983 DOS got subdirectories, same year W Window System was ported to Unix. A year later X Windows System replaced it.

That's basicly to say that when DOS got subdirectories, Unix could run (somewhat crude, admit) graphical environment for several users over network.

Ofcourse the really fun part is that "pipes" are probably the only really "new" concept in Unix. For the most part it was just simplification of previous operating system designs. :)

---

As for the word "n00b", I've seen people use it and not know of it being leet-spelling for "newbie." That's pretty good indicator how it's getting lame to even use the word. We need a new one. :)

Posted: Thu Apr 12, 2007 7:44 pm
by Tyler
MessiahAndrw wrote:DOS is a bootloader with a shell. :)
I actually considered it very similarily earlier... except i saw it more as a shell to the BIOS... as it relies on it for hardware interaction.

Posted: Fri Apr 13, 2007 1:48 am
by bubach
DOS takes user commands, has FS support and can load user programs. I think that qualifys as an OS.

Posted: Fri Apr 13, 2007 4:21 am
by mystran
bubach wrote:DOS takes user commands, has FS support and can load user programs. I think that qualifys as an OS.
GRUB takes user commands, has FS support, and can load user programs (kernels at least). I think that qualifies as an OS. :)

Posted: Fri Apr 13, 2007 5:47 am
by AJ
mystran wrote:
bubach wrote:DOS takes user commands, has FS support and can load user programs. I think that qualifys as an OS.
GRUB takes user commands, has FS support, and can load user programs (kernels at least). I think that qualifies as an OS. :)
I agree - although designed primarily as a boot loader and has 'Bootloader' in its name, I think GRUB does qualify as an OS. Agreed, it doesn't have all the functions you would need to use it as your devving OS of choice :D .

This is just the same as the way your basic first keyboard handler which probably just consists of an ISR, a character buffer and a lookup table counts as a 'driver' - you may not want to actually infilict it on your users as a final version though...

Adam

Posted: Fri Apr 13, 2007 9:15 am
by bubach
GRUB doesn't provide services (interrupts) for user programs, thats basicly whats missing before I'd call it an OS. ;)

Posted: Fri Apr 13, 2007 10:25 am
by Tyler
You all might as well be studying chemistry that claims the world is split into four elements... It has been a long time since OS meant a Kernel Interupts and the ability to load programs... no wonder this place is full of Hobby Development.

Posted: Fri Apr 13, 2007 11:05 am
by Alboin
Tyler wrote:You all might as well be studying chemistry that claims the world is split into four elements... It has been a long time since OS meant a Kernel Interupts and the ability to load programs... no wonder this place is full of Hobby Development.
Agreed. Isn't an OS anything that performs a job on a piece of hardware? Take a microwave, for example. A microwave has an OS. It controls the front display, has interrupts, and controls how it heats things. Another example would be a calculator.

I think an OS is anything that fully controls the hardware it runs on, doing a specific job.

Posted: Fri Apr 13, 2007 12:03 pm
by Tyler
Alboin wrote:
Tyler wrote:You all might as well be studying chemistry that claims the world is split into four elements... It has been a long time since OS meant a Kernel Interupts and the ability to load programs... no wonder this place is full of Hobby Development.
Agreed. Isn't an OS anything that performs a job on a piece of hardware? Take a microwave, for example. A microwave has an OS. It controls the front display, has interrupts, and controls how it heats things. Another example would be a calculator.

I think an OS is anything that fully controls the hardware it runs on, doing a specific job.
Yes and for those applications they are Operating Systems... though i actually wouldn't use that term given there is no need to make the distinction. Firmware should do the job of describing there permement systems. I make my comments as a developer in an OS development forum for Desktop OS' (specifically x86) though.

Linked List

Posted: Thu Jun 21, 2007 7:10 am
by com1
You could try using linked lists. The parent* could be a main window, and then you could do some child* functions to have the windows replaced with another bitmap, thats how my window manager is coded in SHANOS
:D

Posted: Fri Jun 22, 2007 10:23 pm
by Speewave
Alboin wrote:
Brynet-Inc wrote:OS Development is not easy
Actually, it is. Doing it well is the difficult part.

As for a GUI. It's very difficult to create a GUI without a working file system, disk access, mouse drivers, etc. Which is why you're going to need those first. I would suggest you to work on memory management, however, before any of that. After that, try scheduling. Following that work your way to floppy drivers, then hard drivers, etc.

Good Luck!

PS: You will need the Intel\AMD manuals. :wink:
its easy to make an unfuctional and crappy OS! a good OS and GUI Takes time. if you decide to make your own and not use one like KDE or GNOME.

and if you think about it. The GUI Does not do a lot memory and driver wise:

the GUI however can be set to cooperate like if a device is inserted the kernal contacts the GUI and the GUI or some process installs that driver in to memory and intergreats the device with this device in that specific slot.

say you inserted a USB Flash Disk on USB Port 1 on your PC. but the next day you move it to another port and it fixes it self out

you will need a:
C++ Compiler (GCC is good)
API For HIDs (Mice Keyboards)
some library that uses bitmaps and TTFs
as well as a Display library to change Resolutions.
i recommend SDL. It can be used for everything (Games,Apps, GUIs)


you can also base your code off of X11

as far as Drivers go.. that can be automated at boot
you also need like a reaction thing like:

if the item is clicked twice then:
Load Application
If item is clicked then
check if its moving
change item mask to highlited
or else
do nothing

Posted: Fri Jun 22, 2007 10:35 pm
by Speewave
Tyler wrote:
MessiahAndrw wrote:DOS is a bootloader with a shell. :)
well yes and no. a boot loader can't access things like AudioCards or tsrs\drivers. i was'nt around back in 1981 so they could have used it for a bootdisk. Games for DOS might have used it so when the disk went in and you turned the pc on. the game loaded off the bat (only slower) somewhat like a Game Console.

Posted: Sat Jun 23, 2007 3:24 pm
by pcmattman
Speewave wrote:
Tyler wrote:
MessiahAndrw wrote:DOS is a bootloader with a shell. :)
well yes and no. a boot loader can't access things like AudioCards or tsrs\drivers. i was'nt around back in 1981 so they could have used it for a bootdisk. Games for DOS might have used it so when the disk went in and you turned the pc on. the game loaded off the bat (only slower) somewhat like a Game Console.
DOS couldn't access audio cards either, until you installed the drivers and put into the autoexec.bat to run their initialization on startup. Ever tried to boot DOS without any drivers on hand? It's useless, nothing is usable. Trust me, I've tried.

Posted: Sat Jun 23, 2007 3:47 pm
by Aali
bullshit, DOS is not a bootloader, not even close

for the one simple reason that its main purpose is not to load an operating system

Posted: Sun Jun 24, 2007 6:44 am
by AndrewAPrice
Aali wrote:bullshit, DOS is not a bootloader, not even close

for the one simple reason that its main purpose is not to load an operating system
Most of the larger DOS programs (for desktop publishing and games) usually took over direct hardware access, and in a way were special-purpose operating systems.