├── .editorconfig ├── .gitignore ├── Cargo.lock ├── Cargo.toml ├── LICENSE.txt ├── Makefile ├── README.md ├── Xargo.toml ├── clippy.toml ├── docs ├── notes │ ├── mman.md │ ├── primitives.md │ └── syscalls.md └── sparkle.png ├── lib └── once │ ├── Cargo.lock │ ├── Cargo.toml │ └── src │ └── lib.rs ├── src ├── alloca.rs ├── arch │ ├── mod.rs │ └── x86_64 │ │ ├── bits.rs │ │ ├── bload │ │ ├── boot.asm │ │ ├── long.asm │ │ └── multiboot.asm │ │ ├── device │ │ ├── mod.rs │ │ ├── pic.rs │ │ ├── pit.rs │ │ ├── serial.rs │ │ └── vga_console.rs │ │ ├── grub.cfg │ │ ├── interrupts │ │ ├── gdt.rs │ │ └── mod.rs │ │ ├── linker.ld │ │ ├── memory │ │ ├── mod.rs │ │ ├── paging │ │ │ ├── frame.rs │ │ │ ├── frame_allocators.rs │ │ │ ├── mapper.rs │ │ │ ├── mod.rs │ │ │ ├── page.rs │ │ │ ├── table.rs │ │ │ └── temporary_page.rs │ │ └── stack_allocator.rs │ │ ├── mod.rs │ │ └── ports.rs ├── consts.rs ├── lib.rs ├── logger.rs ├── macros.rs └── panic.rs └── x86_64-sparkle.json /.editorconfig: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sparkle-os/sparkle/HEAD/.editorconfig -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | build/ 2 | target/ 3 | -------------------------------------------------------------------------------- /Cargo.lock: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sparkle-os/sparkle/HEAD/Cargo.lock -------------------------------------------------------------------------------- /Cargo.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sparkle-os/sparkle/HEAD/Cargo.toml -------------------------------------------------------------------------------- /LICENSE.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sparkle-os/sparkle/HEAD/LICENSE.txt -------------------------------------------------------------------------------- /Makefile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sparkle-os/sparkle/HEAD/Makefile -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sparkle-os/sparkle/HEAD/README.md -------------------------------------------------------------------------------- /Xargo.toml: -------------------------------------------------------------------------------- 1 | [target.x86_64-sparkle.dependencies] 2 | alloc = {} 3 | -------------------------------------------------------------------------------- /clippy.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sparkle-os/sparkle/HEAD/clippy.toml -------------------------------------------------------------------------------- /docs/notes/mman.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sparkle-os/sparkle/HEAD/docs/notes/mman.md -------------------------------------------------------------------------------- /docs/notes/primitives.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sparkle-os/sparkle/HEAD/docs/notes/primitives.md -------------------------------------------------------------------------------- /docs/notes/syscalls.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sparkle-os/sparkle/HEAD/docs/notes/syscalls.md -------------------------------------------------------------------------------- /docs/sparkle.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sparkle-os/sparkle/HEAD/docs/sparkle.png -------------------------------------------------------------------------------- /lib/once/Cargo.lock: -------------------------------------------------------------------------------- 1 | [[package]] 2 | name = "once" 3 | version = "0.1.0" 4 | 5 | -------------------------------------------------------------------------------- /lib/once/Cargo.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sparkle-os/sparkle/HEAD/lib/once/Cargo.toml -------------------------------------------------------------------------------- /lib/once/src/lib.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sparkle-os/sparkle/HEAD/lib/once/src/lib.rs -------------------------------------------------------------------------------- /src/alloca.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sparkle-os/sparkle/HEAD/src/alloca.rs -------------------------------------------------------------------------------- /src/arch/mod.rs: -------------------------------------------------------------------------------- 1 | //! Architecture-specific code. 2 | 3 | pub mod x86_64; 4 | -------------------------------------------------------------------------------- /src/arch/x86_64/bits.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sparkle-os/sparkle/HEAD/src/arch/x86_64/bits.rs -------------------------------------------------------------------------------- /src/arch/x86_64/bload/boot.asm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sparkle-os/sparkle/HEAD/src/arch/x86_64/bload/boot.asm -------------------------------------------------------------------------------- /src/arch/x86_64/bload/long.asm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sparkle-os/sparkle/HEAD/src/arch/x86_64/bload/long.asm -------------------------------------------------------------------------------- /src/arch/x86_64/bload/multiboot.asm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sparkle-os/sparkle/HEAD/src/arch/x86_64/bload/multiboot.asm -------------------------------------------------------------------------------- /src/arch/x86_64/device/mod.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sparkle-os/sparkle/HEAD/src/arch/x86_64/device/mod.rs -------------------------------------------------------------------------------- /src/arch/x86_64/device/pic.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sparkle-os/sparkle/HEAD/src/arch/x86_64/device/pic.rs -------------------------------------------------------------------------------- /src/arch/x86_64/device/pit.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sparkle-os/sparkle/HEAD/src/arch/x86_64/device/pit.rs -------------------------------------------------------------------------------- /src/arch/x86_64/device/serial.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sparkle-os/sparkle/HEAD/src/arch/x86_64/device/serial.rs -------------------------------------------------------------------------------- /src/arch/x86_64/device/vga_console.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sparkle-os/sparkle/HEAD/src/arch/x86_64/device/vga_console.rs -------------------------------------------------------------------------------- /src/arch/x86_64/grub.cfg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sparkle-os/sparkle/HEAD/src/arch/x86_64/grub.cfg -------------------------------------------------------------------------------- /src/arch/x86_64/interrupts/gdt.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sparkle-os/sparkle/HEAD/src/arch/x86_64/interrupts/gdt.rs -------------------------------------------------------------------------------- /src/arch/x86_64/interrupts/mod.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sparkle-os/sparkle/HEAD/src/arch/x86_64/interrupts/mod.rs -------------------------------------------------------------------------------- /src/arch/x86_64/linker.ld: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sparkle-os/sparkle/HEAD/src/arch/x86_64/linker.ld -------------------------------------------------------------------------------- /src/arch/x86_64/memory/mod.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sparkle-os/sparkle/HEAD/src/arch/x86_64/memory/mod.rs -------------------------------------------------------------------------------- /src/arch/x86_64/memory/paging/frame.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sparkle-os/sparkle/HEAD/src/arch/x86_64/memory/paging/frame.rs -------------------------------------------------------------------------------- /src/arch/x86_64/memory/paging/frame_allocators.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sparkle-os/sparkle/HEAD/src/arch/x86_64/memory/paging/frame_allocators.rs -------------------------------------------------------------------------------- /src/arch/x86_64/memory/paging/mapper.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sparkle-os/sparkle/HEAD/src/arch/x86_64/memory/paging/mapper.rs -------------------------------------------------------------------------------- /src/arch/x86_64/memory/paging/mod.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sparkle-os/sparkle/HEAD/src/arch/x86_64/memory/paging/mod.rs -------------------------------------------------------------------------------- /src/arch/x86_64/memory/paging/page.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sparkle-os/sparkle/HEAD/src/arch/x86_64/memory/paging/page.rs -------------------------------------------------------------------------------- /src/arch/x86_64/memory/paging/table.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sparkle-os/sparkle/HEAD/src/arch/x86_64/memory/paging/table.rs -------------------------------------------------------------------------------- /src/arch/x86_64/memory/paging/temporary_page.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sparkle-os/sparkle/HEAD/src/arch/x86_64/memory/paging/temporary_page.rs -------------------------------------------------------------------------------- /src/arch/x86_64/memory/stack_allocator.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sparkle-os/sparkle/HEAD/src/arch/x86_64/memory/stack_allocator.rs -------------------------------------------------------------------------------- /src/arch/x86_64/mod.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sparkle-os/sparkle/HEAD/src/arch/x86_64/mod.rs -------------------------------------------------------------------------------- /src/arch/x86_64/ports.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sparkle-os/sparkle/HEAD/src/arch/x86_64/ports.rs -------------------------------------------------------------------------------- /src/consts.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sparkle-os/sparkle/HEAD/src/consts.rs -------------------------------------------------------------------------------- /src/lib.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sparkle-os/sparkle/HEAD/src/lib.rs -------------------------------------------------------------------------------- /src/logger.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sparkle-os/sparkle/HEAD/src/logger.rs -------------------------------------------------------------------------------- /src/macros.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sparkle-os/sparkle/HEAD/src/macros.rs -------------------------------------------------------------------------------- /src/panic.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sparkle-os/sparkle/HEAD/src/panic.rs -------------------------------------------------------------------------------- /x86_64-sparkle.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sparkle-os/sparkle/HEAD/x86_64-sparkle.json --------------------------------------------------------------------------------