Commit Graph

133 Commits

Author SHA1 Message Date
9473889c6b Add Ext2 fs and basic bio layer 2023-12-28 04:54:48 +08:00
1616f2d32c Change block device trait 2023-12-28 04:54:48 +08:00
7b7e3c4b7a Rename the path of dependent crates 2023-12-26 11:49:24 +08:00
99f6765ced Rename jinux to asterinas in documentation and code 2023-12-26 11:49:24 +08:00
93781df27b Rename crates from jinux-* to aster-* 2023-12-26 11:49:24 +08:00
14ee9c2dc7 Fix missing kernel/initramfs memory regions 2023-12-26 06:32:01 +08:00
7278589aa2 Prettify bootloader code 2023-12-26 06:32:01 +08:00
af81741f23 Workaround for QEMU BUG that causes CI to hang 2023-12-14 11:28:24 +08:00
f1a7c767d2 Fix IoMem read and write bugs 2023-12-14 11:26:37 +08:00
715072b9f3 Implement a high precision gettime based on tsc 2023-12-06 19:31:19 +08:00
ba08895fc3 Fix the frequecy bug caused by IOAPIC 2023-12-06 19:31:19 +08:00
5aa3124e66 Make the upgrade method of read-write locks atomic 2023-12-06 10:40:11 +08:00
07dd0fbd38 Fix the misuse of spin::mutex 2023-12-06 10:22:03 +08:00
0fd7a473da Support streaming dma mappings 2023-11-29 13:39:54 +08:00
ceaba95fa0 Support coherent dma mappings 2023-11-29 13:39:54 +08:00
576578baf4 Improve aquisition logic 2023-11-24 15:43:57 +08:00
3790efb0d9 Fix unexpected unlock of mutexes 2023-11-24 15:43:57 +08:00
9e09196043 Timeout list should be accessed with IRQ disabled 2023-11-23 16:36:53 +08:00
232888982c Rename TrapInformation 2023-11-23 09:15:37 +08:00
edd808bd3d Refactor drivers 2023-11-23 09:15:37 +08:00
d809eca81d Rename print in framework to early_print 2023-11-23 09:15:37 +08:00
34e66a51d9 Reimplement print in std 2023-11-23 09:15:37 +08:00
e9544d489f Rename some confusing booleans 2023-11-23 07:10:18 +08:00
5cc9f250dd Implement a guard page for the kernel stack 2023-11-13 08:43:14 +08:00
c776954dfc Print backtrace when there is uncaught panic 2023-11-09 13:22:34 +08:00
ec3daca5fd Add ktest whitelist support 2023-11-09 13:22:34 +08:00
8eb1e06c2a Implement should_panic expectation and refactor ktest 2023-11-09 13:22:34 +08:00
45a6b2f46c Implement should_panic for ktest and clear the codebase 2023-11-09 13:22:34 +08:00
bb0560530f Enable usermode unit test for specific crates 2023-11-09 13:22:34 +08:00
b8818bb740 Add ktest framework 2023-11-09 13:22:34 +08:00
d7cc52c615 Update the version of pod 2023-11-09 03:38:37 +08:00
0e7f279bd6 Enable CI for MicroVM 2023-11-08 13:50:10 +08:00
4c72f5b7fa Add VmSegment and rewrite the vm allocation code with VmAllocOptions 2023-11-08 06:31:21 +08:00
b0b25f9282 Add VmReader and VmWriter 2023-11-08 06:31:21 +08:00
cf1d4faab4 Fix a minor bug that lead to a crash in release mode 2023-11-06 08:55:48 +08:00
0c7df54513 Impl virtio-mmio transport 2023-10-30 09:39:23 +08:00
4d927fed19 Impl virtio-mmio bus 2023-10-30 09:39:23 +08:00
0a6aeb4a36 Enable IOApic 2023-10-30 09:39:23 +08:00
eeac55e2e5 Refactor console 2023-10-30 09:39:23 +08:00
0a17d90532 Polish namings and interfaces of linux boot 2023-10-26 12:05:12 +08:00
a532340c65 Implement linux x86 32bit legacy boot protocol 2023-10-26 12:05:12 +08:00
9d0e0bbc70 Fix the rust setup machine state 2023-10-26 12:05:12 +08:00
052fc795a5 Successfully entered setup rust entrypoint 2023-10-26 12:05:12 +08:00
922fbd0c91 Minor fix to get entrypoint in the right place 2023-10-26 12:05:12 +08:00
aeea333945 Split kernel mode and user mode page table 2023-10-16 17:52:15 -05:00
fb884cd038 Fallback to regular paging for the boot pagetable 2023-10-13 02:24:31 -05:00
503252e8e8 Fix multiboot entry in UEFI boot 2023-10-12 14:38:36 -05:00
cdc2b960dc Switch to EFI boot and use official release for QEMU and GDB 2023-10-12 14:38:36 -05:00
aea8f38dc1 Implement boot setup and loader utils 2023-10-12 14:38:36 -05:00
d0c84e0b6f Add protected mode sub-crate for Linux boot setup 2023-10-12 14:38:36 -05:00