Commit Graph

145 Commits

Author SHA1 Message Date
Siyao Zhao
9ca5b1aa16 Development:
1. Intergrated my salloc allocator
2. hal.c: Got rid of some gcc warnings, mainly int -> pointer.
3. entry.asm: 64-bit int immediate moved to a reg first then anded with another reg.
Refactoring:
1. Got rid of kernel_status_t, IN, OUT, OPT. secX does not have to be Windows does it?
2. Renamed _KERNEL_ABI to SAPI.
3. Refactored library functions / interfaces to as "static" and "_" as possible
4. Restructured "common" folder
2016-05-17 12:03:18 -07:00
secXsQuared
fc241dc76f Fixed 2 bugs in alloc library. Now should be working. 2016-05-17 01:09:52 -07:00
secXsQuared
9e96b66a08 Proc control block
Primitive code for the allocation library
2016-05-16 00:34:41 -07:00
secXsQuared
1ba3afd68a Update ReadMe 2016-05-11 15:40:02 -07:00
hyperassembler
d85a005411 ffff 2016-03-04 20:49:36 -05:00
hyperassembler
6088802c06 Linked list interface change 2016-03-04 17:20:48 -05:00
hyperassembler
93cd12690c [IN PROGRESS] Added hal_interlocked_exchange and implemented spin locks in C code. Reverted some kernel_status_t changes. 2015-11-14 17:53:30 -05:00
hyperassembler
cce6d1558f Windows kernel is well-thought. Refactoring... 2015-10-13 21:19:49 -04:00
hyperassembler
3a217327c9 Step up higher half kernel [In Progress] 2015-09-11 00:51:13 -04:00
hyperassembler
3efb2f7bbd HAL now reports memory in unit of pages to kernel. 2015-09-05 17:14:04 -04:00
unknown
58c61bae3c Physical memory manager [In Progress] 2015-09-04 15:04:22 -04:00
hyperassembler
a4411ce9a6 Fixed some bugs. Now 64 bits kernel can do it. 2015-09-03 21:49:37 -04:00
hyperassembler
454be49390 Screw mac os x and gui debugger. 2015-09-03 20:22:12 -04:00
unknown
a58d00f229 NASM's Align is a very good feature. 2015-09-03 17:24:54 -04:00
unknown
3cada2ce00 Kernel migration in progress. 2015-09-03 17:04:15 -04:00
unknown
01c7b53883 Separating x86 and x64 kernels in order to map kernel to higher half easily. [In Progress] 2015-09-03 16:38:24 -04:00
unknown
abacfc4914 Print information about modules 2015-09-03 11:46:02 -04:00
unknown
b116eb040a Code Cleanup 2015-09-03 11:18:56 -04:00
unknown
d84ceb592d Assertion and Kernel Modules 2015-09-03 10:45:28 -04:00
hyperassembler
17d1b499bd Fix output 2015-09-02 21:43:43 -04:00
unknown
48f892d1df Distinguishing between HAL and Kernel 2015-09-02 17:37:15 -04:00
hyperassembler
2d96ad7370 Fix output. 2015-09-01 19:31:38 -04:00
unknown
5aa762e101 Added magic macro 2015-09-01 16:43:04 -04:00
unknown
4ee70bf53c Adding memory descriptor 2015-09-01 13:37:58 -04:00
HyperAssembler
97ddb93858 Merge remote-tracking branch 'origin/master' 2015-07-17 00:42:14 -04:00
HyperAssembler
0805a76f81 Temp branch for merging 2015-07-17 00:41:53 -04:00
acslk
81dbbedc47 Merge branch 'master' of https://github.com/hyperassembler/HOS 2015-06-29 20:19:51 -04:00
acslk
9e47bd801a Ubuntu bochs 2015-06-29 20:19:12 -04:00
HyperAssembler
1e7b5d9eb7 CMakeList 2015-06-29 20:18:52 -04:00
HyperAssembler
db45a0c073 Now makefile makes the same dir structure as source code. Much cleaner logic. 2015-04-24 01:17:28 -07:00
HyperAssembler
aa0a4483b8 Rewrite makefile and get it compiled. 2015-04-23 00:47:20 -07:00
HyperAssembler
c2a9e43ad3 Interrupt stuff 2015-04-22 01:06:15 -07:00
unknown
056a79709d Refactor_2 2015-04-20 17:19:06 -07:00
HyperAssembler
6321366a24 Refactoring_1 2015-04-19 23:39:33 -07:00
HyperAssembler
d5912f4a7a Hal/ kernel/ common/ util/ they are now separated 2015-04-18 02:34:32 -07:00
HyperAssembler
13b8912474 Detect APIC 2015-04-16 21:40:57 -07:00
unknown
3628eeb97c Added cpuid. 2015-04-16 14:46:54 -07:00
HyperAssembler
7db4e9cf35 Changed the interface for linked list and avl tree to a much more flexible one. The previous one was utter crap.. 2015-03-21 14:17:38 -07:00
HyperAssembler
ab103126b6 Added linkedlist implmentation. 2015-03-17 00:21:42 -07:00
unknown
8d80b24adc Added linked list impl, not fully tested yet. 2015-03-16 18:51:00 -07:00
HyperAssembler
c5b4193e56 A better generic tree interface. 2015-03-15 19:02:45 -07:00
hyperassembler
8a3354f88c Get it compiling under new ubuntu. 2015-03-06 23:06:33 -08:00
hyperassembler
dfba01cf4a Plain of snow 2015-03-05 00:04:29 -08:00
HyperAssembler
f4995007c1 Complete and nicely-interfaced generic avl tree implementation. 2015-03-01 01:11:58 -08:00
HyperAssembler
3f7297a2a7 Just renaming some functions. 2015-02-21 18:38:23 -08:00
HyperAssembler
efb2ea6a60 Added generic AVL tree implementation.
Changed calling convention to NATIVEXX(XX = 64/32)
Changed ignore file to not ignore stuff in x64.
2015-02-21 02:47:24 -08:00
HyperAssembler
4271c61388 Added kernel size and kernel heap management 2015-02-08 00:18:22 -08:00
HyperAssembler
3dd081316b Nothing much seriously. Prepare for interrupt handling in long mode. 2015-02-07 16:26:20 -08:00
HyperAssembler
56375a5253 So kernel 64 can set up itself now. (Requires 1GB page size. But just for temporary setup, in the kernel we will still stick to 4KB page.) 2015-02-07 15:34:26 -08:00
HyperAssembler
57b0f4a8f1 Implemented hk_printf and made everything else implicit.
Ahmmm. Also made 64 bit kernel independent(you can call that thing to enter 64 bit kernel as long as you are in protected mode (no setup required.))(not working but will soon work).
2015-02-07 04:10:50 -08:00