Using x64BareBones as our base this project we will be building a kernel with Memory Management
, Processes
, Sheduling
, IPC
& Synchronization
This project requires the following to be built & run
- Docker
- Agodio-Image or ImNotGone-Image (based on agodio's image)
- QEMU
Additional information on how to install docker & agodio's image here, to use ImNotGone's image just replace agodio/itba-so:1.0
with imnotgone/itba-so
everywhere you see it
To start the container and execute code inside it, run the following command:
docker run -v "${PWD}:/root" --privileged --rm -ti $SO_IMAGE
This will let you run commands on your image of choice nedded for this project to be built & run.
Where the /root folder will attach to your current directory & $SO_IMAGE
is your image of choice (agodio/itba-so:1.0
or imnotgone/itba-so
).
(make sure to be in /root when trying to build using make)
To build you must be inside the docker image in the projects directoy.
First step is to build the Toolchain
cd Toolchain
make all
cd ..
Then you can build the kernel
make all
outside the container, run:
./run.sh