Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Tags: RavSS/HAVK

Tags

V00-13-00

Toggle V00-13-00's commit message
File headers updated and better context switching.

Overall Changes
---------------
- The way tasks yield upon an IPC system call has changed so now it
  is more performant. IPC is finally at a stage where performance is
  not an immediate issue.
- Tasks can retrieve the first message present in their message
  boxes. This removes constant checking for messages; thus, reducing
  the amount of system calls in total, while simplifying the code of
  tasks which act as services.
- Manual yielding is now less present in the various operating
  system programs.
- The PS/2 driver task and the terminal task have been re-enabled
  for the sake of showcasing the current stage of graphics and input.
- Likely resolved a file read deadlock when a file's byte size
  is a multiple of 256.
- Makefile variable bug fix for `make stats`.

Copyright Notice
----------------
- The file headers have had their copyright dates updated to match
  the current year (2021). Newlines have also been added to all
  text files.

V00-12-00

Toggle V00-12-00's commit message
Expanded system calls and added primative IPC.

Overall Changes
---------------
- Tasks can now identify other task's identities or self-identify
  themselves. This is further used for IPC purposes.
- The in-kernel threading support has been completely removed. In an
  attempt to be more esoteric, I am switching from a 1:1 model to a
  N:1 model instead, which means there will only be a concept of
  threads in user space and not inside the kernel itself.
- Tasks can load ELF files from the FAT16 partition; however, this is
  completely temporary and will only be limited to the initialisation
  task in the future.
- A task can increase its heap space by a single page (4 KiB) upon a
  specific system call. Currently, it's kept to only a single page to
  limit fragmentation, and consecutive frames are harder to come by.
- Tasks can send messages to other tasks via a vague sender and
  receiver setup with a notion of ports in between them. This is a
  multi-copy method of IPC and it uses SIMD registers (SSE "XMM"
  registers) to perform transfers. The buffer length is controlled
  inside the kernel and it is currently static.
- Symbols registered as functions in the assembly files and the
  assembly files themselves have been renamed to avoid preprocessing,
  as I see no use for it.
- A number of improvements to the various Makefiles in regard to
  organisation, operating system files, and the drive image.
- Updated the supplied OVMF firmware and GNU-EFI object.

Git Notice
----------
- Commits will no longer be made for version changes. It will be
  solely done through tags now.
- These types of bulk commits may happen less now, as the focus is
  beginning to be solely on the operating system programs
  themselves, along with system call functionality.

V00-11-00

Toggle V00-11-00's commit message
V00-11-00

Overall Changes
---------------
- The minor version has been increased.

V00-10-00

Toggle V00-10-00's commit message
V00-10-00

Overall Changes
---------------
- The minor version has been increased.

V00-09-00

Toggle V00-09-00's commit message
Version change.

V00-08-00

Toggle V00-08-00's commit message

V00-07-00

Toggle V00-07-00's commit message
The last bulk update.