All Projects → ajxs → cxos

ajxs / cxos

Licence: other
Operating System development experiment in Ada

Programming Languages

Ada
118 projects
assembly
5116 projects
shell
77523 projects
Makefile
30231 projects

Projects that are alternatives of or similar to cxos

georgios
Hobby Operating System
Stars: ✭ 19 (-40.62%)
Mutual labels:  kernel, osdev, operating-system
duckOS
Yet another hobby x86 UNIX-like operating system written in C and C++. Features a dynamically linked userspace, an in-house c standard library, and more! And yes, it runs DOOM.
Stars: ✭ 250 (+681.25%)
Mutual labels:  kernel, osdev, operating-system
Libhermit
HermitCore: A C-based, lightweight unikernel
Stars: ✭ 190 (+493.75%)
Mutual labels:  kernel, osdev, operating-system
Osmanthus
A developing operating system
Stars: ✭ 36 (+12.5%)
Mutual labels:  kernel, osdev, operating-system
beeos
A simple "Unix-like" kernel trying to be POSIX compliant
Stars: ✭ 103 (+221.88%)
Mutual labels:  kernel, osdev, operating-system
Cyjon
A simple, clean code, multi-tasking operating system written in pure assembly language for 64-bit processors from the AMD64 family.
Stars: ✭ 184 (+475%)
Mutual labels:  kernel, osdev, operating-system
SnowFlake
Technology is free, SnowFlakeOS
Stars: ✭ 38 (+18.75%)
Mutual labels:  kernel, osdev, operating-system
Tofita
🍬 All-new kernel for @GreenteaOS
Stars: ✭ 112 (+250%)
Mutual labels:  kernel, osdev, operating-system
Macaron
A sweet hobby made operating system written in C++ for x86 CPUs with GUI
Stars: ✭ 34 (+6.25%)
Mutual labels:  kernel, osdev, operating-system
biefircate
Running x86-16 or x86-32 code from x86-64 UEFI; _very experimental_ • mirror of https://gitlab.com/tkchia/biefircate • developer notes at https://gitlab.com/tkchia/biefircate/-/blob/main/doc/NOTES.asciidoc
Stars: ✭ 47 (+46.88%)
Mutual labels:  kernel, osdev, operating-system
Emerald
An operating system written in C
Stars: ✭ 118 (+268.75%)
Mutual labels:  kernel, osdev, operating-system
DentOS
Experimental Stand-alone 32-bit Kernel with Bootloader written in AT&T Assembly and Freestanding C
Stars: ✭ 32 (+0%)
Mutual labels:  kernel, osdev, operating-system
Raspberry Pi Os
Learning operating system development using Linux kernel and Raspberry Pi
Stars: ✭ 11,000 (+34275%)
Mutual labels:  kernel, osdev, operating-system
Unikraft
Unikraft is an automated system for building specialized POSIX-compliant OSes known as unikernels. (Core repository)
Stars: ✭ 183 (+471.88%)
Mutual labels:  kernel, osdev, operating-system
Aura Operating System
AuraOS, the Franco-English Operating System developed in C# using Cosmos!
Stars: ✭ 111 (+246.88%)
Mutual labels:  kernel, osdev, operating-system
Cardinal
Operating system designed to be fast and secure.
Stars: ✭ 20 (-37.5%)
Mutual labels:  kernel, osdev, operating-system
Reactos
A free Windows-compatible Operating System
Stars: ✭ 10,216 (+31825%)
Mutual labels:  kernel, osdev, operating-system
Boneos
💥 BoneOS Kernel and Operating System Source Tree
Stars: ✭ 96 (+200%)
Mutual labels:  kernel, osdev, operating-system
chaos-2
A hand-made SMP-aware kernel
Stars: ✭ 20 (-37.5%)
Mutual labels:  kernel, osdev, operating-system
Polaris
A WIP 64-bit UNIX-like kernel
Stars: ✭ 72 (+125%)
Mutual labels:  kernel, osdev, operating-system

CXOS

Background

CXOS is a personal research project operating-system implemented in Ada. The current aims of the project are to learn the fundamentals of operating system development and research the benefits provided by the Ada programming language for engineering safety-critical bare-metal software.

The operating system currently exclusively targets the x86 platform. An ARM/MIPS implementation is being considered for the long-term.

Current status

CXOS currently contains only an extremely minimal implementation, offering no interactivity. Currently CXOS has a working higher-half kernel, physical memory manager and several peripheral drivers. Currently development is focused on reaching a working tasking implementation and userland.

Project goals

The long-term goals of the project as of time-of-writing are to implement a minimal non-graphical user-interface and basic user applications. After this has been achieved, planning will begin on a more robust and planned implementation more focused on security and efficiency. Future porting to RISC architectures is being considered.

Name

The name cxos was chosen at random, based upon the precedent set by my previous operating-system development research projects. All of which were given a working title of _xos, where _ is a random letter. The original research project was calledjxos, named by a stylised amalgamation of ajxs and os. Once CXOS reaches a point of development where more specific, purposeful architectual design choices become relevant and development of userland applications begins a more fitting, long-term name will be selected.

Development

CXOS requires an Ada2012 compiler targeting the i686-elf platform. A recipe for compiling a GCC cross-compiler from x86-64-linux-elf to i686-elf from source can be found within the src/util/build_cross_gnat script. Contributions are not presently being solicited from the community, however any advice would definitely be appreciated.

While I would welcome any help on the project, work has not yet reached a point where development is following a structured plan or can be easily subdivided amongst multiple developers. I would however absolutely welcome anyone submitting pull requests to resolve any issues they encounter.

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].