blob: f49a4285efdbb2264803e6cc831449e18f006737 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
|
===================================
0: Generic Information
===================================
- ABI/Format: Portable Executable Format.
- Architecture: Microkernel.
- Language: C++/C/Assembly (AMD64, X64000, X86S, ARM64)
===================================
1: The hCore Microkernel
===================================
hCore mounts NewFS by default,
a journal filesystem meant for GUI use.
It makes use of a concept named 'Fork'
It contains data about a specific 'Catalog'
Programs are load using the PEF. PEF is a multiplatform container
for executables/shared libraries. Dwarf is used for debugging.
hCore has SMP in it's core with a preemptive multi-threaded scheduler.
It also supports dynamic loading of symbols and has a rich driver system.
====================================
2: The GUI Kit
====================================
We have a Look and Feel system, to support custom application themes.
CWindowLookAndFeel interface takes care of that.
===================================
3: The System Kit
===================================
We use C++ for this API, use it when dealing with C++ code. For C use RTKit.
It is the unstable APIs with RTKit, they change a lot.
Use the App Subsystem to create apps.
===================================
4: The RunTime Kit
===================================
It is a C API, they're mostly system calls, use this to make hCore
optimizations.
===================================
5: The New Filesystem
===================================
Based on HFS+ design of catalogs and forks, it is designed with journaling and recovery in mind.
It's going to take advantage of the disk hardware.
Such as RAID for NVME.
SPECS:
|