Editing barebones tutorial page to boot from cdrom instead

All about the OSDev Wiki. Discussions about the organization and general structure of articles and how to use the wiki. Request changes here if you don't know how to use the wiki.
User avatar
turdus
Member
Member
Posts: 496
Joined: Tue Feb 08, 2011 1:58 pm

Re: Editing barebones tutorial page to boot from cdrom inste

Post by turdus »

DavidCooper wrote:A much better route might be Micro-SD cards which are faster, have much higher capacity, and look as if they should give you the ability to switch cards just like floppy disks without having to worry about the drive number changing if you're accessing them through the BIOS [has anyone ever done this?]

Yes, that's what I do. I do not have support for floppy nor for cdrom, I use pendrives and SD cards (with USB case). Both can be used with BIOS 42h read without a problem.
Rudster816
Member
Member
Posts: 141
Joined: Thu Jun 17, 2010 2:36 am

Re: Editing barebones tutorial page to boot from cdrom inste

Post by Rudster816 »

turdus wrote:
DavidCooper wrote:A much better route might be Micro-SD cards which are faster, have much higher capacity, and look as if they should give you the ability to switch cards just like floppy disks without having to worry about the drive number changing if you're accessing them through the BIOS [has anyone ever done this?]

Yes, that's what I do. I do not have support for floppy nor for cdrom, I use pendrives and SD cards (with USB case). Both can be used with BIOS 42h read without a problem.


Thats because BIOS's that support booting for USB devices very kindly emulate them for you. The problem comes when you have to leave the BIOS behind, where you'll need a USB mass storage driver in order to read additional data from the drive\card. With CD's you'd need a much simpler ATAPI driver.
User avatar
Yoda
Member
Member
Posts: 255
Joined: Tue Mar 09, 2010 8:57 am
Location: Moscow, Russia

Re: Editing barebones tutorial page to boot from cdrom inste

Post by Yoda »

brain wrote:I am willing to change the tutorial to this however I may need some help on advising how to make iso images from commandline under windows (I have never used windows for osdev).

I prefer to work under windows and I know how to prepare bootable CD. Most easy way is to use mkisofs/cygwin. Within a week (I hope) I'll prepare the second version of my boot tools (set of first stage bootloaders with installer program) where it will be described in details. I'll post here as soon as it will be ready so you may borrow part of my readme and/or link there.
Yet Other Developer of Architecture.
OS Boot Tools.
Russian national OSDev forum.
User avatar
Solar
Member
Member
Posts: 7615
Joined: Thu Nov 16, 2006 12:01 pm
Location: Germany
Contact:

Re: Editing barebones tutorial page to boot from cdrom inste

Post by Solar »

Instructions that would work on Linux and Cygwin are much preferred, if for no other reason than keeping the tutorial short.
Every good solution is obvious once you've found it.
User avatar
brain
Member
Member
Posts: 234
Joined: Thu Nov 05, 2009 5:04 pm
Location: UK
Contact:

Re: Editing barebones tutorial page to boot from cdrom inste

Post by brain »

it might make sense to split the barebones tutorial up some, so that after youve written a kernel you can pick a different sub-page for if you want to put it onto cd, a raw floppy, or just boot it directly in qemu (it is multiboot after all).
The CD page could have universal win/nix instructions.
User avatar
brain
Member
Member
Posts: 234
Joined: Thu Nov 05, 2009 5:04 pm
Location: UK
Contact:

Re: Editing barebones tutorial page to boot from cdrom inste

Post by brain »

berkus wrote:
brain wrote:it might make sense to split the barebones tutorial up some, so that after youve written a kernel you can pick a different sub-page for if you want to put it onto cd, a raw floppy, or just boot it directly in qemu (it is multiboot after all).
The CD page could have universal win/nix instructions.


Sounds good. You volunteered?


Yeah that's the idea lol :-)
User avatar
turdus
Member
Member
Posts: 496
Joined: Tue Feb 08, 2011 1:58 pm

Re: Editing barebones tutorial page to boot from cdrom inste

Post by turdus »

Rudster816 wrote:Thats because BIOS's that support booting for USB devices very kindly emulate them for you.

Yeah, that's what makes them ideal boot media. Nevertheless they're backward compatible with HDD (512 sector size, partitioning table and arbitrary filesystem support, writeable storage).
The problem comes when you have to leave the BIOS behind, where you'll need a USB mass storage driver in order to read additional data from the drive\card. With CD's you'd need a much simpler ATAPI driver.

That's not a problem, since any modern OS must have drivers for USB mass storage. And having a ramdisk (initrd loaded to RAM by BIOS calls) is an easy and cheap solution for the chicken-egg-problem until you finish proper USB/ATA/SATA/ATAPI support.
User avatar
Combuster
Member
Member
Posts: 9301
Joined: Wed Oct 18, 2006 3:45 am
Freenode IRC: [com]buster
Location: On the balcony, where I can actually keep 1½m distance
Contact:

Re: Editing barebones tutorial page to boot from cdrom inste

Post by Combuster »

any modern OS must have drivers for USB mass storage
"must" is definitely wrong - not all OSes are for desktops...
"Certainly avoid yourself. He is a newbie and might not realize it. You'll hate his code deeply a few years down the road." - Sortie
[ My OS ] [ VDisk/SFS ]
User avatar
turdus
Member
Member
Posts: 496
Joined: Tue Feb 08, 2011 1:58 pm

Re: Editing barebones tutorial page to boot from cdrom inste

Post by turdus »

Combuster wrote:"must" is definitely wrong - not all OSes are for desktops...

Please name a mainstream OS that's used in non-desktop environment and does not have USB support.
- embedded linux (such as Android, Maemo, MeeGo, OpenWRT, RouterOS, etc.): has.
- Cisco IOS: has.
- MacOSX iOS: has.
- JunOS: has.
- Symbian OS: has.
- Inferno: has.
- PalmOS: has.
- Windows Phone: has.
so...
User avatar
bluemoon
Member
Member
Posts: 1761
Joined: Wed Dec 01, 2010 3:41 am
Location: Hong Kong

Re: Editing barebones tutorial page to boot from cdrom inste

Post by bluemoon »

turdus wrote:Please name a mainstream OS that's used in non-desktop environment and does not have USB support.


Although you may turn iOS device as mass storage, you cannot attach USB storage and access it within iOS, so I would say no for iOS.
User avatar
turdus
Member
Member
Posts: 496
Joined: Tue Feb 08, 2011 1:58 pm

Re: Editing barebones tutorial page to boot from cdrom inste

Post by turdus »

bluemoon wrote:Although you may turn iOS device as mass storage, you cannot attach USB storage and access it within iOS, so I would say no for iOS.

Maybe it's not offical, but Mach kernel has drivers for it. So it is possible: http://www.youtube.com/watch?v=9qDrDC-HD-M
User avatar
Solar
Member
Member
Posts: 7615
Joined: Thu Nov 16, 2006 12:01 pm
Location: Germany
Contact:

Re: Editing barebones tutorial page to boot from cdrom inste

Post by Solar »

to have != must have...

osdev.org != mainstream...
Every good solution is obvious once you've found it.
User avatar
Yoda
Member
Member
Posts: 255
Joined: Tue Mar 09, 2010 8:57 am
Location: Moscow, Russia

Re: Editing barebones tutorial page to boot from cdrom inste

Post by Yoda »

As I promised, here are the instructions for preparing bootable CD under Windows.
http://goncharov.pp.ru/en/osboot.htm#cdrom
Yet Other Developer of Architecture.
OS Boot Tools.
Russian national OSDev forum.
Post Reply