Skip to content

Commit dc941ae

Browse files
Merge branch 'main' into fix-rv64-heap-pagetable
2 parents e80484c + 32ff7bc commit dc941ae

1 file changed

Lines changed: 11 additions & 107 deletions

File tree

README.md

Lines changed: 11 additions & 107 deletions
Original file line numberDiff line numberDiff line change
@@ -3,84 +3,6 @@
33
Awkernel is a safe and realtime operating system.
44
It can execute async/await applications in kernel space safely.
55

6-
## Progress
7-
8-
- [x] Zero-copy communications
9-
- [x] Publish and subscribe
10-
- [x] Service
11-
- [x] Action
12-
- [x] Channels
13-
- [x] Bounded channel
14-
- [x] Unbounded channel
15-
- [x] Session-type based channel
16-
- [x] Memory space isolation
17-
- [x] Timer interrupts
18-
- [x] AArch64
19-
- [x] x86_64
20-
- [x] Interrupt Controllers
21-
- [x] AArch64
22-
- [x] Raspberry Pi 3
23-
- [x] GICv2
24-
- [x] GICv3
25-
- [x] x86_64
26-
- [x] xAPIC
27-
- [x] x2APIC
28-
- [ ] Frame buffer
29-
- [ ] AArch64 virt
30-
- [x] Raspberry Pi 3 and 4
31-
- [x] x86_64
32-
- [ ] Diagnostics
33-
- [ ] Measurement
34-
- [ ] Power Management
35-
- [ ] Shutdown
36-
- [ ] Reboot
37-
- [ ] Schedulers
38-
- [x] FIFO scheduler
39-
- [x] Round robin scheduler
40-
- [ ] Priority Based Round robin scheduler
41-
- [ ] EDF scheduler
42-
- [ ] DAG scheduler
43-
- [ ] Memory allocators
44-
- [x] O(1) memory allocator
45-
- [x] DMA pool
46-
- [ ] NUMA aware memory allocator
47-
- [ ] DVFS
48-
- [ ] AArch64
49-
- [ ] x86_64
50-
- [ ] PCIe
51-
- [ ] MSI
52-
- [x] x86_64 xAPIC and x2APIC
53-
- [ ] AArch64 GICv3
54-
- [ ] MSI-X
55-
- [x] x86_64 xAPIC and x2APIC
56-
- [ ] AArch64 GICv3
57-
- Network controllers
58-
- [x] Intel Gb Ethernet Controller (e1000 Series)
59-
- [ ] Intel 2.5Gb Ethernet Controller (I225/I226 series)
60-
- [x] Intel 10Gb Ethernet Controller (X520 Series)
61-
- [ ] Mellanox ConnectX-5 series
62-
- [x] genet for Raspberry Pi
63-
- Networking
64-
- [x] IPv4
65-
- [ ] IPv6
66-
- [x] UDP
67-
- [x] TCP
68-
- [ ] VLAN
69-
- [x] IP multicast
70-
- [ ] Offloading
71-
- [ ] TSO
72-
- [ ] IPv4 header checksum
73-
- [x] UDP checksum
74-
- [ ] TCP checksum
75-
- [ ] VLAN hardware tagging
76-
- [ ] XHCI
77-
- [ ] Block devices
78-
- [ ] NVMe
79-
- [ ] AHCI
80-
- [ ] File systems
81-
- [ ] FAT32
82-
- [ ] Journaling file system
83-
846
## Dependencies
857

868
### Compiler Tools
@@ -116,14 +38,14 @@ $ cargo binstall mdbook-mermaid
11638
- [awkernel_async_lib](./awkernel_async_lib/)
11739
- asynchronous library for no_std
11840
- [awkernel_async_lib_verified](./awkernel_async_lib_verified/)
119-
- verified library for awkernel_async_lib
120-
- pure Rust (no dependencies on external functions and no inline assembly)
41+
- verified library for awkernel_async_lib
42+
- pure Rust (no dependencies on external functions and no inline assembly)
12143
- [awkernel_futures_macro](./awkernel_futures_macro/)
12244
- [awkernel_drivers](./awkernel_drivers/)
12345
- [awkernel_aarch64](./awkernel_aarch64/)
12446
- [userland](./userland/)
12547
- applications
126-
- [awkernel_shell](./applications/awkernel_shell/)
48+
- [awkernel_shell](./applications/awkernel_shell/)
12749

12850
```mermaid
12951
graph TD;
@@ -292,9 +214,9 @@ $ make aarch64 BSP=raspi4 RELEASE=1
292214
### Boot
293215

294216
- Serial
295-
- port: GPIO 14 (Tx) and 15 (Rx)
296-
- 8N1: eight data bits, no parity, one stop bit
297-
- Speed: 115200
217+
- port: GPIO 14 (Tx) and 15 (Rx)
218+
- 8N1: eight data bits, no parity, one stop bit
219+
- Speed: 115200
298220

299221
---
300222

@@ -333,24 +255,6 @@ Debug build.
333255
$ make riscv64
334256
```
335257

336-
### Boot
337-
338-
```text
339-
$ make qemu-riscv64
340-
```
341-
342-
---
343-
344-
## RISC-V (32bit, Qemu)
345-
346-
### Compile
347-
348-
Release build (recommended).
349-
350-
```text
351-
$ make riscv32 RELEASE=1
352-
```
353-
354258
Debug build.
355259

356260
```text
@@ -360,7 +264,7 @@ $ make riscv32
360264
### Boot
361265

362266
```text
363-
$ make qemu-riscv32
267+
$ make qemu-riscv64
364268
```
365269

366270
---
@@ -369,16 +273,16 @@ $ make qemu-riscv32
369273

370274
### Compile
371275

372-
Debug build.
276+
Release build (recommended).
373277

374278
```text
375-
$ make riscv32
279+
$ make riscv32 RELEASE=1
376280
```
377281

378-
Release build.
282+
Debug build.
379283

380284
```text
381-
$ make riscv32 RELEASE=1
285+
$ make riscv32
382286
```
383287

384288
### Boot

0 commit comments

Comments
 (0)