Skip to content

Releases: Mrgoblings/AnasOS

Release v0.4.0

08 Jan 07:46
349633d
Compare
Choose a tag to compare

Referenced issue

Resolves #26

Description

Adds an executor to collect all the async tasks.
The keyboard is moved to its own task.

Breaking change?

Is the change you are introducing going to affect already other existing resources?

  • No, this code change does not affect other project resources.
  • Yes, the code changes modify already existing project resources.

Additional context

Release v0.3.0

06 Jan 22:11
18a655a
Compare
Choose a tag to compare

Referenced issue

Resolves #5
Resolves #23
Resolves #25

Description

adds paging memory, allows dynamic memory.
Adds logo for the AnasOS

Breaking change?

Is the change you are introducing going to affect already other existing resources?

  • No, this code change does not affect other project resources.
  • Yes, the code changes modify already existing project resources.

Additional context

this took 1 month

Release v0.2.0

26 Nov 12:11
b84681d
Compare
Choose a tag to compare

Referenced issue

Resolves #19

Description

The following interrupts are handled:

  1. Breakpoint Exception:

    • Handler: breakpoint_handler
    • Interrupt Vector: Typically interrupt vector 3 (0x03)
  2. Double Fault Exception:

    • Handler: double_fault_handler
    • Interrupt Vector: Typically interrupt vector 8 (0x08)
  3. Timer Interrupt:

    • Handler: timer_interrupt_handler
    • Interrupt Vector: InterruptIndex::Timer which is PIC_1_OFFSET (32)
  4. Keyboard Interrupt:

    • Handler: keyboard_interrupt_handler
    • Interrupt Vector: InterruptIndex::Keyboard which is PIC_1_OFFSET + 1 (33)

Summary of Handled Interrupts:

  • Breakpoint Exception: breakpoint_handler
  • Double Fault Exception: double_fault_handler
  • Timer Interrupt: timer_interrupt_handler
  • Keyboard Interrupt: keyboard_interrupt_handler

Breaking change?

Is the change you are introducing going to affect already other existing resources?

  • No, this code change does not affect other project resources.
  • Yes, the code changes modify already existing project resources.

Additional context

The Global Descriptor Table (GDT) and Task State Segment (TSS) have been set up. The GDT is initialized with entries for the kernel code segment and the TSS, which includes a stack for handling double faults. The init function loads the GDT and TSS, ensuring that the CPU can correctly handle segmentation and task switching, particularly for critical exceptions like double faults.

Release v0.1.1

25 Nov 14:20
d523369
Compare
Choose a tag to compare

Referenced issue

References #18

Description

Adds documentation for the Bootloader, the Kernel, VGA, CI Github Actions and Multiboot

Breaking change?

Is the change you are introducing going to affect already other existing resources?

  • No, this code change does not affect other project resources.
  • Yes, the code changes modify already existing project resources.

Release v0.1.0

19 Nov 12:13
319f8d3
Compare
Choose a tag to compare

Referenced issue

Resolves #16
Resolves #15
Resolves #14
Resolves #9

References #5

Description

Implements Video Graphics Array (VGA) support and ensures correct booting into 64-bit operating mode.

Root Cause (if fixing a bug)

The bootloader failed to initiate a jump to 64-bit operating mode as expected, causing it to operate incorrectly in 64-bit mode.

Breaking change?

Is the change you are introducing going to affect already other existing resources?

  • No, this code change does not affect other project resources.
  • Yes, the code changes modify already existing project resources.

Additional context

The build process has been simplified to use cargo build instead of cargo rustc, enhancing ease of use. Rust’s core print macros are now fully operational.