• Stars
    star
    666
  • Rank 67,706 (Top 2 %)
  • Language
    Rust
  • License
    Other
  • Created about 10 years ago
  • Updated over 1 year ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

An OS kernel written in rust. Non POSIX

"Tifflin" Experimental Kernel (and eventually Operating System)

This is an experiment in writing an OS Kernel in rust (http://rust-lang.org).

Mostly the architecture is being designed as I go along, but it will be written to be architecture independent (the current verison is x86_64/amd64).

Design Features

  • Runtime module initialisation with dependencies
  • Clear user-kernel separation of duties
  • Userland owns the ELF loader, kernel uses a custom format for init.
  • Object-based syscall API
  • Kernel-provided window manager (yes, I know old windows did this)

Progress

  • Filesystems
  • ISO9660
  • FAT12/16/32
  • Storage
  • (P)ATA
  • SATA (AHCI)
  • ATAPI CDROM
  • VirtIO Block
  • Input
  • PS2 Keyboard/Mouse
  • Graphics
  • Multiboot only
  • GUI Apps
  • Login (Credentials are root/password)
  • "GUI Shell" (with background!)
  • Text Terminal app (with basic set of commands)
  • Filesystem viewer
  • Architectures
  • amd64 (aka x86_64) - Boots to limit of implementation
  • armv7 - Loads userland then crashes

Build Dependencies

  • nasm
  • GNU Binutils (cross-compiled)
  • GCC (for ACPICA)
  • pxelinux
  • libguestfs-tools (for creating disk images)

More Repositories

1

mrustc

Alternative rust compiler (re-implementation)
C++
2,009
star
2

rust-barebones-kernel

A barebones framework for a rust kernel.
Assembly
258
star
3

acess2

Acess2 Hobby Operating System
C
80
star
4

rust-cc

A C Compiler/Parser written in Rust
Rust
49
star
5

stack_dst-rs

Stack-allocated DSTs for rust (fixed capacity)
Rust
44
star
6

va_list-rs

A rust implementation of the va_list type from `stdarg.h`
Rust
19
star
7

tag_safe

A plugin to rustc that emits warnings on tagged functions
Rust
10
star
8

utf16_literal-rs

Rust procedural to provide UTF-16 string literals
Rust
9
star
9

equation-editor

Equation editor built in rust, intended to handle very large expressions
Rust
8
star
10

cmdline_words_parser

A rust string parser that extracts 'words' using the same rules as posix shells
Rust
6
star
11

rme2

Real-Mode Emulator - Emulates 16-bit x86
C
5
star
12

array_iter-rs

By-value iterators for fixed-size arrays
Rust
4
star
13

logiccircuit

Simplistic logic gate simulator
C
4
star
14

fury3clone

Clone of the game "Fury3" (engine only, loads official datafiles)
Rust
4
star
15

rust-logiccircuit

A rust port of my LogicCircuit simulator
Rust
2
star
16

cits3200

CITS3200 Professional Computing 2011 Sem 2
C#
2
star
17

binaryview2

Executing disassembler and type tracer
Rust
1
star
18

rust-utf8reader

An inline UTF-8 decoder that reads a stream of code-points from a "Reader"
Rust
1
star
19

fyp-boat

2017 Final-year project, Self-guided boat
C++
1
star
20

inverse_fft

Hackjob image->audio converter
Rust
1
star
21

legacy-acess

LEGACY: A repository containing a snapshot of my original OS project
C
1
star
22

anvil_find_block

Locates a specific block IDs in the Minecraft 'Anvil' file format.
C
1
star
23

tunic_text

A single-file HTML tool to type and translate the text from the adventure game "Tunic"
HTML
1
star