|
|
f36fe615cc
|
Wrote wrappers for each available system call
Many calls aren't implemented, and simply return an error.
|
2023-11-09 21:17:08 -06:00 |
|
|
|
c43b23bed3
|
Added sigaction.h and sighandler.h to installed headers
|
2023-11-09 21:16:22 -06:00 |
|
|
|
e52948830e
|
Added enum for future kernel log levels
|
2023-11-08 14:16:15 -06:00 |
|
|
|
31f7eb34a6
|
Renamed some syscalls
|
2023-11-08 14:15:46 -06:00 |
|
|
|
c5ef8c53a7
|
Started separating important structs from kernel.c
|
2023-11-08 14:13:03 -06:00 |
|
|
|
108e04a8f0
|
Page fault handler now allocates new page tables
Rather than contantly checking if a page table exists before access, the fault handler will automatically allocate them as needed.
|
2023-11-07 12:44:23 -06:00 |
|
|
|
091830e508
|
Added constructor to x86 context
|
2023-11-07 12:37:33 -06:00 |
|
|
|
98528dbc4a
|
Created x86/mp.h
|
2023-11-07 12:36:59 -06:00 |
|
|
|
b9208aceba
|
Created types/sigaction.h
|
2023-11-07 12:34:31 -06:00 |
|
|
|
aa77b0e7a2
|
Created sighandler.h
|
2023-11-07 12:34:06 -06:00 |
|
|
|
d4ed72cc46
|
Removed leading underscore from syscallarg.h
|
2023-11-07 12:33:42 -06:00 |
|
|
|
8e64741a9e
|
Created types/syscallret.h
|
2023-11-07 12:33:24 -06:00 |
|
|
|
4b7cf4e04a
|
Removed leading underscore from syscallarg.h
|
2023-11-07 12:33:04 -06:00 |
|
|
|
58d50a5e9a
|
Removed leading underscore from physaddr.h
|
2023-11-07 12:32:42 -06:00 |
|
|
|
669ab6ba8a
|
Removed leading underscore from pid.h
|
2023-11-07 12:32:04 -06:00 |
|
|
|
185d3f6677
|
Added function to delete contents of AVL tree
|
2023-11-07 12:31:16 -06:00 |
|
|
|
9fb5b69745
|
Deleted OS-DESIGN.md
|
2023-11-07 12:30:24 -06:00 |
|
|
|
85020f2254
|
Removed leading underscore in oid.h
|
2023-11-07 12:30:13 -06:00 |
|
|
|
2dafa56d4b
|
Added document to describe design of OS
|
2023-10-23 18:48:07 -05:00 |
|
|
|
a5ce86147d
|
Created small static library to wrap system call ABI
|
2023-09-07 00:58:57 -05:00 |
|
|
|
112b4204a7
|
Removed old commented-out lines from heap.c
|
2023-09-07 00:57:12 -05:00 |
|
|
|
e258bfcc9f
|
Moved kernel base 4MiB lower
|
2023-09-07 00:56:40 -05:00 |
|
|
|
43440310f2
|
Added type definitions for process and object IDs
|
2023-09-07 00:55:45 -05:00 |
|
|
|
365272e360
|
Added null pointer check to avltree constructor
|
2023-09-07 00:54:28 -05:00 |
|
|
|
08db5fe1f7
|
Kernel heap now allocates all required pages at once
As opposed to allocating pages individually
|
2023-09-02 21:51:19 -05:00 |
|
|
|
29a528780b
|
Added syscalls to map to particular physical address
|
2023-09-02 21:50:35 -05:00 |
|
|
|
75b7e08e96
|
Kernel page allocator and heap use new algorithms
|
2023-08-31 14:37:38 -05:00 |
|
|
|
e49bd0ca9c
|
Removed old commented-out code in heap.c
|
2023-03-03 04:58:44 -06:00 |
|
|
|
5cf5edd589
|
Rewrote heap.c to use libmalloc
|
2023-03-03 04:55:31 -06:00 |
|
|
|
14415fae9f
|
set_pte_type now correctly sets flags
Previously it erroneously set all flags regardless to `flags` argument
|
2023-03-03 04:54:54 -06:00 |
|
|
|
a4e69e9e36
|
Kernel marks its own text segment as read-only
|
2023-03-03 04:53:25 -06:00 |
|
|
|
035960f4d3
|
Added new linker symbol pointing to end of read-only data
|
2023-03-03 04:52:58 -06:00 |
|
|
|
f66810d6ad
|
mmgr.c compatibility with changes to libmalloc
|
2023-03-03 04:52:26 -06:00 |
|
|
|
f8cfca588e
|
Fixed inline assembly constraints in msr.c
|
2023-03-03 04:51:20 -06:00 |
|
|
|
60775ee007
|
x86 putc() now copies chars to COM1
|
2023-01-10 05:37:14 -06:00 |
|
|
|
6af84b247f
|
Page allocation uses new external library, libmalloc
|
2023-01-09 01:56:09 -06:00 |
|
|
|
1be6de1a26
|
Removed outdated instructions in README
|
2023-01-08 21:31:23 -06:00 |
|
|
|
c2d8f79e61
|
Fixed spelling error in 64-bit llog2() code
|
2023-01-07 23:21:36 -06:00 |
|
|
|
204b345942
|
Fixed mmgr.c
|
2022-12-30 17:14:37 -06:00 |
|
|
|
c069866bc7
|
Buncha changes and fixes
|
2022-12-30 17:11:42 -06:00 |
|
|
|
166841da51
|
Added usermode interrupt handling
|
2022-12-21 11:37:13 -06:00 |
|
|
|
590290f92b
|
Fixes and improvements in mmgr.c
Bug fixes in page allocator
Significant performance improvements
|
2022-11-20 16:32:25 -06:00 |
|
|
|
ccc35bc4c2
|
Deleted now-unused struct page_stack_t
|
2022-08-24 06:36:30 -05:00 |
|
|
|
e621624ef0
|
Changed avl_get() to use loop instead of recursion
|
2022-08-24 06:35:58 -05:00 |
|
|
|
fc1ef8abf3
|
Started writing README
|
2022-08-24 06:24:27 -05:00 |
|
|
|
8b1d7cb085
|
Kernel initializes a stack for new processes
|
2022-08-23 13:13:46 -05:00 |
|
|
|
bacedbea86
|
Rewrote physical memory allocator
The physical memory allocator now uses a buddy allocator instead of a stack.
Also moved some of the platform-independent context code to kernel.c.
|
2022-08-23 13:00:26 -05:00 |
|
|
|
54e2beefc1
|
Fixed warning in syscall.c
Cast NULL to 'unsigned long' to get rid of compiler warning.
|
2022-08-23 12:58:28 -05:00 |
|
|
|
2f7d39e679
|
Improved error handling in queue.c
|
2022-08-23 12:56:45 -05:00 |
|
|
|
9c37167c5e
|
Changed #include guards in physaddr.h, added now error codes
|
2022-08-23 12:55:39 -05:00 |
|