Git Product home page Git Product logo

sos's Introduction

SOS (Shitty OS) SOS, often stylized $0$, S0S, sos, SoS, and trashOS, is an

operating system built 100% from scratch without relying on anything at all, except a compiler, and currently grub (but grub will be going away soon).

Project status

Currently active development, exclusively as a hobby / learning exercise.

  • Virtual & Physical memory management
  • Memory allocation and freeing
  • Keyboard handler and small "shell"
  • Virtual Filesystem
  • Support for a real filesystem (FAT32)
  • A real shell (CLIT = Command Line Interface Tool)
  • Context switching environment / support for processes
  • Internet

Building requirements

  • A 64 bit version of GCC, preferably the latest one. I can't guarantee that this works on any version of GCC prior to 6.3.1. This means it probably won't build on whatever older version of ubuntu you're using. If you're curious about a cross compiler, read the last section.
  • NASM 64 bit. No guarantee that this will work on a version older than 2.12.02. Again, it probably won't build if you dont live in at least 2017.

Building instructions

Make Target Description
make qemu Builds the whole OS and launches it in qemu
make bochs Builds the whole OS and launches it in bochs
make debugq Builds the whole OS and launches it in qemu with debug flags

Contributing

Since this is here for me to learn, big features are only encouraged if you do a really clean job of it, and write nice fancy commit messages. small fixes are more than welcome. Don't use tabs in source files, and generally follow the same style guides used throughout the rest of the code.

Cross Compiler?

When you normally compile something, your compiler should be configured to create binaries for only the architecture of your machine. Any time you have a compiler that generates machine code for some other architecture, that would be a cross compiler. Most operating systems use a cross compiler, and that's what OSDevWiki says to do too. However, we do not live in 2000 any more, and SOS is exclusively built on, and developed for the AMD64 architecture (x86_64). This means that there is no need to waste time on a cross compiler.

License

SOS is licensed under the GPLv2. See LICENSE for details.

sos's People

Contributors

jds311 avatar jeetkaria06 avatar tmathmeyer avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar

sos's Issues

Sleep Function

There is no sleep function for the timer which is necessary if you want to enable multithreading later on

[ Enhancement ] History Command

In order to see the history of the entered commands, "history" command can be implemented which is missing in your OS whose output in UNIX-like operating system looks like below.

Screenshot from 2020-11-04 08-24-02

#enhancement

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.