Commit Graph

482 Commits

Author SHA1 Message Date
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
7d5295ab25 Refactor build system, boot and added Linux Boot facilities 2023-10-12 14:38:36 -05:00
6ff4601482 Fix: raw mode tty can echo and send signal 2023-10-12 14:35:39 -05:00
0ba24e90db Fix VIrtqueue bug 2023-10-12 00:08:36 -05:00
342bbdc0c4 Fix panic problem in tty driver 2023-10-10 16:52:40 -05:00
0d6f6f001c Refactor the implementation 2023-10-10 16:52:40 -05:00
50761a5cc5 Support wait_interruptible for Poller 2023-10-10 16:52:40 -05:00
d2aa06cbe2 Support wait_interruptible with SigQueueObserver 2023-10-10 16:52:40 -05:00
ec857e5205 Add timeout parameter for poller.wait 2023-10-10 16:52:40 -05:00
bd6a4d34ff Support timeout for WaitQueue 2023-10-10 16:52:40 -05:00
d28f0db419 Refactor tty driver using the work queue 2023-10-09 18:08:15 -05:00
7419f6b56b Add the bottom half mechanism of workqueue 2023-10-09 18:08:15 -05:00
e2b4302620 Add basic preemptive scheduling 2023-10-09 18:08:15 -05:00
baeaa9b4d3 Rename fork_vmar to fork_from 2023-09-28 11:53:53 +08:00
d9fcb486c0 Support microvm boot option 2023-09-28 11:52:33 +08:00
66a8b404c2 Support multiboot legacy protocol 2023-09-28 11:52:33 +08:00
939b429105 Fix virtio-pci device id error 2023-09-28 11:52:33 +08:00
e8a2779bca Polish trap handler code 2023-09-28 03:47:55 +08:00
f2b2c20967 Handle other CPU exceptions & use trait method 2023-09-28 03:47:55 +08:00
c90f757b86 Polish tdx-guest crate and Jinux VE handler 2023-09-28 03:47:55 +08:00
82518955d7 Abstract the virtual_exception_handler function. 2023-09-28 03:47:55 +08:00
4f0df44b29 Add tdx early init and ve handler functions 2023-09-28 03:47:55 +08:00
d7710207bb make tdcall and tdvmcall public and polish code 2023-09-28 03:47:55 +08:00
12fc074f56 Add tdx-guest crate 2023-09-28 03:47:55 +08:00
f540345bfd Use builder pattern to refactor the process module 2023-09-15 06:45:41 +08:00
9ca64c281e Fix clippy and compiler warings 2023-09-05 18:42:06 +08:00
20a90426a0 Update the project license 2023-09-05 16:32:02 +08:00
038c19b693 Refactor the pty implementation 2023-09-05 06:24:54 +08:00
40056f0692 Enable gvisor pty test 2023-09-05 06:24:54 +08:00
f802ff40c5 Implement pseudo terminal 2023-09-05 06:24:54 +08:00
a042da1847 Add pty test 2023-09-05 06:24:54 +08:00
25c4f0f2bc Fix incorrent exit status 2023-09-03 19:03:22 +08:00
dbc1e79e56 Clear vmar later to allow execve return error 2023-09-03 19:03:22 +08:00
4fef4d9b79 Poll iface when dropping socket 2023-09-03 18:20:30 +08:00
dbf5a423b1 Rename IrqAllocateHandle and move alloc functions 2023-09-03 13:36:05 +08:00
7d5e67e368 Refactor Virtio 2023-09-03 13:36:05 +08:00
df42397cea Remove jinux-pci and hide PCI ports 2023-09-03 13:36:05 +08:00
b3799ff9c7 Remove InFramePtr 2023-09-03 13:36:05 +08:00
d7bf193bf1 Change IoMem creation to unsafe 2023-09-03 13:36:05 +08:00
df81434088 Fix pci framework bugs 2023-09-03 13:36:05 +08:00
739eb30138 Implement Clone for IrqAllocateHandle 2023-09-03 13:36:05 +08:00
50c10653fb Add InputProp comments 2023-09-03 13:36:05 +08:00
6d101c5b6d Use Mutex and RwLock in jinux-frame for jinux-std 2023-09-02 17:06:39 +08:00
df7bd65e70 TLB flush when modifying page table 2023-08-22 19:57:20 +08:00
8aef80f978 Return correct error type if executing a file that is not executable 2023-08-17 18:09:28 +08:00
3f15bcaf5d Refactor unix stream socket implementation 2023-08-15 20:54:10 +08:00