From 888e0fcad3ab5785b4b9b7135143bda84daa174b Mon Sep 17 00:00:00 2001 From: ishanjain28 Date: Thu, 2 May 2019 15:31:20 +0530 Subject: [PATCH] Added readme and license --- LICENSE.md | 26 ++++++++++++++++++++++++++ README.md | 28 ++++++++++++++++++++++++++++ 2 files changed, 54 insertions(+) create mode 100644 LICENSE.md create mode 100644 README.md diff --git a/LICENSE.md b/LICENSE.md new file mode 100644 index 0000000..deff9ea --- /dev/null +++ b/LICENSE.md @@ -0,0 +1,26 @@ +Copyright (c) 2019 Ishan Jain + +Permission is hereby granted, free of charge, to any +person obtaining a copy of this software and associated +documentation files (the "Software"), to deal in the +Software without restriction, including without +limitation the rights to use, copy, modify, merge, +publish, distribute, sublicense, and/or sell copies of +the Software, and to permit persons to whom the Software +is furnished to do so, subject to the following +conditions: + +The above copyright notice and this permission notice +shall be included in all copies or substantial portions +of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF +ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED +TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A +PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT +SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY +CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION +OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR +IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER +DEALINGS IN THE SOFTWARE. + diff --git a/README.md b/README.md new file mode 100644 index 0000000..1beafe9 --- /dev/null +++ b/README.md @@ -0,0 +1,28 @@ +# Neptune + +Neptune is my attempt at writing an Operating System from scratch in Rust. + +# Building + +1. You'll need nightly version of latest rust compiler. A simple, slightly dangerous way to do this is to run `curl -sSf https://sh.rustup.rs | bash` and follow the instructions. + +2. The OS for now uses BIOS to boot. I did not wrote the required ASM to boot into 16 bit and switch from 16 bit -> protected mode for this operating system because I had already done that in an older attempt at writing an operating system. +So, For this project, I used [bootimage](https://crates.io/crates/cargo-bootimage). Install it using `cargo install cargo-bootimage`. + + +# Running + +Run it in qemu with `qemu-system-x86_64 -drive format=raw,file=./target/neptune-x86_64/debug/bootimage-neptune.bin` + + +# Future Plans + +1. Boot with UEFI. +2. Implement a short term scheduler. +3. Threads. +4. A Graphics Subsystem, mainly to be used to implement games and not an actual GUI interface. + + +# License + +MIT