| Age | Commit message (Collapse) | Author | Files | Lines |
|
- Introduced GDT constants, including selectors, access rights, and flags.
- Created GDT entry structures for kernel and user segments, along with TSS descriptors.
- Implemented GDT initialization and loading functions.
- Developed boot sequence phases for CPU and memory initialization.
- Added boot information structure to manage memory regions and kernel details.
- Implemented TSS management, including core-specific TSS setup and stack allocation.
- Established state management for boot sequence phases and TSS.
|
|
|
|
additional user stack properties
|
|
structures
- Replaced path references with location in various modules for consistency.
- Updated attachment management to use location instead of path.
- Enhanced I/O operations to handle location parameters.
- Removed deprecated path utilities and integrated location utilities.
- Adjusted limits and parameters for kata and attachment management.
|
|
AFS with disk info retrieval
|
|
|
|
- Updated memory management in `memory.zig` to improve virtual buffer allocation and deallocation.
- Removed `sensei.zig` and refactored scheduling logic into new files: `queue.zig`, `sensei.zig`, and `waker.zig`.
- Introduced `attachment.zig` for managing attachments with new constants and limits.
- Created `pool.zig` for managing the Kata pool, including creation and dissolution of Katas.
- Enhanced `types.zig` to define new structures and enums for Katas and their states.
- Improved context switching in `shift.zig` to streamline Kata execution state management.
- Updated file references and imports across the codebase to reflect new structure.
|
|
- Renamed panic.zig to crimson.zig for clarity and restructured panic handling functions.
- Moved exception handling logic from exceptions.zig to a new exception.zig file.
- Updated imports across the codebase to reflect the new file structure.
- Introduced a new types.zig file to define Context and ExceptionFrame structures.
- Added formatting utilities in format.zig for better register and stack frame representation.
- Implemented screen rendering functions in render.zig for displaying error messages and system state during panic.
- Consolidated color definitions in colors.zig and added new constants for better readability.
- Removed obsolete exception handling code and integrated it into the new structure.
|
|
- Updated multiboot imports to use the new directory structure.
- Refactored font handling to utilize new PSF constants and terminal limits.
- Improved terminal implementation by integrating ASCII and color constants.
- Introduced a new GDT implementation with proper segment definitions.
- Added framebuffer and memory parsing for multiboot protocol.
- Enhanced boot sequence with structured message handling and error reporting.
- Established constants for terminal dimensions and boot limits.
- Created a dedicated TSS implementation for task management.
|
|
- Renamed I/O port functions for clarity: `write_port_byte` to `out_byte`, `read_port_byte` to `in_byte`, `write_port_word` to `out_word`, `read_port_word` to `in_word`, `write_port_long` to `out_long`, and `read_port_long` to `in_long`.
- Updated import paths for serial, ahci, ata, gpt, keyboard, terminal, and other drivers to reflect new directory structure.
- Replaced instances of `read_file_by_path` with `view_unit_at` in various files for consistency.
- Added new utility functions for AHCI FIS setup and defined types for AHCI and PCI.
- Introduced string copy utilities for handling strings from Kata pointers.
|
|
- Moved ISR and IRQ handler definitions to a new assembly file (isr.zig).
- Simplified IDT setup by using ISR and IRQ handlers from isr.zig.
- Replaced inline assembly for IRQ handlers with calls to new ISR functions.
- Introduced a new context switching mechanism in context.zig for Kata execution.
- Updated syscall entry handling in entry.zig to streamline context saving and restoring.
- Removed redundant context structures and functions from shift.zig.
- Improved clarity and organization of syscall and interrupt handling code.
|
|
modules
|
|
|
|
|
|
|
|
- Moved memory-related constants from `constants.zig` to `system/constants.zig` for better organization.
- Introduced `system/limits.zig` to centralize system-wide limits and constants.
- Updated various modules to use the new `system` module for accessing constants and limits.
- Added validation functions for user pointers and memory ranges in `system/limits.zig`.
- Enhanced file handling in `afs.zig` with a new function to get file size by path.
- Improved error handling and validation in various invocations and memory management functions.
- Marked the end of the kernel in the linker script for memory management.
|
|
management
|
|
|
|
|
|
- Added framebuffer initialization and retrieval functions in multiboot2.zig.
- Integrated framebuffer support into the boot sequence.
- Refactored keyboard driver to use a circular buffer for input and added blocking behavior for kata waiting on keyboard input.
- Enhanced kata management to support blocking and waking katas based on keyboard input.
- Introduced a new invocation for reading a character from the keyboard (getkeychar).
- Implemented a simple shell (ash) that reads user input and echoes it back.
- Updated syscall handling to include the new getkeychar invocation.
- Improved memory management for loading programs and handling user/kernel stacks.
- Added functionality to wake katas waiting for specific events, such as the dissolution of other katas.
|
|
debug code
|
|
|
|
for spawn, wait for kata handling; added required fields in kata
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|