├── .dockerignore ├── .gitignore ├── .gitmodules ├── .travis.yml ├── Cargo.lock ├── Cargo.toml ├── Dockerfile ├── LICENSE ├── Makefile ├── README.md ├── Xargo.toml ├── arch └── x86_64 │ ├── Cargo.toml │ ├── assembly │ ├── boot.asm │ ├── long_mode_init.asm │ └── multiboot_header.asm │ ├── grub.cfg │ ├── linker.ld │ └── src │ ├── acpi │ ├── dsdt.rs │ ├── fadt.rs │ ├── mod.rs │ ├── rsdp.rs │ ├── rsdt.rs │ ├── sdt.rs │ └── xsdt.rs │ ├── consts.rs │ ├── context.rs │ ├── device │ ├── local_apic.rs │ ├── mod.rs │ ├── rtc.rs │ └── serial.rs │ ├── interrupts │ ├── exceptions.rs │ ├── gdt.rs │ ├── ipi.rs │ ├── irq.rs │ └── mod.rs │ ├── kernel_messaging.rs │ ├── lib.rs │ ├── memory │ ├── area_frame_allocator.rs │ ├── mod.rs │ ├── paging │ │ ├── entry.rs │ │ ├── mapper.rs │ │ ├── mod.rs │ │ ├── table.rs │ │ └── temporary_page.rs │ └── stack_allocator.rs │ ├── start.rs │ ├── time.rs │ └── vga_buffer.rs ├── configure.sh ├── initfs └── keep ├── libs ├── .gitignore ├── bump_allocator │ ├── Cargo.toml │ └── src │ │ └── lib.rs ├── hole_list_allocator │ ├── Cargo.toml │ └── src │ │ └── lib.rs └── syscall │ ├── Cargo.toml │ └── src │ ├── data.rs │ ├── error.rs │ ├── flag.rs │ ├── lib.rs │ ├── number.rs │ └── scheme.rs ├── logo.png ├── mk ├── config.mk ├── docker.mk └── initfs.mk ├── programs └── init │ ├── Cargo.lock │ ├── Cargo.toml │ └── src │ └── main.rs ├── src ├── common │ ├── int_like.rs │ └── mod.rs ├── context │ ├── context.rs │ ├── file.rs │ ├── list.rs │ ├── memory.rs │ ├── mod.rs │ └── switch.rs ├── elf.rs ├── lib.rs ├── scheme │ ├── inifs.rs │ └── mod.rs └── syscall │ ├── fs.rs │ ├── mod.rs │ └── process.rs ├── utils ├── lld.sh ├── rustc.sh └── xargo.sh ├── x86_64-unknown-none.json └── x86_64-unknown-pulsar.json /.dockerignore: -------------------------------------------------------------------------------- 1 | * 2 | !utils/ 3 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Infinity-OS/infinity/HEAD/.gitignore -------------------------------------------------------------------------------- /.gitmodules: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Infinity-OS/infinity/HEAD/.gitmodules -------------------------------------------------------------------------------- /.travis.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Infinity-OS/infinity/HEAD/.travis.yml -------------------------------------------------------------------------------- /Cargo.lock: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Infinity-OS/infinity/HEAD/Cargo.lock -------------------------------------------------------------------------------- /Cargo.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Infinity-OS/infinity/HEAD/Cargo.toml -------------------------------------------------------------------------------- /Dockerfile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Infinity-OS/infinity/HEAD/Dockerfile -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Infinity-OS/infinity/HEAD/LICENSE -------------------------------------------------------------------------------- /Makefile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Infinity-OS/infinity/HEAD/Makefile -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Infinity-OS/infinity/HEAD/README.md -------------------------------------------------------------------------------- /Xargo.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Infinity-OS/infinity/HEAD/Xargo.toml -------------------------------------------------------------------------------- /arch/x86_64/Cargo.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Infinity-OS/infinity/HEAD/arch/x86_64/Cargo.toml -------------------------------------------------------------------------------- /arch/x86_64/assembly/boot.asm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Infinity-OS/infinity/HEAD/arch/x86_64/assembly/boot.asm -------------------------------------------------------------------------------- /arch/x86_64/assembly/long_mode_init.asm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Infinity-OS/infinity/HEAD/arch/x86_64/assembly/long_mode_init.asm -------------------------------------------------------------------------------- /arch/x86_64/assembly/multiboot_header.asm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Infinity-OS/infinity/HEAD/arch/x86_64/assembly/multiboot_header.asm -------------------------------------------------------------------------------- /arch/x86_64/grub.cfg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Infinity-OS/infinity/HEAD/arch/x86_64/grub.cfg -------------------------------------------------------------------------------- /arch/x86_64/linker.ld: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Infinity-OS/infinity/HEAD/arch/x86_64/linker.ld -------------------------------------------------------------------------------- /arch/x86_64/src/acpi/dsdt.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Infinity-OS/infinity/HEAD/arch/x86_64/src/acpi/dsdt.rs -------------------------------------------------------------------------------- /arch/x86_64/src/acpi/fadt.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Infinity-OS/infinity/HEAD/arch/x86_64/src/acpi/fadt.rs -------------------------------------------------------------------------------- /arch/x86_64/src/acpi/mod.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Infinity-OS/infinity/HEAD/arch/x86_64/src/acpi/mod.rs -------------------------------------------------------------------------------- /arch/x86_64/src/acpi/rsdp.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Infinity-OS/infinity/HEAD/arch/x86_64/src/acpi/rsdp.rs -------------------------------------------------------------------------------- /arch/x86_64/src/acpi/rsdt.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Infinity-OS/infinity/HEAD/arch/x86_64/src/acpi/rsdt.rs -------------------------------------------------------------------------------- /arch/x86_64/src/acpi/sdt.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Infinity-OS/infinity/HEAD/arch/x86_64/src/acpi/sdt.rs -------------------------------------------------------------------------------- /arch/x86_64/src/acpi/xsdt.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Infinity-OS/infinity/HEAD/arch/x86_64/src/acpi/xsdt.rs -------------------------------------------------------------------------------- /arch/x86_64/src/consts.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Infinity-OS/infinity/HEAD/arch/x86_64/src/consts.rs -------------------------------------------------------------------------------- /arch/x86_64/src/context.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Infinity-OS/infinity/HEAD/arch/x86_64/src/context.rs -------------------------------------------------------------------------------- /arch/x86_64/src/device/local_apic.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Infinity-OS/infinity/HEAD/arch/x86_64/src/device/local_apic.rs -------------------------------------------------------------------------------- /arch/x86_64/src/device/mod.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Infinity-OS/infinity/HEAD/arch/x86_64/src/device/mod.rs -------------------------------------------------------------------------------- /arch/x86_64/src/device/rtc.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Infinity-OS/infinity/HEAD/arch/x86_64/src/device/rtc.rs -------------------------------------------------------------------------------- /arch/x86_64/src/device/serial.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Infinity-OS/infinity/HEAD/arch/x86_64/src/device/serial.rs -------------------------------------------------------------------------------- /arch/x86_64/src/interrupts/exceptions.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Infinity-OS/infinity/HEAD/arch/x86_64/src/interrupts/exceptions.rs -------------------------------------------------------------------------------- /arch/x86_64/src/interrupts/gdt.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Infinity-OS/infinity/HEAD/arch/x86_64/src/interrupts/gdt.rs -------------------------------------------------------------------------------- /arch/x86_64/src/interrupts/ipi.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Infinity-OS/infinity/HEAD/arch/x86_64/src/interrupts/ipi.rs -------------------------------------------------------------------------------- /arch/x86_64/src/interrupts/irq.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Infinity-OS/infinity/HEAD/arch/x86_64/src/interrupts/irq.rs -------------------------------------------------------------------------------- /arch/x86_64/src/interrupts/mod.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Infinity-OS/infinity/HEAD/arch/x86_64/src/interrupts/mod.rs -------------------------------------------------------------------------------- /arch/x86_64/src/kernel_messaging.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Infinity-OS/infinity/HEAD/arch/x86_64/src/kernel_messaging.rs -------------------------------------------------------------------------------- /arch/x86_64/src/lib.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Infinity-OS/infinity/HEAD/arch/x86_64/src/lib.rs -------------------------------------------------------------------------------- /arch/x86_64/src/memory/area_frame_allocator.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Infinity-OS/infinity/HEAD/arch/x86_64/src/memory/area_frame_allocator.rs -------------------------------------------------------------------------------- /arch/x86_64/src/memory/mod.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Infinity-OS/infinity/HEAD/arch/x86_64/src/memory/mod.rs -------------------------------------------------------------------------------- /arch/x86_64/src/memory/paging/entry.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Infinity-OS/infinity/HEAD/arch/x86_64/src/memory/paging/entry.rs -------------------------------------------------------------------------------- /arch/x86_64/src/memory/paging/mapper.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Infinity-OS/infinity/HEAD/arch/x86_64/src/memory/paging/mapper.rs -------------------------------------------------------------------------------- /arch/x86_64/src/memory/paging/mod.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Infinity-OS/infinity/HEAD/arch/x86_64/src/memory/paging/mod.rs -------------------------------------------------------------------------------- /arch/x86_64/src/memory/paging/table.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Infinity-OS/infinity/HEAD/arch/x86_64/src/memory/paging/table.rs -------------------------------------------------------------------------------- /arch/x86_64/src/memory/paging/temporary_page.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Infinity-OS/infinity/HEAD/arch/x86_64/src/memory/paging/temporary_page.rs -------------------------------------------------------------------------------- /arch/x86_64/src/memory/stack_allocator.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Infinity-OS/infinity/HEAD/arch/x86_64/src/memory/stack_allocator.rs -------------------------------------------------------------------------------- /arch/x86_64/src/start.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Infinity-OS/infinity/HEAD/arch/x86_64/src/start.rs -------------------------------------------------------------------------------- /arch/x86_64/src/time.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Infinity-OS/infinity/HEAD/arch/x86_64/src/time.rs -------------------------------------------------------------------------------- /arch/x86_64/src/vga_buffer.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Infinity-OS/infinity/HEAD/arch/x86_64/src/vga_buffer.rs -------------------------------------------------------------------------------- /configure.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Infinity-OS/infinity/HEAD/configure.sh -------------------------------------------------------------------------------- /initfs/keep: -------------------------------------------------------------------------------- 1 | Just a file to keep the folder on Git. 2 | -------------------------------------------------------------------------------- /libs/.gitignore: -------------------------------------------------------------------------------- 1 | # Generated by Cargo 2 | /target/ -------------------------------------------------------------------------------- /libs/bump_allocator/Cargo.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Infinity-OS/infinity/HEAD/libs/bump_allocator/Cargo.toml -------------------------------------------------------------------------------- /libs/bump_allocator/src/lib.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Infinity-OS/infinity/HEAD/libs/bump_allocator/src/lib.rs -------------------------------------------------------------------------------- /libs/hole_list_allocator/Cargo.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Infinity-OS/infinity/HEAD/libs/hole_list_allocator/Cargo.toml -------------------------------------------------------------------------------- /libs/hole_list_allocator/src/lib.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Infinity-OS/infinity/HEAD/libs/hole_list_allocator/src/lib.rs -------------------------------------------------------------------------------- /libs/syscall/Cargo.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Infinity-OS/infinity/HEAD/libs/syscall/Cargo.toml -------------------------------------------------------------------------------- /libs/syscall/src/data.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Infinity-OS/infinity/HEAD/libs/syscall/src/data.rs -------------------------------------------------------------------------------- /libs/syscall/src/error.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Infinity-OS/infinity/HEAD/libs/syscall/src/error.rs -------------------------------------------------------------------------------- /libs/syscall/src/flag.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Infinity-OS/infinity/HEAD/libs/syscall/src/flag.rs -------------------------------------------------------------------------------- /libs/syscall/src/lib.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Infinity-OS/infinity/HEAD/libs/syscall/src/lib.rs -------------------------------------------------------------------------------- /libs/syscall/src/number.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Infinity-OS/infinity/HEAD/libs/syscall/src/number.rs -------------------------------------------------------------------------------- /libs/syscall/src/scheme.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Infinity-OS/infinity/HEAD/libs/syscall/src/scheme.rs -------------------------------------------------------------------------------- /logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Infinity-OS/infinity/HEAD/logo.png -------------------------------------------------------------------------------- /mk/config.mk: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Infinity-OS/infinity/HEAD/mk/config.mk -------------------------------------------------------------------------------- /mk/docker.mk: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Infinity-OS/infinity/HEAD/mk/docker.mk -------------------------------------------------------------------------------- /mk/initfs.mk: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Infinity-OS/infinity/HEAD/mk/initfs.mk -------------------------------------------------------------------------------- /programs/init/Cargo.lock: -------------------------------------------------------------------------------- 1 | [root] 2 | name = "init" 3 | version = "0.1.0" 4 | 5 | -------------------------------------------------------------------------------- /programs/init/Cargo.toml: -------------------------------------------------------------------------------- 1 | [package] 2 | name = "init" 3 | version = "0.1.0" 4 | -------------------------------------------------------------------------------- /programs/init/src/main.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Infinity-OS/infinity/HEAD/programs/init/src/main.rs -------------------------------------------------------------------------------- /src/common/int_like.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Infinity-OS/infinity/HEAD/src/common/int_like.rs -------------------------------------------------------------------------------- /src/common/mod.rs: -------------------------------------------------------------------------------- 1 | #[macro_use] 2 | pub mod int_like; 3 | -------------------------------------------------------------------------------- /src/context/context.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Infinity-OS/infinity/HEAD/src/context/context.rs -------------------------------------------------------------------------------- /src/context/file.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Infinity-OS/infinity/HEAD/src/context/file.rs -------------------------------------------------------------------------------- /src/context/list.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Infinity-OS/infinity/HEAD/src/context/list.rs -------------------------------------------------------------------------------- /src/context/memory.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Infinity-OS/infinity/HEAD/src/context/memory.rs -------------------------------------------------------------------------------- /src/context/mod.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Infinity-OS/infinity/HEAD/src/context/mod.rs -------------------------------------------------------------------------------- /src/context/switch.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Infinity-OS/infinity/HEAD/src/context/switch.rs -------------------------------------------------------------------------------- /src/elf.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Infinity-OS/infinity/HEAD/src/elf.rs -------------------------------------------------------------------------------- /src/lib.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Infinity-OS/infinity/HEAD/src/lib.rs -------------------------------------------------------------------------------- /src/scheme/inifs.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Infinity-OS/infinity/HEAD/src/scheme/inifs.rs -------------------------------------------------------------------------------- /src/scheme/mod.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Infinity-OS/infinity/HEAD/src/scheme/mod.rs -------------------------------------------------------------------------------- /src/syscall/fs.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Infinity-OS/infinity/HEAD/src/syscall/fs.rs -------------------------------------------------------------------------------- /src/syscall/mod.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Infinity-OS/infinity/HEAD/src/syscall/mod.rs -------------------------------------------------------------------------------- /src/syscall/process.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Infinity-OS/infinity/HEAD/src/syscall/process.rs -------------------------------------------------------------------------------- /utils/lld.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Infinity-OS/infinity/HEAD/utils/lld.sh -------------------------------------------------------------------------------- /utils/rustc.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Infinity-OS/infinity/HEAD/utils/rustc.sh -------------------------------------------------------------------------------- /utils/xargo.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Infinity-OS/infinity/HEAD/utils/xargo.sh -------------------------------------------------------------------------------- /x86_64-unknown-none.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Infinity-OS/infinity/HEAD/x86_64-unknown-none.json -------------------------------------------------------------------------------- /x86_64-unknown-pulsar.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Infinity-OS/infinity/HEAD/x86_64-unknown-pulsar.json --------------------------------------------------------------------------------