8000 GitHub - eclark/goose: Hobby operating system for x86-64
[go: up one dir, main page]
More Web Proxy on the site http://driver.im/
Skip to content

eclark/goose

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

39 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

What is this?

Goose is a hobbyist operating system I am developing to learn more about x86-64 systems.

What does it do?

Almost nothing. It configures paging and memory management, then accepts keyboard and COM1 interrupts.

Why?

After building a simple x86 operating system in the Computer Systems Engineering course at UIUC, I wanted to understand how to implement support for modern features of x86 systems, such as ACPI, APIC, HPET, and Long Mode. This code is entirely original and not based on the class project.

License

The project uses the MIT license. See LICENSE.

Build Environment

Incomplete notes on the toolchain.

../binutils-2.24/configure --prefix="$HOME/opt" --disable-nls --enable-targets="i586-elf,x86_64-elf,i386-efi-pe" --enable-64-bit-bfd --program-prefix=cross-

make
make install

../gcc-4.8.2/configure --prefix="$HOME/opt" --disable-nls --enable-targets="i586-elf,x86_64-elf,i386-efi-pe" --enable-languages="c,c++" --with-newlib --without-headers --program-prefix=cross-

make all-gcc
make install-gcc

Install grub2. Install xorriso.

Running

qemu-system-x86_64 -cdrom os.iso -serial stdio -display none -s

About

Hobby operating system for x86-64

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published
0