snark13
|
057dd615ba
|
libc: квирки DSS — возврат WRITE и лимит манипуляторов; тесты fdmax/fbench
- ESTEX WRITE ($14) на успехе возвращает DE=0, а НЕ счётчик записанного
(вопреки докам; solid-c в своём fflush тоже отключил сравнение по
счётчику) — write() теперь судит по CF/A: CF=0&A=0 → n,
CF=0&A!=0 → ENOSPC/-1
- DSS выдаёт 8 манипуляторов (fd 2..9; fd 1 держит шелл под запущенный
exe), а 9-й OPEN не возвращает 06h — ВЕШАЕТ систему; предохранитель
_fd_guard: счётчик в open()/close(), отказ EMFILE без захода в DSS
- tests/fdmax — эмпирика лимита (8 хендлов, затем EMFILE=6);
tests/fbench — бенчмарк буферизации (floor 512-байтными read,
оценка небуферизованного по 1-байтным, fgetc/fgets/fputc)
- filetest расширен: raw-probe возврата write, сценарий r+
(чтение-запись-чтение с инвалидацией буфера), ungetc, fprintf
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
|
2026-07-06 16:09:29 +03:00 |
|