SchOS/kernel
Repository files (latest commit first)
Filename Latest commit message Latest commit date
Nexoniarz 2c5a278d56 net: downloads at tens of megabits, not one
Measured against the host fetching the same 67 MB from Alpine's CDN at
11.5 MB/s, SchOS managed about 120 KB/s. Three causes:

- The receive window reopened when data entered the socket buffer,
  before the reader drained it; lwIP then refused segments and the
  sender waited on retransmission timers. It reopens on read now.
- The e1000 receive ring held 16 frames, so a full window arriving back
  to back lost everything past the sixteenth. 256 now.
- Without window scaling the window stops at 64 KB, one window per
  round trip. Scaling on, 256 KB window, 512 KB socket ring (a power of
  two, which the free-running indices need), copied in blocks.

Now 5.8 MB/s for the same file, and apk update in about two seconds.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01S1giNvrHTrPMPw7V6x1kQ4
2026-10-24 15:28:32 +02:00
..
acpi bug pass: whole console lines, a quiet SCI, an honest reserve warning 2026-10-23 16:03:33 +02:00
arch/x86_64 uefi, vm: 2 MB pages where the CPU has no 1 GB ones 2026-10-24 11:45:18 +02:00
core input, fb, vt, sysfs: the kernel calls Xorg makes 2026-10-24 12:06:04 +02:00
dev input, fb, vt, sysfs: the kernel calls Xorg makes 2026-10-24 12:06:04 +02:00
drivers net: downloads at tens of megabits, not one 2026-10-24 15:28:32 +02:00
fs kernel: chroot, #! scripts, rename and mmap as apk needs them 2026-10-24 15:28:32 +02:00
net net: downloads at tens of megabits, not one 2026-10-24 15:28:32 +02:00
proc kernel: chroot, #! scripts, rename and mmap as apk needs them 2026-10-24 15:28:32 +02:00
sys kernel: chroot, #! scripts, rename and mmap as apk needs them 2026-10-24 15:28:32 +02:00
kernel.ld kernel: load at 16 MB, clear of what firmware keeps low 2026-10-24 00:13:53 +02:00