1
0
mirror of https://github.com/rcore-os/rCore.git synced 2024-11-23 00:16:17 +04:00
Commit Graph

150 Commits

Author SHA1 Message Date
Jiajie Chen
5b01f1b6ad Add missing functions for riscv 2020-06-12 09:10:25 +08:00
Jiajie Chen
12a29297ba Revert part of changes 2020-06-12 08:50:07 +08:00
function2-llx
98d3f83a12 fix ctrl+C 2020-05-31 19:07:54 +08:00
function2-llx
da5a7993b4 implement ctrl+C 2020-05-30 23:12:25 +08:00
function2-llx
5c7b637c97 shm 2020-05-16 07:04:42 +08:00
function2-llx
14f418f663 add wait_timeout for condvar, support timeout in futex wait 2020-05-13 19:56:50 +08:00
function2-llx
0c4d53f8d4 fix getdents64: set inode id and file type properly 2020-05-13 02:05:31 +08:00
function2-llx
d32027a645 run make 2020-04-27 03:08:23 +08:00
function2-llx
f98db379ff fix time 2020-04-26 14:20:09 +08:00
function2-llx
6e5e91a10a record time in metadata 2020-04-26 02:04:09 +08:00
function2-llx
c50d25dba9 fix fork 2020-04-19 23:40:37 +08:00
equation314
395b8b51c1 Updata rcore-fs version to 7e7c74a
Support non-zero return value for INode::io_control()
2020-04-14 20:24:27 +08:00
Runji Wang
139544f946 update Rust nightly to 2020-04-06 2020-04-06 17:19:05 +08:00
equation314
332830b7c4 Update rcore-fs version 2020-04-04 23:48:39 +08:00
Runji Wang
a395d5ea10 move virtio drivers to external crate 2020-03-24 22:27:21 +08:00
Jiajie Chen
36a1ed98c8 Bump rcore-fs revision for newer bitvec version 2020-03-24 18:21:33 +08:00
Runji Wang
f66c8d29cd uppercase arguments in Makefile 2020-02-01 13:25:55 +08:00
Runji Wang
3723dde083 update dependencies and CI badge 2020-01-29 20:09:04 +08:00
Runji Wang
9c2459f2f0 update Rust nightly to 2020-01-17. remove dependence of cargo-xbuild. 2020-01-29 11:57:14 +08:00
Runji Wang
af83913188 fix data racing on thread crate
The key point is that all methods on 'Processor' must be called with interrupt disabled. Otherwise if an interrupt happened inside a method, and then the thread is switched to other CPUs, it will touch other 'Processor'.
2019-11-30 18:11:26 +08:00
Runji Wang
7d1a37a7bf update Rust nightly to 2019-11-28
- disable hard float on mips to avoid LLVM error
- update smoltcp and fix drivers for API change
- update atomic.patch for libcore on riscv
- update rboot to fit new nightly
2019-11-30 15:48:09 +08:00
Runji Wang
b11e1b9be1 update user submodule and thread crate
fix some bugs in ucore programs found at OSTrain2019
2019-10-06 13:47:55 +08:00
equation314
6a7c72dbde aarch64: add mutex for KERNEL_MEMORY_SET, update bcm2837 2019-10-05 00:11:50 +08:00
equation314
90c2cd28f8 aarch64: use new cache & TLB maintenance operations 2019-10-04 23:25:42 +08:00
equation314
fee3e87110 aarch64: SMP works in qemu!!! 2019-09-28 23:39:09 +08:00
equation314
c6a4792f13 aarch64: update crate bcm2837 to use local timer 2019-09-28 01:30:29 +08:00
equation314
f76208542b aarch64: add map_kernel() function
* create fine-grained mappings in memory::init()
* put physical memory mappings to 0xFFFF_8000_0000_0000
* reuse ioremap() for framebuffer memory
2019-09-26 02:25:02 +08:00
equation314
48d7fb091a aarch64: no longer use bootloader, enable paging in entry.S 2019-09-24 20:12:28 +08:00
Runji Wang
a07822a446 x86_64: fix for real hardware. remove legacy drivers. 2019-09-13 23:00:00 +08:00
Jiajie Chen
0778f8f84c Bump rcore-console version, fixing mipsel compilation 2019-09-11 23:48:10 +08:00
Runji Wang
c2a80c54f9 x86_64: switch from legacy BIOS to UEFI. use rboot as new bootloader
- remove dependencies: rust-osdev/{bootloader, bootimage}
- remove kernel stack segment
- find a bug: IDT should be initialized after GDT
2019-09-04 10:37:31 +08:00
equation314
2237d2e5bd aarch64: pass bootinfo from bootloader to kernel 2019-08-30 18:22:28 +08:00
equation314
fa30f5f96b aarch64: fix bus address for mailbox property 2019-08-28 21:38:50 +08:00
equation314
d56a88947e aarch64: set ttbr0_el1 to null for kernel thread, fixed #56 2019-08-28 01:41:47 +08:00
Jiajie Chen
55cfce6c02 Show target in logging, and fix console deadlock 2019-08-23 10:44:24 +08:00
Runji Wang
c881bdc65d move Console to extern crate
also remove x86_64 VGA text mode support
2019-08-16 11:11:49 +08:00
Jiajie Chen
655c1f19c2 Move impl_inode default impl to rcore-fs crate 2019-08-07 18:55:35 +08:00
Jiajie Chen
92d878c144 Correctly report rdev of device nodes 2019-08-05 18:20:17 +08:00
WangRunji
78b322e842 update crates 2019-08-02 17:34:55 +08:00
WangRunji
52d72790bc introduce MountFS, mount RamFS at /tmp, mount DevFS at /dev 2019-08-02 17:24:27 +08:00
Jiajie Chen
08b59be1ae Use updated ACPI crate to parse ACPI in x86 2019-07-17 09:43:49 +08:00
Jiajie Chen
96357e63df Bump rust version to newer nightly and use acpi crate to print acpi info 2019-06-30 03:41:50 +08:00
Jiajie Chen
164e94a146 Separate SFSIMG and SFSQCOW2 and fix aarch64 qemu boot 2019-06-16 00:03:32 +08:00
gjz010
7b8252eb1b Basic loadable kernel module support, with a module template written in Rust.
Under aarch64 and x86_64, hello_rust can be built and loaded by `/busybox insmod hello_rust.ko`.
2019-06-07 20:59:51 +08:00
Jiajie Chen
0be1b1e56b Support 32bit MSI Addr 2019-05-24 16:45:28 +08:00
Jiajie Chen
e9c0bcadf7 Add graphic=console option and fix vga on x86_64 2019-05-24 15:20:39 +08:00
WangRunji
1a377ca7c3 x86_64: update bootloader. fix on real machine 2019-05-23 16:46:00 +08:00
equation314
97539dd760 aarch64: speed up page table map/unmap
1. update crate aarch64, call tlb_invalidate() instead of tlb_invalidate_all() in MapperFlush::flush().
2. reduce user stack size to 1MiB.
2019-05-21 00:46:12 +08:00
equation314
52251b2adb aarch64: refactor to linear mapping
TODO:
* `map`, `unmap` is significantly slower than other archs
* set segment permissions for kernel page table in bootloader
2019-05-20 21:51:53 +08:00
Jiajie Chen
ba8f9370ba Remove rv48 support, for it has no use and it's easy to add back when necessary 2019-05-12 01:46:55 +08:00