aboutsummaryrefslogtreecommitdiff
path: root/CHANGELOG.md
blob: 476a3f8f734ad57dcf5bcc6b8ed12eca9774b8c6 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
# v1.0

- The kernel can run on real hardware. I have tested this on Starfive Visionfive
  2 v1.3B.
- The kernel takes care of SMP more gracefully (by explicitely forbidding more
  than one hart running at the same time).
- The kernel has been stripped down from unneeded complexity.

# State of the project by the end of SUSE Hackweek 2024

As part of [SUSE Hack Week
24](https://hackweek.opensuse.org/24/projects/fizzbuzz-os) I started this
project with the scope in mind to at least have something running. This is what
I have achieved by the end of this week:

- The kernel knows how to parse the Device Tree blob to obtain the memory
  location of the `initrd` blob.
- The kernel can parse the `initrd` (as referenced by the Device Tree blob) to
  reference all the user-space binaries.
- The kernel can parse the ELF binary for each user-space binary in order to get
  their binary entry.
- The kernel can react to the OpenSBI timer and count seconds on QEMU.
- The kernel can schedule each binary entry depending on the requirement of the
  whole system.

Hence, by the end of the week I already got a kernel that could start on QEMU
and show the whole `fizz`, `buzz`, `fizzbuzz` strings as given by user-space
processes. Even with rough edges still to be polished, my initial goals have
been met.