WangRunji
|
46f0e85230
|
add `ucore-i386-pic.img` user programs. reorganize imgs.
|
6 years ago |
equation314
|
9e8124abbb
|
aarch64/mmu: mmu enabled
|
6 years ago |
WangRunji
|
2daf8c188d
|
Merge remote-tracking branch 'equation314/arch-aarch64' into dev
# Conflicts:
# .gitignore
# kernel/Cargo.lock
# kernel/Cargo.toml
# kernel/Makefile
# kernel/riscv32-blog_os.json
# kernel/src/consts.rs
# kernel/src/fs.rs
# kernel/src/lib.rs
# kernel/src/process/context.rs
# kernel/src/process/mod.rs
|
6 years ago |
WangRunji
|
56fcad245a
|
update kernel to 2018 edition
|
6 years ago |
WangRunji
|
c4935a1477
|
use `pc-keyboard` crate and enable keyboard again for x86
|
6 years ago |
WangRunji
|
e06f6b8bc5
|
update Cargo.toml & Cargo.lock
|
6 years ago |
koumingyang
|
ef213d60bb
|
mmu
|
6 years ago |
equation314
|
67b920cc16
|
aarch64: format paging.rs
|
6 years ago |
koumingyang
|
a0b948fb53
|
add basic alloc
|
6 years ago |
koumingyang
|
a13f39149b
|
add basic alloc
|
6 years ago |
WangRunji
|
91bd411a8f
|
fit for multi-thread sfs
- use global root inode
- remove global IDE on x86
|
6 years ago |
equation314
|
3e1d8c5827
|
aarch64: implement ARM generic timer, can work in qemu
|
6 years ago |
WangRunji
|
7229b49eb8
|
Use rust-lld for RV32. Remove riscv git submodule.
|
6 years ago |
equation314
|
addf49ffdb
|
aarch64: add crate bcm2837, implement GPIO
|
6 years ago |
WangRunji
|
438e290b6d
|
Fix PageTable::get_entry -> Option.
|
6 years ago |
equation314
|
1140d32aaa
|
add arch=aarch64 & board=raspi3 to Makefile
|
6 years ago |
WangRunji
|
f1771f8ef2
|
Finish x86 SMP startup. Support timer & IPI.
- Remove smp, apic mod.
Instead, use new bootloader & apic crate.
- Disable PIC & PIT.
Instead, use IOAPIC & APIC Timer.
|
6 years ago |
WangRunji
|
7a9b746c68
|
x86_64 back to normal.
* Fix kernel stack P4E
* User programs: disk0 -> disk1
* IDE IRQ appears ??
|
6 years ago |
WangRunji
|
0a9c294814
|
Fix x86_64 startup. TODO: higher half.
* Remove legacy boot, MP, ACPI.
* Disable SMP.
* Modify startup: boot -> arch::init -> kmain.
* Fix FrameAllocator on x86_64.
* Remove kernel remap.
* Alloc kernel heap at bss.
|
6 years ago |
WangRunji
|
0437e5cb17
|
Make it compile for bootimage toolchain
* Revert to nightly-2018-08-27 due to its bug on macOS
* Not build C code
|
6 years ago |
WangRunji
|
caeff9ad97
|
Update packages and fit for new Rust nightly
|
6 years ago |
WangRunji
|
cbe7affc5d
|
Merge riscv for QEMU & FPGA
|
6 years ago |
WangRunji
|
3d6fcb8d8c
|
Fix x86_64. Not elegant.
|
6 years ago |
WangRunji
|
10e3cea340
|
Only use Rust toolchain to build for rv32. Set arch to rv32i. x86_64 broken.
|
6 years ago |
WangRunji
|
b88648ff44
|
Fit for newest Rust nightly. x86_64 ok, riscv32 broken.
|
6 years ago |
WangRunji
|
c8a9eaf3e6
|
Split process mod to extern crate
|
7 years ago |
WangRunji
|
c768ec3e1e
|
Recover fs for RV32. Add user-riscv.img
Now load user programs from SFS data linked at kernel.
|
7 years ago |
WangRunji
|
4faa8a65ae
|
Move kernel to a new directory
|
7 years ago |