diff options
| author | salmonik <salmonik@tuta.io> | 2026-08-01 02:49:37 +0200 |
|---|---|---|
| committer | salmonik <salmonik@tuta.io> | 2026-08-01 02:49:37 +0200 |
| commit | 44aa34fd5bb6e98056e3065c53fc39dfa50f841c (patch) | |
| tree | c7016d8816bd37c3a86048cb401c10446b8f35c4 | |
| parent | fat: mount every FAT32 volume under /disk/<UID>/, fix multi-entry LFN (diff) | |
| download | rs-dos-44aa34fd5bb6e98056e3065c53fc39dfa50f841c.tar.gz rs-dos-44aa34fd5bb6e98056e3065c53fc39dfa50f841c.zip | |
CONTEXT.md: record pending decisions (klog ring, disk-recognition scope)
Diffstat (limited to '')
| -rw-r--r-- | CONTEXT.md | 16 |
1 files changed, 16 insertions, 0 deletions
| @@ -246,6 +246,22 @@ Single Rust crate (`x86_64-unknown-uefi` target). Module breakdown: | |||
| 246 | - **ramfs only for `/`**: the root filesystem is still the ramfs (lost on | 246 | - **ramfs only for `/`**: the root filesystem is still the ramfs (lost on |
| 247 | reboot); persistent files live under `/disk` (AHCI/FAT32). | 247 | reboot); persistent files live under `/disk` (AHCI/FAT32). |
| 248 | 248 | ||
| 249 | ## Pending decisions (agreed, not yet implemented) | ||
| 250 | |||
| 251 | - **`klog` kernel log ring**: capture all boot/low-level messages by | ||
| 252 | appending to a RAM ring buffer inside `serial_println!` (one choke | ||
| 253 | point, every existing message captured for free). Ring: 128 lines × | ||
| 254 | 128 chars ≈ 16 KB, sequence numbers, wrap/drop accounting. | ||
| 255 | - **`klog` command** = thin alias for `cat /dev/klog` plus filters | ||
| 256 | `-h` (head) and `-t` (tail); no log levels, no timestamps, nothing | ||
| 257 | fancier. `/dev/klog` is a char device so `klog > /disk/…/boot.log` | ||
| 258 | persists a boot log via the existing redirection. | ||
| 259 | - **Disk recognition scope — keep simple for now**: no pre-EBS UEFI | ||
| 260 | block-device census, no GPT/MBR partition parsing, no NVMe driver. | ||
| 261 | (Revisit later: Linux-style recognition = PCI scan → ahci/nvme → | ||
| 262 | partitions → superblock autodetect → by-label/by-uuid naming; our | ||
| 263 | `/disk/<LABEL>-<SERIAL>` already mirrors the by-label/by-uuid idea.) | ||
| 264 | |||
| 249 | ## Target audience | 265 | ## Target audience |
| 250 | 266 | ||
| 251 | Learning exercise and toy. Not a Linux replacement. Not POSIX-compatible. | 267 | Learning exercise and toy. Not a Linux replacement. Not POSIX-compatible. |
