OSDev Wiki:Wish List

From OSDev.wiki
Revision as of 16:32, 22 November 2007 by AJ (talk | contribs) (Got rid of c++ runtime entry in urgent as per: talk page.)
Jump to navigation Jump to search

Pages under construction (aka bobbuilder@osdev.org :)

OS-FAQ´s wishlist (aka santa@osdev.org ;)

If you are new to OS development and think that this FAQ lacks information on some area, you could post your request for more info here:

Urgent

  • A comprehensive guide to setting up paging, physical, and virtual memory management.
  • An article on memory management. Review Solaris slab allocator, what is a buddy system, how Linux does it, overview of the NetBSD uvm, etc. -- this is partially started in Page_Frame_Allocation.
  • The most important thing an OS does: load and run programs. Using PIC with ELF programs, loading and running Microsoft COFF-in-PE files (assuming they are not Win32 programs of course; link to MSDN "Inside Windows" articles on PE), link vs. load addresses, etc. Also loadable kernel modules (for monolithic kernels): how do the modules find the kernel symbols, etc.
  • ELF loading, relocating and dynamic linking.
  • Device driver interface, how to make/use one.
  • More on hardware programming. Demo ATA disk driver, demo ATAPI CDROM driver, or commentary of these drivers in Linux or one of the BSDs (or even Minix v3 http://www.minix3.org).

Less Urgent

  • harddisk tutorials and documents (PartitionTable, MBR, etc.).
  • File systems. A look at traditional file systems on Unix systems (e.g. the v7 file system), then move on to the BSD FFS, a look at FAT12, FAT16 and FAT32, a look at modern Unix file systems like Ext2 and journaling file systems (NTFS, Ext3, ReiserFS), implementing a journaling file system.
  • more info on C heavy grub booted kernels (particularly at&t syntax asm style...).
  • A map of the BIOS data area (like http://www.bioscentral.com/misc/bda.htm)
  • Information on the theory behind command lines and text UI's.
  • Naming OSes - http://www.osdev.org/phpBB2/viewtopic.php?t=15250

Not very urgent at all really

  • Adding new object format to BFD (this is discussed in http://libosdk.berlios.de/wiki/index.php/Binutils).
  • Coding a delay(ms).
  • More on C++: what support is needed to fully use C++ in a standalone environment? Why? Example code?
  • C library stuff: examples of crt0.o and crt1.o (or crtbegin.o, crti.o and crtn.o whatever!) and what the purpose of these files is.
  • Some notes on the newer devices like HPET timers -- see this thread.


  • Your request goes here