8000 GitHub - mxlgv/EOS: EOS is an educational operating system for x86 platform
[go: up one dir, main page]
More Web Proxy on the site http://driver.im/
Skip to content
/ EOS Public
forked from rgimad/EOS

EOS is an educational operating system for x86 platform

License

Notifications You must be signed in to change notification settings

mxlgv/EOS

 
 

Repository files navigation

EOS (Experimental Operating System)

EOS is an educational operating system for x86 platform

Screenshot

Current status

  • GDT and IDT setup

  • VESA framebuffer based terminal :D

  • PS/2 keyboard and mouse support

  • RAM detection and Physical Memory Manager

  • Higher Half Kernel

    The kernel starts at virtual address 0xC0100000

    0xC0000000-0xC0400000 and 0x00000000-0x00400000 vitual addresses are mapped to one physical range - to 0x00000000-0x00400000

  • Virtual Memory Manager

  • Entry based kernel heap manager (kmalloc/kfree/krealloc)

  • Very simple kernel command shell (KSH)

  • VFS

  • Initrd, uses TarFS

  • MENUET01 and PE executables loaders

  • System call mechanism

TODO

  • User-mode and multitasking
  • Synchronization (mutex, spinlock)
  • FAT32 driver
  • HDD driver
  • PCI driver
  • ACPI driver
  • etc.

Building and debugging

Go to src/kernel

  • Building release version:
make build-iso
  • Building and running release version:
make build-iso-run
  • Building debug version:
make build-iso DEBUG=1
  • Building and running debug version:
make build-iso-run DEBUG=1
  • Always do following command before switching between debug and release configurations:
make clean

Thanks to

  • Guilherme Samora (psamora)
  • Nikita Ivanov, Dmitrii Kychanov, etc. from u365
  • wiki.osdev.org
  • Arjun Sreedharan
  • Stephen Fewer (stephenfewer)
  • James Molloy
  • levex named user from gihtub
  • reddit /r/osdev
  • Stackoverflow
  • etc.

About

EOS is an educational operating system for x86 platform

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • C 97.4%
  • Assembly 2.0%
  • Makefile 0.6%
0