Skip to content

Releases: Mrgoblings/AnasOS

Release v1.1.0

23 May 09:20
8089efa

Choose a tag to compare

Referenced issue

Resolves GITHUB_ISSUE_NUMBER

Description

A clear and concise description of what changes you have made.

Root Cause (if fixing a bug)

What was the cause of the bug?

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

Add any other context about the pull request, if applicable.

Release v1.0.1

21 Feb 10:23
55ea6d9

Choose a tag to compare

Referenced issue

Resolves GITHUB_ISSUE_NUMBER

Description

A clear and concise description of what changes you have made.

Root Cause (if fixing a bug)

wrong build command

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

Add any other context about the pull request, if applicable.

Release v1.0.0

21 Feb 09:21
1f96e5e

Choose a tag to compare

Referenced issue

Resolves #1
Resolves #2
Resolves #22

Description

  • Adds Application lifecycle
  • Implements an 'AppList', which handles multiple applications and switches between them
  • Implements Terminal Application
  • Implements a simple Shell, that has completions with button TAB, history trough up/down arrow keys
  • Adds simple interface to add new Commands. All commands need to be manually added to the Shell to enable them for usage. In Rust there is no automatic way in no_std environment to include them in the shell.
  • Fixes issue from where the framebuffer deathlocked itself

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

All communication between processes is done trough mailbox communication scheme with static Arc allocated on the stack queues.

Release v0.6.0

08 Feb 21:04
939efb4

Choose a tag to compare

Referenced issue

Resolves #30

Description

Adds double frame buffering and calls buffer_swap on every timer interrupt.

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

add setup for applications

Release v0.5.0

31 Jan 13:59
3f50551

Choose a tag to compare

Referenced issue

Fixes #28

Description

Adds graphical environment via a framebuffer. The framebuffer is given trough multiboot2. The address is mapped and parsed to an array of Rgb888 pixels

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

  • Fixed heap double allocation
  • Corrected physical memory offset to 0

Release v0.4.0

08 Jan 07:46
349633d

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

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

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

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

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.