Take the 2-minute tour ×
Super User is a question and answer site for computer enthusiasts and power users. It's 100% free, no registration required.

I am interested in developing a small operating system between 2-3 MB and put it in my BIOS.I want to develop a text based operating system that is very fast. Please tell me how to push my program into the BIOS?

share|improve this question
6  
We may be users that are super, but you may want to consider a different site... Perhaps programmers.stackexchange.com ? –  Aeo Oct 19 '10 at 13:50
    
Or directly speaking to motherboard vendor ... because you'll need the BIOS + your operating system –  Warnaud Oct 19 '10 at 13:52
    
Although this may be off topic for SU, this is a very good question. –  KronoS Oct 19 '10 at 15:25
    
@Aeo:I was more concerned about force-feeding it into the BIOS rather than making such a program,so I posted it here. –  Fahad Uddin Oct 19 '10 at 16:56
1  
This question is 100% on topic for Super User since the user is not asking about programming, but about actually flashing the BIOS. The answers are also extremely useful. –  Diago Oct 19 '10 at 20:35
show 1 more comment

3 Answers

up vote 5 down vote accepted

Operating systems do not live in the bios, as they are generally way too large to fit on the chip. 2-3 MB is way too large. They live on hard disks, floppy disks, cdroms, etc. Each of these disks has what is called a Master Boot Record. This is the first 512 bytes of the drive. Here you place the assembly code that then loads all of the remaining data that is required for the operating system to boot. Since most modern bootloaders are bigger than 512 bytes, they usually have just enough in that area to find the rest of the loader on the hard drive, load it into memory, and proceed with the boot process.

share|improve this answer
    
I read somewhere that the bios size was about 5-6 MB. –  Fahad Uddin Oct 19 '10 at 14:05
2  
@fahad Some chips are that large. You're still barking up the wrong tree here...the answer here varies depending on the motherboard because YOU'LL STILL NEED THE ORIGINAL BIOS STUFF IN THERE. –  Shinrai Oct 19 '10 at 14:19
    
@Shinrai:I was thinking of having no original BIOS.Who needs original BIOS if each time your computer is starting up directly by the OS? –  Fahad Uddin Oct 19 '10 at 16:50
    
@fahad So you're going to custom-build this OS for a specific motherboard? There's a reason you can't just slap any old BIOS on any old motherboard...when I say you need the original BIOS stuff, I mean the stuff that actually gets the machine initialized and performs POST! –  Shinrai Oct 19 '10 at 18:58
    
@shinrai:for simplicity I would like to start this project for a particular motherboard.If everything goes fine than I shall try to make a motherboard for it –  Fahad Uddin Oct 19 '10 at 23:30
show 8 more comments

BIOS is one of the thing that if you have to ask, you're probably in WAY over your head. Difficulty with programming BIOS is that if you screw up, you have no easy way to update it since most require a working BIOS in order to update. Some motherboard have a backup method of programming it via SPI, but that depends on the vendor.

If you are still seriously consider programming the BIOS, you might want to look into getting a eeprom emulator.

share|improve this answer
    
the eeprom emulator was extremely useful –  Fahad Uddin Oct 19 '10 at 23:30
add comment

If I'm understanding this correctly, you might be interested in coreboot. It's a project geared toward replacing the BIOS and allowing "payloads" to boot, which can include small operating systems or bootloaders actually stored in the ROM chip. Hypothetically, you could make your own payload for use with coreboot, but I'm not entirely sure how that would be done.

share|improve this answer
    
Coreboot appears to be a replacement for the BIOS. However it may give insight to what the user is asking. Do you have personal experience in using this? –  KronoS Oct 19 '10 at 15:28
    
Thats was exactly what I was looking for. –  Fahad Uddin Oct 19 '10 at 17:24
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.