Skip to content
/ OctOs Public

An OS created in October. This OS is 32 bits, provides a heap and a command line interface.

License

Notifications You must be signed in to change notification settings

Cc618/OctOs

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

51 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

OctOs

An OS created in October. This OS is 32 bits, provides a heap and a command line interface.

OctOs Thumbnail Commands Error Handling

Features

  • Pure bootloader (no GRUB).
  • 32 bits, protected mode.
  • Custom standard library.
  • Command line interface.
  • Heap.
  • (WIP) Error handling.
  • (WIP) Commands.

Standard Library

This os provides a custom standard library located in src/kernel/std, here is files :

  • types : System types
  • io : Input / Output
  • mem : Memory handling
  • err : Error handling

Architecture

  • utils : Some scripts.
  • src : Source files.
  • src/boot : Boot source files (Assembly).
  • src/kernel : Kernel source files (C).
  • src/kernel/std : Standard library.
  • src/kernel/cmd : All command programs.

Build

Here is makefile commands. To build :

$ make

To build and run :

$ make run

To remove temporary files :

$ make flush

To clean everything (removes all build files) :

$ make clean

Depedencies

To build the OS you must have :

  • nasm : Assembly sources.
  • python3 : Scripts in the utils folder.
  • cc (for i386, provided with GCC) : For C sources.
  • ld (for i386, provided with GCC) : To link object files.

If the compilation fails, please make sure that you have a cross compiler (for i386). Here is some documentation about how to build a cross compiler.

Links

Here are some useful links :

About

An OS created in October. This OS is 32 bits, provides a heap and a command line interface.

Topics

Resources

License

Stars

Watchers

Forks

Packages