All Projects â†’ Bone-Project â†’ Boneos

Bone-Project / Boneos

Licence: gpl-3.0
💥 BoneOS Kernel and Operating System Source Tree

Programming Languages

c
50402 projects - #5 most used programming language

Projects that are alternatives of or similar to Boneos

Dennix
Dennix is a unix-like hobbyist operating system written from scratch.
Stars: ✭ 53 (-44.79%)
Mutual labels:  kernel, operating-system, osdev
Dgos
Operating System
Stars: ✭ 90 (-6.25%)
Mutual labels:  kernel, operating-system, osdev
RocketOS
RocketOS is a Unix based OS that uses legacy BIOS and GRUB and is written in C17. It is being developed for educational purposes primarily, but it still is a serious project. It is currently in its infancy.
Stars: ✭ 23 (-76.04%)
Mutual labels:  kernel, osdev, operating-system
Cuteos
A 64-bit SMP-safe kernel for the PC architecture.
Stars: ✭ 51 (-46.87%)
Mutual labels:  kernel, operating-system, osdev
Gramado
Gramado OS - 32bit operating system
Stars: ✭ 420 (+337.5%)
Mutual labels:  kernel, operating-system, osdev
MandelbrotOS
A community driven OS by the youth
Stars: ✭ 172 (+79.17%)
Mutual labels:  kernel, osdev, operating-system
Toaru Nih
NOTICE: The ToaruOS-NIH Project has been MERGED UPSTREAM. This repository is now archived.
Stars: ✭ 66 (-31.25%)
Mutual labels:  kernel, operating-system, osdev
poplar
Microkernel and userspace written in Rust exploring modern ideas
Stars: ✭ 217 (+126.04%)
Mutual labels:  kernel, osdev, operating-system
Aquila
AquilaOS: UNIX-like Operating System
Stars: ✭ 413 (+330.21%)
Mutual labels:  kernel, operating-system, osdev
Wingos
a little 64bit operating system written in c++ with smp support
Stars: ✭ 361 (+276.04%)
Mutual labels:  kernel, operating-system, osdev
nightingale
A small operating system where I experiment and learn osdev.
Stars: ✭ 86 (-10.42%)
Mutual labels:  kernel, osdev, operating-system
Libhermit Rs
libhermit-rs: A Rust-based library operating system
Stars: ✭ 558 (+481.25%)
Mutual labels:  kernel, operating-system, osdev
infinity
A secure, modern and intelligent operative system
Stars: ✭ 27 (-71.87%)
Mutual labels:  kernel, osdev, operating-system
Skift
🥑 A simple, handmade, operating system with a graphical user interface.
Stars: ✭ 1,068 (+1012.5%)
Mutual labels:  kernel, operating-system, osdev
KnutOS
An x86_64 hobbyist OS written in C and Assembly
Stars: ✭ 16 (-83.33%)
Mutual labels:  kernel, osdev, operating-system
LudOS
A toy monolithic kernel written in C++
Stars: ✭ 38 (-60.42%)
Mutual labels:  kernel, osdev, operating-system
georgios
Hobby Operating System
Stars: ✭ 19 (-80.21%)
Mutual labels:  kernel, osdev, operating-system
cxos
Operating System development experiment in Ada
Stars: ✭ 32 (-66.67%)
Mutual labels:  kernel, osdev, operating-system
Toaruos
A completely-from-scratch hobby operating system: bootloader, kernel, drivers, C library, and userspace including a composited graphical UI, dynamic linker, syntax-highlighting text editor, network stack, etc.
Stars: ✭ 4,687 (+4782.29%)
Mutual labels:  kernel, operating-system, osdev
Powernex
An operating system written in D
Stars: ✭ 460 (+379.17%)
Mutual labels:  kernel, operating-system, osdev

BoneOS

Documentation Status

Release Version Release Date Github Releases SourceForge
V 0.0.1 Dec/29/2016
V 0.0.2 Jan/16/2017
V 0.0.3 Feb/05/2017
Branch Status Main Developer
master BoneOS Community
amanuel_dev amanuel2
doug_dev doug65536
ashish_dev Fortunate-MAN

Current BoneOS Version : V 0.0.2

BoneOS Issues

Welcome! This is the official and main repository of BoneOS. This project is currently in high active development , and is predominately written in C ofcourse some parts such as hardware communication, scripting, building, etc ...will use other languages. If you find any issue using this OS please request an issue here! If you have any contributions or pull requests, which will be highly appreciated, please issue a pull request here!

WARNINGS


  • Installing VirtualBox on Ubuntu may lead to problems.

Discussions


Any Questions, Comments, Ideas, Feature Requests, etc. may be brought up here.

Installation


There are two ways to install BoneOS: one for the normal user to get it into his Virtual Machine and the other for the developer who want to contribute (building from source).

Normal Installation (For user)

To install a spsecific version , go to the top of readme where you will see the version number listed as well as installing the Image File via SourceForge or Github Releases. Choose whichever you would like and when you finish installing the ISO(Image File) plug it into your Virtual Machine. here is a video showing how to do this using VirtualBox as the Virtual Machine Emulator. You can download Virtual Box here. Here is a video showing how to get it in VMWare. VMWare is paid , there if a free trial though. You can get more Information at our Offical Download Page here.

Nightly Builds (For Developer Or Normal User)

You can get the nightly builds for the latest updated iso for the master branch here .

Building From Source (For developer)

First make sure you have a Ubuntu Terminal (If you are on Windows, use the new Linux Subsystem Feature). Then download the dependencies using bash setup.sh. Then compile BoneOS using make. Now that you have qemu after you executed setup.sh , you can go ahead and run on qemu using make qemu_compile for running the binary or make qemu_iso to run the actual Image File(.ISO).

Cloud9 Collaboration (For Developer)

You can collaborate with the Main BoneOS Developer in Cloud9. Cloud9 Is an Online IDE , with an Ubuntu Terminal. We use Cloud9IDE Terminal + NoVNC to make this possible. the workspace is located here . You can learn more here.

If you want to setup NoVNC Server once you are in an Cloud9IDE You can use the command

make no_vnc

Extra Options (For Developer)

There are extra options when building(makeing) , this OS. You can set the compiler instead of the default gcc($(CC)) like so :

 $ CC=clang make #If you want to run via clang
 $ CC=gcc-5 make #If you want to run via GCC Version 5
 $ ./configure --cc=gcc-5 && make # Optionally use the configure script to store variable permanently

You can see more in Docs/Configuration

More Info(For Developer)

For more information, go here for documentation.

Directory Structure


Our directory structure currently is as follows:

  • docs : Documentation for BoneOS
  • apps : Applications
    • term : Terminal
  • .github : Github related files.
    • ISSUE_TEMPLATE.md : Github Issues Template
  • arch : Architecture Dependant Codes
    • @(ARCH) : Architecture name.
      • boot: GRUB Bootloader information
        • multiboot: Grub Multiboot information
      • drv : Device Drivers for @(ARCH) are located here.
      • io : I/O Software Code
      • link: Where the linker is located.
      • init: Main kernel function getting called by GRUB Bootloader
    • shared : Shared piece of code between Proccecor Families
      • x86 : Shared piece of code for x86 family
  • bin : Non Adminstrator Terminal Commands
  • sbin : Adminstrator Terminal Commands
  • config : Configuration Files
  • hdd : Default files on first time use
  • platform : Platform Dependant Code
    • pc : PC Platform
  • libc: C Library constructed and used by BoneOS, non-archecture and non-platform dependant code.
  • utils: Utilities for devs.
    • cross_compiler: Script for installing the cross compiler
    • no_vnc: Setup No_vnc server in Cloud9IDE
    • watch.sh : Nodemon like script
  • include: All Include Files(.h).
  • var : Common Variables used across the system.

Documentation


You can take a look at the Documentation online hosted by gitbook here. Documentation are for presistant information , not code details.

Architectures


Architecture Status Plan to support
x86(32 BIT) Ready Already Supported
x64 On Progress Currently updating to support this architecture
PowerPC Unavailable Yes, in later releases
Arm Unavailable Yes, in later releases
MIPS Unavailable Yes, in later releases

if there are architectures you want BoneOS to support , please request an issue to talk about it.

FAQ


  1. What is BoneOS Goal? Our goal is to make an Operating System for 'Everyone'. Ranging from Programmers to Normal Users. We dont believe the "OS Problem" is solved by either Popular Operating Systems such as Windows, Mac OSX or even kernels such as Linux.

  2. Any new features? We have some ideas in mind. But it will be a long way until we start adding new feautres, as we are just starting in the osdev world :).

  3. Need Help? Absolutely! Any help would be appreciated! To get to us, either request an issue or check ask a question: https://github.com/Bone-Project/BoneOS/issues

License


BoneOS is Licensed under the GPLv3 License.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].