Skip to content

TheArduinoBoy/DarshOS

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

19 Commits
 
 
 
 

Repository files navigation

DarshOS

Features

  • Shell/Command Line

  • Keyboard Input

  • IDT

Might add in the future

  • File System and Commands for File System

  • IDT [DONE]

  • Networking

  • GUI

Setup / dependencies

You will need these to run "compile.sh".

Windows

For Windows you will have to Install WSL (Windows Subsystem for Linux) then you can follow the guide for Linux by typing the commands in the WSL terminal.

  • How to setup WSL on Windows:

    1. Go to https://ubuntu.com/wsl
    2. Download Ubuntu WSL from Microsoft Store
    3. Open StartMenu and search "Turn Windows Features on or off" without the double quotes
    4. Click on Turn Windows Features on or off
    5. Scroll down and tick Windows Subsystem For Linux then press ok
    6. Press Windows Key and in "The Recently Added" section click Ubuntu
    7. Then You Will see a Terminal Window saying that ubuntu is Installing
    8. It will ask you to make a Unix account (It will not show the password)
    9. run the command "sudo apt update && sudo apt upgrade" without the double quotes
    10. It will ask for your unix account's password type it and press enter (it wont show the password on screen)
    11. Follow the Guide for Linux By typing the commands in the terminal.

Linux

  • Qemu VM :
 sudo apt install qemu && sudo apt-get install qemu-kvm
  • Nasm (Asm Compiler) :
 sudo apt install nasm
  • GCC cross compiler for i386 systems (might take quite some time).
 sudo apt update
sudo apt install build-essential
sudo apt install bison
sudo apt install flex
sudo apt install libgmp3-dev
sudo apt install libmpc-dev
sudo apt install libmpfr-dev
sudo apt install texinfo

export PREFIX="/usr/local/i386elfgcc"
export TARGET=i386-elf
export PATH="$PREFIX/bin:$PATH"

mkdir /tmp/src
cd /tmp/src
curl -O http://ftp.gnu.org/gnu/binutils/binutils-2.35.1.tar.gz
tar xf binutils-2.35.1.tar.gz
mkdir binutils-build
cd binutils-build
../binutils-2.35.1/configure --target=$TARGET --enable-interwork --enable-multilib --disable-nls --disable-werror --prefix=$PREFIX 2>&1 | tee configure.log
sudo make all install 2>&1 | tee make.log

cd /tmp/src
curl -O https://ftp.gnu.org/gnu/gcc/gcc-10.2.0/gcc-10.2.0.tar.gz
tar xf gcc-10.2.0.tar.gz
mkdir gcc-build
cd gcc-build
echo Configure: . . . . . . .
../gcc-10.2.0/configure --target=$TARGET --prefix="$PREFIX" --disable-nls --disable-libssp --enable-language=c++ --without-headers
echo MAKE ALL-GCC:
sudo make all-gcc
echo MAKE ALL-TARGET-LIBGCC:
sudo make all-target-libgcc
echo MAKE INSTALL-GCC:
sudo make install-gcc
echo MAKE INSTALL-TARGET-LIBGCC:
sudo make install-target-libgcc
ls /usr/local/i386elfgcc/bin
echo DONE

Now you will have to do the following to run compile.sh :

  • Make sure that you are in the OS folder to go in the folder run :
 cd os 
  • run this command inside the os folder.
 export PATH=$PATH:/usr/local/i386elfgcc/bin
  • then to compile the compile.sh file run this command.
 sh compile.sh
  • Now there sholud be a popup window with DarshOS running

  • If there is no popup Do this:

    1. Press Crtl + C together in the WSL terminal
    2. Go to The Microsoft Store
    3. Search GWSL in The Microsoft Store
    4. Install GWSL
    5. Run GWSL
    6. Go into the WSL terminal Again and Run these commands again after going in the os directory.
     export PATH=$PATH:/usr/local/i386elfgcc/bin
     sh compile.sh
    1. You Have successfully ran DarshOS.

Resources Used

About

An Operating System made in my spare time.

Resources

Stars

Watchers

Forks

Packages

No packages published

Languages

  • C 44.9%
  • C++ 44.8%
  • Assembly 7.4%
  • Shell 2.9%