Skip to content

elianparedes/kerber-os

Repository files navigation

KerberOS

64-bit operative system with multitasking capabilities built on top of x64BareBones.

Building

  1. To be able to build this project, the following tools are needed:

    build-essential package, which includes GCC and Make.

    sudo apt-get install build-essential
    

    NASM for compiling assembly code.

    sudo apt-get install nasm
    

    QEMU for running the OS image. It also offers a comfortable way to do system-wide debugging.

    sudo apt-get install qemu-kvm \
                         libvirt-daemon-system \
                         libvirt-clients \
                         bridge-utils
    

    The following package versions were used in the making of this project: GCC version 4.9.2, Make version 4.0, NASM version 2.11.5, QEMU version 2.1.2.

  2. Build the Toolchain Execute the following commands inside KerberOS root folder:

    cd Toolchain
    make all
    
  3. Build the Kernel From the project root directory, run:

    make all
    

Booting

To boot the OS, type the following command inside project root directory:

./run.sh

Developing

Most of the header files in this project are documented using Javadoc-style comments. Code format was set using Clang-Format formatter with the following rules:

{ 
  BasedOnStyle: LLVM,
  IndentWidth: 4,
  AllowShortIfStatementsOnASingleLine: false,
  BreakBeforeBraces: Attach,
  AllowAllParametersOfDeclarationOnNextLine: true,
  AllowShortFunctionsOnASingleLine: None,
  AllowShortEnumsOnASingleLine: false,
  IndentCaseLabels: true,
  AlignConsecutiveMacros: AcrossEmptyLines,
  SortIncludes: CaseInsensitive,
  AlignTrailingComments: true,
  PointerAlignment: Right
}

About

64-bit operative system with multitasking capabilities

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Contributors 3

  •  
  •  
  •