Skip to content

PowerNex/PowerNex

master
Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?
Code

Latest commit

 

Git stats

Files

Permalink
Failed to load latest commit information.
Type
Name
Latest commit message
Commit time
 
 
 
 
 
 
src
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Please note that the current code is undergoing a major overhaul!

PowerNex Logo

PowerNex is a OS written in the D Programming Language. The goal is to have a whole OS written in D, where the PowerNex kernel powers the core.

The name PowerNex comes from the words power and next. A kernel to power the next generation of hardware.

System requirements

  • A 64bit processor
  • At least 512 MiB of ram (less will probably work)

Build Instructions

It requires a crosscompiler, which can be aquired by running ./toolchainManager.d. PowerNex is using a custom build system. For its code look inside build.d, src/buildlib.d, and src/*/project.d.

To use the following shortcuts run source env.sh in your shell.

  • c - Removes the build files
  • v - Compiles PowerNex
  • b - Compiles and runs PowerNex in qemu
  • bd - Compiles and runs PowerNex in qemu, with debug logs to qemu_debug.log
  • a - Runs addr2line on the kernel
  • al - Runs addr2line on the loader
  • log - Runs tail on the COM1.log, and demangles and inserts colors for the entries.

How to contribute

Thanks to

  • Adam D. Ruppe - For his minimal.zip, which contains a bare bone minimal d runtime.
  • Bloodmanovski - For his D Kernel Trinix, His files for booting x64 really helped me a lot in the beginning.
  • Lukas "zrho" Heidemann - For his Hydrogen project. It really inspired and help me to make PowerD, the intermediate bootloader.

Community

License

Mozilla Public License, version 2.0