Skip to content

History

Revisions

  • docs: clarify scaffolded scheduler exercises Selecting a scaffolded scheduling policy (Priority, CFS, EDF, RM, AEDF) intentionally causes the build to fail at the /*...*/ exercise placeholders until the missing implementation is completed. The previous wording claimed those policies compile, boot, and fall back to Round-Robin at run time. That is wrong: /*...*/ is a comment, so 'time_t min = /*...*/;' reaches the compiler as 'time_t min = ;' and the build stops there. Verified by configuring and building each of the five policies in turn. Also clarifies that the '#else return __scheduler_rr(...)' arm is not a runtime fallback but exists to keep unselected policy functions well-formed, and relabels the per-policy markers from 'teaching scaffold' to 'exercise scaffold' to match the project convention that /* ... */ marks a student exercise. Refs mentos-team/MentOS#214

    @Galfurian Galfurian committed Aug 19, 2026
    cedbfa3
  • docs: comprehensively update MentOS wiki

    @Galfurian Galfurian committed Aug 19, 2026
    d933b03
  • docs(testing): simplify unit testing guide - remove unnecessary complexity - Remove three-tier testing strategy (was overcomplicated) - Simplify CMake section: tests are auto-discovered, no manual editing needed - Remove misleading CMakeLists.txt editing instructions - Keep golden rule: 'never permanently change OS state' - Streamline to: what tests are, how to write them, do's/don'ts, examples, utilities - Guide is now focused on practical usage, not architecture details

    @Galfurian Galfurian committed Feb 9, 2026
    38f7d71
  • docs(testing): create comprehensive unit testing guide - Consolidate 3 fragmented testing documents into single Unit-Testing.md - Remove Safe-Kernel-Testing-Overview.md (AI summary) - Remove Testing-Guide.md (now merged) - Remove Unit-Testing-Architecture.md (now merged) - New Unit-Testing.md covers: * What unit testing is and why * Three-tier testing strategy (read-only, copy-based, boundary) * How to write tests (step-by-step guide) * CMake configuration for enabling/disabling tests * Common patterns and best practices * Complete example tests * Troubleshooting guide * Available testing utilities - Updated Home.md to link Unit-Testing in Advanced Topics - Updated quick reference to include testing - Golden rule: 'Leave the kitchen as you found it' - never modify kernel state

    @Galfurian Galfurian committed Feb 9, 2026
    3db3917
  • fix(docs): correct ARM toolchain requirement to i686-elf-gcc VERIFIED against: - tools/toolchain-i686-elf.cmake: explicitly sets TRIPLE=i686-elf - osdev.org GCC Cross-Compiler guide: i686-elf is bare-metal standard - Previous docs incorrectly recommended i686-linux-gnu (Linux-hosted, wrong for OS dev) Changes: - ARM section: specify i686-elf-gcc requirement (not i686-linux-gnu) - Add three practical options: distro repos, pre-built, or source build - Link to osdev.org, kernel.org, and newos.org for toolchains - Clarify why i686-elf is required (toolchain file dependency)

    @Galfurian Galfurian committed Feb 3, 2026
    2d6333b
  • fix(wiki): correct cross-compilation documentation to use i686-elf toolchain - Fix Getting-Started.md ARM section: recommend i686-elf-gcc (bare-metal), not i686-linux-gnu - Fix Building-MentOS.md: use toolchain file for all cross-compilation, not manual compiler flags - Add crosstool-ng instructions for building i686-elf-gcc on ARM systems - Clarify that toolchain file is required for macOS and ARM builds - Consistent approach: all non-x86 builds use CMAKE_TOOLCHAIN_FILE=../tools/toolchain-i686-elf.cmake

    @Galfurian Galfurian committed Feb 3, 2026
    b6ca449
  • documentation(userspace): Simplify docs

    @Galfurian Galfurian committed Jan 29, 2026
    6c9f762
  • documentation(userspace): Simplify docs

    @Galfurian Galfurian committed Jan 29, 2026
    1f83095
  • fix(wiki): correct source code paths from mentos/ to kernel/ - Changed all mentos/ references to kernel/ (actual folder name) - Fixed 8 incorrect path references in System-Calls.md - Paths: inc/system/syscall.h, src/system/syscall.c, src/process/, src/fs/, src/ipc/

    @Galfurian Galfurian committed Jan 29, 2026
    8f88066
  • documentation(process): fix wiki link format

    @Galfurian Galfurian committed Jan 29, 2026
    180f757
  • fix(wiki): add ../ prefix to all source code links for proper GitHub navigation - All blob/main/ links now use ../blob/main/ to escape wiki folder context - Fixes URLs from wiki/blob/main/... to blob/main/... (correct GitHub paths) - Updated 15 source code links across C-Library.md and System-Calls.md

    @Galfurian Galfurian committed Jan 29, 2026
    aed4705
  • Updated System Calls (markdown)

    @Galfurian Galfurian committed Jan 29, 2026
    4b9a53e
  • Updated System Calls (markdown)

    @Galfurian Galfurian committed Jan 29, 2026
    8b41a68
  • documentation(wiki): fix all wiki link formats to use [[Page]] syntax - Convert [Page](Page.md) to [[Page]] format across all wiki files - Fix broken references: Filesystem.md → File-Systems.md, Programs.md → Userspace-Programs.md - Remove broken reference to non-existent Exercise-IPC-Messaging.md - Updated files: C-Library.md, IPC.md, Kernel.md, System-Calls.md, Userspace-Programs.md

    @Galfurian Galfurian committed Jan 29, 2026
    485b1d7
  • documentation(wiki): fix source code links for GitHub rendering Replace relative paths (../path/to/file) with blob/main/path/to/file format to ensure links work correctly when wiki is rendered on GitHub. Fixed links in: - System-Calls.md: All source file references - C-Library.md: userspace/bin/CMakeLists.txt reference

    @Galfurian Galfurian committed Jan 29, 2026
    e080de3
  • documentation(process): fix wiki link format

    @Galfurian Galfurian committed Jan 29, 2026
    8ee015a
  • Update

    @Galfurian Galfurian committed Jan 29, 2026
    9d16295
  • documentation(process): add process management guide

    @Galfurian Galfurian committed Jan 29, 2026
    5cb715c
  • documentation(process): add process management guide

    @Galfurian Galfurian committed Jan 29, 2026
    650c6c3
  • documentation(running): align run steps with build targets

    @Galfurian Galfurian committed Jan 29, 2026
    7a801ac
  • documentation(features): align feature matrix with code

    @Galfurian Galfurian committed Jan 29, 2026
    771cef7
  • documentation(userspace-programs): align wiki with userspace tools

    @Galfurian Galfurian committed Jan 29, 2026
    5fb6c92
  • documentation(ipc): fix semctl usage

    @Galfurian Galfurian committed Jan 29, 2026
    ab0cfa0
  • documentation(filesystems): point to read/write impl

    @Galfurian Galfurian committed Jan 29, 2026
    29fd109
  • documentation(scheduling): align with timer and config

    @Galfurian Galfurian committed Jan 29, 2026
    2855f43
  • documentation(syscalls): fix calling convention

    @Galfurian Galfurian committed Jan 29, 2026
    5b0bd10
  • documentation(libc): correct API coverage

    @Galfurian Galfurian committed Jan 29, 2026
    c1baa68
  • documentation(contributing): fix build and test snippets

    @Galfurian Galfurian committed Jan 29, 2026
    688b83f
  • documentation(debugging): align exercises with build flow

    @Galfurian Galfurian committed Jan 29, 2026
    cf9fb7f
  • documentation(dev-guide): align APIs and build steps

    @Galfurian Galfurian committed Jan 29, 2026
    97a251c