You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: README.md
+16-3Lines changed: 16 additions & 3 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -12,16 +12,16 @@ The below depicts an early "schedule" or rather a path I will be taking in terms
12
12
-[x] Interrupts (IRQ + ISR)
13
13
-[x] VGA Display Driver
14
14
-[x] Keyboard Driver
15
-
-[ ] Interactive Shell
16
15
-[ ] Memory Management (Physical + Virtual)
16
+
-[ ] Interactive Shell
17
17
-[ ] File System
18
18
-[ ] Multitasking and Scheduling
19
19
-[ ] Networking
20
20
-[ ] Process Creation and Managements
21
21
-[ ] ELF Binary Support
22
22
-[ ] Graphical User Interfaces
23
23
24
-
#Progress Update
24
+
#Progress Update & Changelog
25
25
26
26
## Version .001a
27
27
@@ -34,4 +34,17 @@ Implemented the GDT, IDT (and IRQs and ISRs), reprogrammed the PIC's (Master and
34
34
Implemented the keyboard driver, but it won't be able to communicate with other components (such as an interactive shell) until memory management is implemented... perhaps, not even until processes and scheduling is implemented. That is the next thing I will be releasing. Currently, when you execute
35
35
the OS, it will have a blank screen, until you use the keyboard. When executing the keyboard, it will display what key has been pressed and what has been released... but only one at a time unfortunaately, no multi-key press events are supported.
36
36
37
-

37
+

38
+
39
+
## Version .001c
40
+
41
+
Began implementation of memory management, but not finished yet. Paging SHOULD be implemented very soon (and most code has been written), as well the heap is also mainly written using Pancakes' Bitmap Heap implementation, and paired with the identity paging technique, development of all other parts of the OS should proceed as expected. Today, I also managed to make use of the multiboot info struct that GRUB
42
+
gives us that was pushed on the stack in 'kernel_init', and now it can detect the amount of physical memory (RAM) that the machine (or virtual machine) has to offer. This is crucial to finished memory management.
43
+
44
+
As well, there has been a huge restructure in terms of the hierarchy and logical structure of the operating system. For example, the folders 'mm' and 'drivers' now also have their own respective folders in the
45
+
include folder, I.E 'drivers/vga.c' will have it's header in 'include/drivers/vga.h'. While in terms of usability, it is not too much of an update (yet, memory management will be in version .002), there has been
46
+
a significant amount of work and should be pushed to master.
47
+
48
+
Lastly, I also added a nice logger macro, `KLOG`, and panic macro, `KPANIC`.
0 commit comments