OS dev

has any of you managed to build their own OS ?
i don't mean customizing a GNU/Linux distro, i mean your OS from compiler code.

Other urls found in this thread:

startpage.com/
twitter.com/SFWRedditGifs

Tried once, made a small libc and a keyboard driver, got bored of it. Never released.

sounds pretty difficult, isn't it

Ackschully, it's not that hard, but it's very overwhelming. There's no instant gratification like in webdev (my background), and you need to learn about decades of hardware cruft. After looking at sound drivers I'm praising Lenny Potter for writing PulseAudio.

I think it also depends on hardware. Writing something for, say, the microbit is literally childs play.

Is it any easier to use a single board computer for OS dev? Everything is fixed basically.

I did back in the early '90s for the 386. Full 32 bit protected mode with a flat memory model, multitasking, and interrupt routing to DOS via v86 mode so I could reuse its drivers.

did you make a C or C++ layer or did you go balls deep 100% compiler code ?

I just cross-compiled GCC and wrote C.

what is that?

startpage.com/

looks pretty cool.

I gave up at virtual memory management, but not before I had written a PS/2 keyboard driver. For some reason I never discovered, my VMM would randomly fault infinitely and crash. I then gave up and forgot about it.

how many hours have you spent on it if you count the research ?

It was definitely a lot of time, but I don't know how much exactly. I worked on it over the course of several months, on and off.

I made a bootloader and a "Hello World" kernel for x86 back in the 90's. Never went anywhere with it, because I mostly did it for bragging rights.

No worries m8, that's just because you have no fucking clue what PulseAudio is and appear to be under the delusion that it's some sort of driver.

Back when I was still a neet I wrote a small OS with its own Bootloader, drivers for Floppy Disks in DMA Mode, FAT12/16/32 ( no long Filenames though ) and PS/2 Keyboards. Also did some Stuff with VGA Registers so I had Graphics ( Only used it to have the 2D Waifu as a Background for the Terminal and a hand Pixeled Bitmap Font ). Also had Flat Memory and Preemptive Multitasking. Still had quite a lot missing and gave up while trying to write a Driver for IDE Disks, also had quite a lot missing from the C Library so porting Programs was not feasible. Still learned a lot in that Time. The Toolchain was tcc and fasm.

If some of you want to start writing your own OS, check out wiki.osdev.org for starting out, for the countless Drivers you're bound to write get "The Indispensable PC Hardware Book", its a Gold Mine with all the Info necessary to write Drivers for legacy Hardware.

Are you German?

I know ALSA is the audio driver, you dip. Building something like PulseAudio is a huge project is all I'm saying.

It REALLY isn't. Well, unless you turn it into a herculean task like Poettering did. It's a glorified mixer and can be (and has been) implemented in kernels trivially time and time again, with interfaces that aren't pure garbage (OSS for example) and in the case of plan 9, full network transparency as well and in an order of magnitude less code than ALSA alone.

Yes, how could you tell?

if small kernel written in NASM which loads from floppy, enters 32bit protected mode, and uses hardware task switching with PIT interrupts to be able to print colored characters on screen and output tunes through pc speaker simultaneously counts, then yeah

...

Thanks for the tips man

Because you capitalize nouns even when they're not at the start of a sentence. That's incorrect in English.

Your post was interesting otherwise, sorry for not having anything else to say about it.