• Welcome to Valhalla Legends Archive.
 

Starting basic OS Development

Started by Joe[x86], June 18, 2005, 04:19 AM

Previous topic - Next topic

Joe[x86]

Theres not all that much to say here. I've been working on "JoeOS" for a two days now, and succeeded to load a stage two bootloader. Aparently a guy named c0n has been working on OS Dev since December and I've already passed him, so I'm proud enough to continue for weeks. Anyhow, if anyone is interested in following my progress, the thread discussing this is here. zorm[vL] is working on one too now, so I guess we can get through this together helping eachother. Anyhow, I started this with half-ass ASM knoledge, and so far its been easy. I've got a nice chart of interrupts to refer to, located here, so I'm pretty much set. JoeOS is open source, and can be downloaded and built using the instructions in it's readme. Check it out if you want, but it's nothing to write home about. Leave feedback too, I'd love to hear what you have to say about it (well, if you aren't too negative about it =p).
Quote from: brew on April 25, 2007, 07:33 PM
that made me feel like a total idiot. this entire thing was useless.

Eric


Yoni

Those are DOS interrupts, mostly. If you want to make an OS, you have to make your own table. :P

Warrior

#3
Actually, the BIOS provides your own set of interrupts and anything else can be defined in the IVT or if you're in PMode you can sort it out in your interrupt/exception handler..

http://www.ctyme.com/intr/int.htm - Ralph Browns interrupt list (HTML Format)

Edit: Didn't realize that I posted the same link as above -- those are indeed BIOS interrupt that work in real mode and v8086 mode
Quote from: effect on March 09, 2006, 11:52 PM
Islam is a steaming pile of fucking dog shit. Everything about it is flawed, anybody who believes in it is a terrorist, if you disagree with me, then im sorry your wrong.

Quote from: Rule on May 07, 2006, 01:30 PM
Why don't you stop being American and start acting like a decent human?

OnlyMeat

Sounds cool, i wanted to do something like this for a while myself. I might just have a go now ;)

How difficult is it to get the bootstrap working using just bios interrupts?

K

OS development is my current job, and it's fun  ;).  Luckily, we work on sensor nodes, which are quite a bit simpler to deal with than a desktop system.

Joe[x86]

LoRd[nK], what are you laughing at?

Yoni[vL], theres DOS interrupts, BIOS interrupts, and everthing down to calculator interrupts.

OnlyMeat, sounds good. Aparently it's a real shitty way to learn, but eh, it's working for me.

K, you get paid decent for your work? JoeOS is going to be free software, but my dad want's me to make money off it, so I might end up making it.. eh.. $5 or something, or shareware.
Quote from: brew on April 25, 2007, 07:33 PM
that made me feel like a total idiot. this entire thing was useless.

K

Quote from: Joex86] link=topic=11883.msg116406#msg116406 date=1119128453]
K, you get paid decent for your work? JoeOS is going to be free software, but my dad want's me to make money off it, so I might end up making it.. eh.. $5 or something, or shareware.

I make $15 an hour, and work part time (~20 hours/week).  The graduate students who work on our project get paid more, but they also do less programming and more paper writing and submitting.

Our OS, however is free: license

Joe[x86]

Quote[15:25:22] <Joe[x86]2> wtf
[15:25:24] <Joe[x86]2> well
[15:25:30] <Joe[x86]2> It loads stage 1 just fine
[15:25:37] <Joe[x86]2> attempts to load stage two
[15:25:38] <Joe[x86]2> and does
[15:25:39] <Joe[x86]2> and
[15:25:49] <Joe[x86]2> stage two prints its welcome message.. *counts*
[15:25:57] <Joe[x86]2> 10 fucking times

Oh man, I need to cut myself. I've done a lot of cutting myself lately. By the way, I hope you know I'm not serious about cutting myself. I haven't even hit my head against the wall yet.
Quote from: brew on April 25, 2007, 07:33 PM
that made me feel like a total idiot. this entire thing was useless.

Warrior

Not difficult at all, the BIOS provides int 13 (floppy) and you can either implement a filesystem reading to get the ability to search for files, or if you know exactly where your file is on your floppy you can read that number of sectors to the designated area of memory. Then you far jump to set CS
Quote from: effect on March 09, 2006, 11:52 PM
Islam is a steaming pile of fucking dog shit. Everything about it is flawed, anybody who believes in it is a terrorist, if you disagree with me, then im sorry your wrong.

Quote from: Rule on May 07, 2006, 01:30 PM
Why don't you stop being American and start acting like a decent human?

Yegg

Joe, I would suggest creating an OSS instead of an OS. Just to get a better idea of what your OS will be like in the end (or when you have a functional copy).

Warrior

That's a bad idea, even though it's good to have a clear idea of what design you want this can only be acomplished after RESEARCH on the topic is done. Making a shell which is only a component of an operating system is something that can cause you to get ahead of yourself and lose sight of the basics which are an effective message passing system, a stable error handler, ability to print hex, decimals, etc.. to the screen, a way to manage drivers, and a FileSystem service. If he is to take your logic than he might as well write everything seperately and defeat the purpose of writing an Operating System in the first place.
Quote from: effect on March 09, 2006, 11:52 PM
Islam is a steaming pile of fucking dog shit. Everything about it is flawed, anybody who believes in it is a terrorist, if you disagree with me, then im sorry your wrong.

Quote from: Rule on May 07, 2006, 01:30 PM
Why don't you stop being American and start acting like a decent human?

MyndFyre

Quote from: Warrior on June 25, 2005, 09:14 PM
That's a bad idea, even though it's good to have a clear idea of what design you want this can only be acomplished after RESEARCH on the topic is done. Making a shell which is only a component of an operating system is something that can cause you to get ahead of yourself and lose sight of the basics which are an effective message passing system, a stable error handler, ability to print hex, decimals, etc.. to the screen, a way to manage drivers, and a FileSystem service. If he is to take your logic than he might as well write everything seperately and defeat the purpose of writing an Operating System in the first place.

Although I agree with you, modulatization is also a good thing, and if he wrote everything separately, it might be a good exercise in modularization as well.  :P
QuoteEvery generation of humans believed it had all the answers it needed, except for a few mysteries they assumed would be solved at any moment. And they all believed their ancestors were simplistic and deluded. What are the odds that you are the first generation of humans who will understand reality?

After 3 years, it's on the horizon.  The new JinxBot, and BN#, the managed Battle.net Client library.

Quote from: chyea on January 16, 2009, 05:05 PM
You've just located global warming.

Warrior

Possibly, but a shell is hardly any way to learn how to write an operating system.
Quote from: effect on March 09, 2006, 11:52 PM
Islam is a steaming pile of fucking dog shit. Everything about it is flawed, anybody who believes in it is a terrorist, if you disagree with me, then im sorry your wrong.

Quote from: Rule on May 07, 2006, 01:30 PM
Why don't you stop being American and start acting like a decent human?

Meh

Im a bit stupid when it comes to OS development but will it run .exe so it could run games etc. If so and its more stable the MS(Though it must be how could it be less stable) then id give out $5.