What's your OSDev AWWWW YEAH! moment?
- Bender
- Member
- Posts: 449
- Joined: Wed Aug 21, 2013 3:53 am
- Libera.chat IRC: bender|
- Location: Asia, Singapore
What's your OSDev AWWWW YEAH! moment?
After thinking on my coding for a while, I felt that I was just copy-pasting for no reason, so I decided to start
from scratch.
This time I've decided to make a 32-bit Operating System called BenderOS, but the problem came, as it usually comes,
after doing a far jump to fix CS, the infamous "Triple Fault", .
After 2-3 days of researching and changing the code randomly, this was that moment when I saw that 'A' on that screen!
AWWWWWWWWWW YEAH!
So what are your AWWW YEAH! moments?
from scratch.
This time I've decided to make a 32-bit Operating System called BenderOS, but the problem came, as it usually comes,
after doing a far jump to fix CS, the infamous "Triple Fault", .
After 2-3 days of researching and changing the code randomly, this was that moment when I saw that 'A' on that screen!
AWWWWWWWWWW YEAH!
So what are your AWWW YEAH! moments?
"In a time of universal deceit - telling the truth is a revolutionary act." -- George Orwell
(R3X Runtime VM)(CHIP8 Interpreter OS)
(R3X Runtime VM)(CHIP8 Interpreter OS)
Re: What's your OSDev AWWWW YEAH! moment?
A few moments...
1. The first time I booted on real hardware. This was before I discovered Bochs & Qemu.
2. Having a working VM86 monitor and switching the graphics mode to 0x0013... VGA 256 baby!
3. The first time someone on the interweb downloded the image file.
1. The first time I booted on real hardware. This was before I discovered Bochs & Qemu.
2. Having a working VM86 monitor and switching the graphics mode to 0x0013... VGA 256 baby!
3. The first time someone on the interweb downloded the image file.
"God! Not Unix" - Richard Stallman
Website: venom Dev
OS project: venom OS
Hexadecimal Editor: hexed
Website: venom Dev
OS project: venom OS
Hexadecimal Editor: hexed
- thepowersgang
- Member
- Posts: 734
- Joined: Tue Dec 25, 2007 6:03 am
- Libera.chat IRC: thePowersGang
- Location: Perth, Western Australia
- Contact:
Re: What's your OSDev AWWWW YEAH! moment?
For me, the biggest moment was when someone mentioned my OS as one of the "good" ones on the #osdev IRC channel. I realised that people were actually paying attention to what I was doing, and I had finally risen above the noise.
Kernel Development, It's the brain surgery of programming.
Acess2 OS (c) | Tifflin OS (rust) | mrustc - Rust compiler
Currently Working on: mrustc
Acess2 OS (c) | Tifflin OS (rust) | mrustc - Rust compiler
Currently Working on: mrustc
Re: What's your OSDev AWWWW YEAH! moment?
Completing the designs and nearly getting finished implementing features such as,
Multitasking (Pre-emptive for processes, Cooperative for Drivers, Drivers sat inside the kernel process),
Memory management (Down to the page, in bitmap) with one page overhead per allocation. Mapped out all 1MB for the kernel, additional memory drivers handled anything else (Above 1MB).
Small driver system (For installable file systems mainly, never got finished, and could only test it with dummy IFS drivers).
In assembler, for the 8086. I always loved the challenge of writing software for tech with very low resources. With good memory management techniques (and if you implement it, software based virtual memory), it's possible. But then i decided to work on other interesting projects that could help my future, and left it all about a year ago.
Multitasking (Pre-emptive for processes, Cooperative for Drivers, Drivers sat inside the kernel process),
Memory management (Down to the page, in bitmap) with one page overhead per allocation. Mapped out all 1MB for the kernel, additional memory drivers handled anything else (Above 1MB).
Small driver system (For installable file systems mainly, never got finished, and could only test it with dummy IFS drivers).
In assembler, for the 8086. I always loved the challenge of writing software for tech with very low resources. With good memory management techniques (and if you implement it, software based virtual memory), it's possible. But then i decided to work on other interesting projects that could help my future, and left it all about a year ago.
Re: What's your OSDev AWWWW YEAH! moment?
Besides actual features, getting starred by 20 people on github and also receving a pull request.
Fudge - Simplicity, clarity and speed.
http://github.com/Jezze/fudge/
http://github.com/Jezze/fudge/
Re: What's your OSDev AWWWW YEAH! moment?
Boot on real hardware (ancient macbook 1,2) - AWWW YEAH!
However, that was quickly went off, after boot loader spent a minute loading kernel and modules, it hangs on A20 enabling code - HOLY!
However, that was quickly went off, after boot loader spent a minute loading kernel and modules, it hangs on A20 enabling code - HOLY!
Re: What's your OSDev AWWWW YEAH! moment?
I guess the biggest single "AWWW YEAH!" moment was joining our IRC channel from tyndur for the first time.
The "Hello world" posting in the Lowlevel forum with a ported lynx wasn't bad either. Or listening to some .ogg file for the first time, even though the greatest part of the audio stuff wasn't even written by myself but by XanClic (credit where credit is due).
The "Hello world" posting in the Lowlevel forum with a ported lynx wasn't bad either. Or listening to some .ogg file for the first time, even though the greatest part of the audio stuff wasn't even written by myself but by XanClic (credit where credit is due).
Re: What's your OSDev AWWWW YEAH! moment?
Mmm, you'll get to have a bunch of these moments as you osdev for years.
One of my biggest ones was running Quake on my OS on my desktop computer with graphics set to 1920x1080x32. It ran so smoothly that I forgot I was using my own OS and pressed Alt-Tab to switch to Firefox, just to realize nothing happened because I was not using Linux.
Other fun stuff includes doing stable releases of your OS, compiling your OS under itself, implementing features, posting screenshots of your OS, porting stuff to your OS, and so on.
One of my biggest ones was running Quake on my OS on my desktop computer with graphics set to 1920x1080x32. It ran so smoothly that I forgot I was using my own OS and pressed Alt-Tab to switch to Firefox, just to realize nothing happened because I was not using Linux.
Other fun stuff includes doing stable releases of your OS, compiling your OS under itself, implementing features, posting screenshots of your OS, porting stuff to your OS, and so on.
Re: What's your OSDev AWWWW YEAH! moment?
When you have to look in your own reference manual to check up on how to use some feature you implemented years ago. You surprise yourself to find not only a good description but also pretty interesting example code. You think to yourself "I wrote that? Wow!".
Every universe of discourse has its logical structure --- S. K. Langer.
- mathematician
- Member
- Posts: 437
- Joined: Fri Dec 15, 2006 5:26 pm
- Location: Church Stretton Uk
Re: What's your OSDev AWWWW YEAH! moment?
I have usually been too busy cursing it, to have an awwww moment when something works.
The continuous image of a connected set is connected.
-
- Member
- Posts: 5517
- Joined: Mon Mar 25, 2013 7:01 pm
Re: What's your OSDev AWWWW YEAH! moment?
My most recent? Writing to video memory from the boot sector of a floppy disk.
...on a Macintosh Quadra 605.
...on a Macintosh Quadra 605.
- 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: What's your OSDev AWWWW YEAH! moment?
Yea, there's not much instant gratification in this hobby. The last time I actually felt like I achieved something great was when I got the triangle setup operational on the Mach64 (for which there is no documentation). I've done a fair share of things since, but in this hobby most are just minor victories over established work.mathematician wrote:I have usually been too busy cursing it, to have an awwww moment when something works.
Re: What's your OSDev AWWWW YEAH! moment?
I read the clock from RTC in my OS. First checked if it is in BCD format by reading the related I/O. Then wrote a procedure for printing BCD numbers on screen. It was the first time I read from a device register with an I/O instruction and the clock shown on Bochs window was the same as my Win clock.
Re: What's your OSDev AWWWW YEAH! moment?
just done with multi tasking, ata/atapi , and implementing acpica, hell yeah
now i'll use that on the window manager to have a real asyncrhonous event handling, for ui controls, and global window environment, disk browsing, etc
then enable the handling of PIC/APIC for multi cpu
then only will be missing to finish the ndis layer handling, and i'll got about all the basis done, with vga text/vesa, usb, ata/atapi, audio, graphic (image, filters, fonts, etc), and networking with windows drivers to handle all pci card and usb dongles
then i'll be able to start on the non kernel, system space base API for the user space apps, where i'll stick my raytracer, and bunch of dev tools like compiler/debuggers, to start working on real hardware to develop drivers for true graphic card
but it's clear it's ant work, need to read docs and plan ahead for 2 month to write 5 lines of code lol
well still plenty of minor things to improve and fix there and there, but i prefer to have at least all the functional basis implemented before to start getting into drastic debugging and polishing of all the base kernel interface
now i'll use that on the window manager to have a real asyncrhonous event handling, for ui controls, and global window environment, disk browsing, etc
then enable the handling of PIC/APIC for multi cpu
then only will be missing to finish the ndis layer handling, and i'll got about all the basis done, with vga text/vesa, usb, ata/atapi, audio, graphic (image, filters, fonts, etc), and networking with windows drivers to handle all pci card and usb dongles
then i'll be able to start on the non kernel, system space base API for the user space apps, where i'll stick my raytracer, and bunch of dev tools like compiler/debuggers, to start working on real hardware to develop drivers for true graphic card
but it's clear it's ant work, need to read docs and plan ahead for 2 month to write 5 lines of code lol
well still plenty of minor things to improve and fix there and there, but i prefer to have at least all the functional basis implemented before to start getting into drastic debugging and polishing of all the base kernel interface
Re: What's your OSDev AWWWW YEAH! moment?
My best moment was:
1. the very first time I booted from a real floppy by the BIOS on the x86!! I had copied the code, LOL.
It would not have been possible with out this site. Well, back then it was on the megatokyo forums, but it is basically the same site. It is just that it changed owners. I think now with the wiki it is a major improvement! And, I appreciate Chase taking the time to keep the site running and I know he pays the bill which I appreciate. Also, would not have been possible with out the old guys who not only wrote the tutorials and sample code, but helped me when I ran into a problem that I just could not figure out on my own.
But, some of my other moments:
2. switching into protected mode
3. finally figuring the GDT/LDT tables out (years ago the bit ordering and byte ordering confused the hell out of me)
4. having a working paging system and separate address space for each process with some shared kernel memory
5. getting a barely working micro-kernel going (it needed tweaking but it did work)
6. figuring out hardware.. anytime I finally get a piece of hardware working I am excited (network, sound, graphics, PIC, timers, ..)
7. writing my first heap implementation and having it work
8. getting interrupts and exceptions working and having a system to share them in my kernel
9. first time I got code to execute on the an ARM processor (real processors and QEMU) [preface to kernel]
10. oh can not forget getting processes and threads working.. both kernel threads and user space processess
A bunch of exciting times! I love writing system software, kernels, and trying to write an operating system.
1. the very first time I booted from a real floppy by the BIOS on the x86!! I had copied the code, LOL.
It would not have been possible with out this site. Well, back then it was on the megatokyo forums, but it is basically the same site. It is just that it changed owners. I think now with the wiki it is a major improvement! And, I appreciate Chase taking the time to keep the site running and I know he pays the bill which I appreciate. Also, would not have been possible with out the old guys who not only wrote the tutorials and sample code, but helped me when I ran into a problem that I just could not figure out on my own.
But, some of my other moments:
2. switching into protected mode
3. finally figuring the GDT/LDT tables out (years ago the bit ordering and byte ordering confused the hell out of me)
4. having a working paging system and separate address space for each process with some shared kernel memory
5. getting a barely working micro-kernel going (it needed tweaking but it did work)
6. figuring out hardware.. anytime I finally get a piece of hardware working I am excited (network, sound, graphics, PIC, timers, ..)
7. writing my first heap implementation and having it work
8. getting interrupts and exceptions working and having a system to share them in my kernel
9. first time I got code to execute on the an ARM processor (real processors and QEMU) [preface to kernel]
10. oh can not forget getting processes and threads working.. both kernel threads and user space processess
A bunch of exciting times! I love writing system software, kernels, and trying to write an operating system.