Mark
992e08a93a
Added AP initialization code
2019-10-09 23:45:19 +03:00
Mark
c3cc760b2c
Working LAPIC timer
2019-10-09 18:24:28 +03:00
Mark
c345c3db26
Restore headers
2019-10-08 12:04:46 +03:00
Mark
71eeb5d282
Remove everything
2019-10-04 16:23:18 +03:00
Mark
d0c709f772
Testing tty0
2019-10-02 19:19:20 +03:00
Mark
13a2e695b5
Fix problem with sections loading one over other
2019-10-02 16:57:29 +03:00
Mark
1376c18984
[amd64] Make IRQs not crash
2019-10-01 18:00:46 +03:00
Mark
dff06deb0f
Seems like the problem with syscall/IF is fixed
2019-10-01 17:28:27 +03:00
Mark
24ff3737d4
[amd64] Elf loading kinda works
2019-10-01 16:18:09 +03:00
Mark
93f45d92c7
[tar] Remove useless warning
2019-10-01 14:32:32 +03:00
Mark
dd1808b157
Add tarfs/ram-based initrd with file reading
2019-10-01 14:30:53 +03:00
Mark
47485a3876
Add initrd building
2019-10-01 12:53:51 +03:00
Mark
12fb906ccc
[amd64] Fixed problem with invalid upper mapping
2019-10-01 12:37:27 +03:00
Mark
f4c3fb30b7
[amd64] Move kidle init to a function
2019-09-30 12:10:33 +03:00
Mark
93516ee40f
Integrate vfs code into the kernel (just make it build yet)
2019-09-30 11:47:51 +03:00
Mark
a71a024348
Add size pretty-printing
2019-09-30 10:39:38 +03:00
Mark
6f35ab11a5
[amd64] Remove test module
2019-09-24 18:21:40 +03:00
Mark
b0b7667ec3
[amd64] Add initrd loading support
2019-09-24 18:15:17 +03:00
Mark
131f6963ab
Add syscall description file
2019-09-23 12:21:57 +03:00
Mark
789a3ee1a3
[amd64] Move arch/amd64 -> sys/amd64
2019-09-23 11:40:44 +03:00
Mark
47df8cc7ce
Move to BSD-ish source tree design
2019-09-23 11:36:15 +03:00
Mark
f6c29e3414
[amd64] Implement kernelspace mm_space_t cloning
2019-09-22 12:06:59 +03:00
Mark
8843ff38aa
Add systick counter
2019-09-20 23:20:42 +03:00
Mark
5c7e918460
Proper kernel [kidle] thread
2019-09-20 23:07:20 +03:00
Mark
542529a8e6
[amd64] Test kernel+2userspace threads, works
2019-09-20 22:26:51 +03:00
Mark
4f70b699f2
[amd64] Implement SYSCALL/SYSRET instructions instead of int $0x80
2019-09-20 22:07:53 +03:00
Mark
edfac823c7
[amd64] Userspace TSS/multithreading
2019-09-20 21:12:13 +03:00
Mark
c5ffd32898
[amd64] Fix RSP0 not getting saved (threads restarting), add int $0x80
2019-09-20 15:07:19 +03:00
Mark
49928b0a2b
Add sys/assert.h
2019-09-20 14:14:38 +03:00
Mark
b097abd8c2
[amd64] Kernelspace thread preemption
2019-09-20 13:43:58 +03:00
Mark
5e078f122e
Pretty-printing in makefile
2019-09-19 21:57:17 +03:00
Mark
becf1ccc54
[amd64] amd64 vmalloc/vmfree, slight changes to map.c
2019-09-19 18:52:15 +03:00
Mark
61f9ebbdae
Add sys/types.h impl
2019-09-18 23:26:47 +03:00
Mark
fe71e36814
[amd64] Use cross-compiler toolchain instead
2019-09-18 23:22:09 +03:00
Mark
5e54ed23b2
Fix modeline for vmalloc.h
2019-09-18 17:32:00 +03:00
Mark
c1c00e3285
[doc] Add spec for vmalloc, add file headers
2019-09-18 17:30:53 +03:00
Mark
99826db34f
Fix include location for headers
2019-09-18 16:42:09 +03:00
Mark
07d158f2a6
[doc] Docs on heap
2019-09-18 16:23:11 +03:00
Mark
b24297d248
[amd64] Add kernel heap
2019-09-18 15:34:59 +03:00
Mark
70e5b17753
Add heap specification header
2019-09-18 12:54:49 +03:00
Mark
65e7336d6c
[amd64] Linker optimizations
...
Merged .rodata into .text section (don't think there's anything
magical/different from .text). Set max page size to 0x1000 (just in case
gcc tries to produce huge binaries), also removed shared-linkage .got
and .got.plt sections (+ removed .eh_frame section as there're no
exceptions).
2019-09-18 12:33:57 +03:00
Mark
f5d99d6b2f
[amd64] Stricter warnings for loader
2019-09-18 11:32:56 +03:00
Mark
be9eba16ac
[amd64] Add available memory to phys. pool
2019-09-18 11:29:16 +03:00
Mark
7c056aa005
[amd64] Add amd64_phys_alloc/free_page()
2019-09-17 18:56:03 +03:00
Mark
a5c71af69c
[amd64] Get memory map/GRUB info from loader
2019-09-17 16:37:03 +03:00
Mark
83fe3a58d8
[amd64] pool.c: kfatal -> panic
2019-09-17 15:56:07 +03:00
Mark
df5803ed69
[amd64] Fix acpi signature checking
2019-09-17 15:50:14 +03:00
Mark
ec6005054d
[amd64] added HPET implementation
2019-09-17 14:38:17 +03:00
Mark
c659189a76
[acpi] Add support for ACPI FADT/HPET location
2019-09-16 16:10:09 +03:00
Mark
51e0ac1374
[amd64] timer configuration
2019-09-16 13:57:53 +03:00