Giter VIP home page Giter VIP logo

hydros's Introduction

HydrOS

About

HydrOS aims to be a simple yet well documented kernel for the x86-64 architecture.

Why HydrOS

Hydros (that's why OS looks so nice there) is one of the Greek deities associated with water (specially in ancient texts), which is cool. But what is even cooler is the fact the Hydrogen is the first element in the periodic table, which means it is the lightest one.

Building

Depending on your operating system you may need different packages. In case you run build.sh with a problem, simply install the package of the failed command. To build the kernel you need gcc, nasm and the GNU linker (ld). Finally, to build the image you will need xorriso.

  • Clone the repository with git clone <url>
  • Run build.sh with the build or run options (use the limine option before that if you are building the kernel for the first time)

TODO

Kernel:

  • ISRs and IRQs
  • Serial driver
  • PCI listing
  • ACPI

Memory

  • Physical memory
  • Basic kheap
  • Virtual memory

Multitasking

  • Scheduler
    • Kernel tasks
    • User tasks
  • ELF loading

Drivers and usage:

  • Framebuffer support
  • PS/2 Keyboard driver
  • Mouse support
  • Basic shutdown (ACPI)
  • AHCI drive detection
  • AHCI drive read/write

Network:

  • Basic NE2000 driver1
  • Basic RTL8139 driver1
  • Working network

[1] Basic init and MAC address

License

MIT

hydros's People

Contributors

dacousb avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.