Jeremy Soller
26c86f8242
Set page table of AP to BSP, to allow mapping of heap to be shared
2016-08-17 19:06:33 -06:00
Jeremy Soller
48741e3b99
Do not map heap on AP, due to it being independent from the BSP heap. We need to adjust the mapping so that kernel mappings are shared accross processors, probably using higher half mapping for the kernel
2016-08-17 17:46:56 -06:00
Jeremy Soller
ec1302bbe1
Remove debugging
2016-08-17 17:41:42 -06:00
Jeremy Soller
b0797a5d8a
Allocate a very small 4K stack for the other CPUs, increase count to 4
2016-08-17 17:40:18 -06:00
Jeremy Soller
979d80a8c7
Fix locking in serial port
2016-08-17 17:24:10 -06:00
Jeremy Soller
b756dd59eb
Remove warnings
2016-08-17 16:54:48 -06:00
Jeremy Soller
78432b3875
Move frame allocation to two global functions, locking happens inside them
2016-08-17 16:26:43 -06:00
Jeremy Soller
ebf9766ef5
Map kernel in AP, WIP
2016-08-17 15:47:54 -06:00
Jeremy Soller
27d5996abf
Get the APs into rust code, set stack and page table in trampoline
2016-08-16 21:25:48 -06:00
Jeremy Soller
a8948fb246
Hooks to get the other CPUs into long mode
2016-08-16 20:37:38 -06:00
Jeremy Soller
08900d56c8
Changes to allow for detection and init of ASPs
2016-08-16 18:04:15 -06:00
Jeremy Soller
7b2acdd79c
Cleanup ACPI code, find lower tables
2016-08-16 12:16:32 -06:00
Jeremy Soller
d383cfb595
Lazy static init of schemes
2016-08-16 11:04:14 -06:00
Jeremy Soller
7a1c263bc1
WIP: ACPI
...
Map and find ACPI tables, starting with RSDT
2016-08-15 18:37:58 -06:00
Jeremy Soller
fda1ab2327
Global allocator, page table - protected by spinlock
2016-08-15 16:29:54 -06:00
Jeremy Soller
617516b949
Move main to start
2016-08-15 15:32:33 -06:00
Jeremy Soller
0c5221425b
Remove bump allocator
2016-08-15 15:29:28 -06:00
Jeremy Soller
eccb99d67d
Use linked list allocator
2016-08-15 15:27:32 -06:00
Jeremy Soller
792ef0b3d2
Move heap, make it larger
2016-08-15 15:20:27 -06:00
Jeremy Soller
854ffaa435
Correct dependencies of kernel
2016-08-15 15:12:47 -06:00
Jeremy Soller
2a66a84a50
Cleanup, use spinlock for allocator
2016-08-15 15:01:24 -06:00
Jeremy Soller
cc8fe85e6a
GDT and IDT in kernel space
...
Paging constructs completed, remap kernel before jumping to kmain
Panic will do a stack trace
Remove SSE from none target
2016-08-15 14:34:20 -06:00
Jeremy Soller
465363f0a1
Add simple paging, use rust libcore and compile without sse
2016-08-15 11:30:14 -06:00
Jeremy Soller
9f0819dafb
Bump allocator
2016-08-14 22:05:32 -06:00
Jeremy Soller
19077d69db
WIP: Schemes
2016-08-14 21:38:32 -06:00
Jeremy Soller
8a6d9b8c9d
Test for BadFile
2016-08-14 19:17:55 -06:00
Jeremy Soller
d97e2e4b4a
Add stdout/stderr tests
2016-08-14 18:22:50 -06:00
Jeremy Soller
4e270bb807
Add context and file structs
2016-08-14 18:16:56 -06:00
Jeremy Soller
49739d47e8
WIP: Exec
2016-08-14 16:07:41 -06:00
Jeremy Soller
a490ff13ae
Add syscall module
2016-08-14 15:58:35 -06:00
Jeremy Soller
29b6544d8f
Add test architecture
2016-08-14 14:59:18 -06:00
ticki
1c9b6361c9
Merge branch 'master' of github.com:redox-os/kernel
2016-08-14 20:55:19 +02:00
ticki
740aabad90
Interrupt tables.
...
We add lookup table for interrupt descriptions containing information
about the CPU exceptions etc.
2016-08-14 20:54:23 +02:00
Jeremy Soller
ef22aafb60
Add comment
2016-08-14 12:11:53 -06:00
Jeremy Soller
b130f9a860
Magic to make interrupt functions easy to write
2016-08-14 12:08:42 -06:00
Jeremy Soller
2730144e2a
Move arch to seperate crate
2016-08-14 11:45:47 -06:00
ticki
3967c0f291
Strongly typed virtual/physical memory seperation.
...
This minicommit introduces two newtpyes, `Physical` and `Virtual`,
respectively. These serves as a way to segregate the different forms of
addresses to avoid the issues we had in the old kernel.
2016-08-14 19:21:21 +02:00
ticki
f8bd171efd
Rename the src directory to kernel
.
2016-08-14 18:42:32 +02:00
ticki
7b8ba1a118
Convert the Makefile to Cake.
...
This has been planned for a while.
2016-08-14 18:40:34 +02:00
ticki
938b1a73a4
Implement Default
for TSS.
...
- Some documentation.
2016-08-14 18:10:28 +02:00
Jeremy Soller
42c9ba12dc
Remove interrupt setup from asm bootloader, add io module, memcpy functions, and serial driver
2016-08-14 09:31:35 -06:00
Jeremy Soller
799b77d11a
Interrupt handling!
2016-08-13 19:08:40 -06:00
Jeremy Soller
dea137be73
WIP: IDT in rust
2016-08-13 18:58:31 -06:00
Jeremy Soller
ae34f7b5db
Merge branch 'master' of https://github.com/redox-os/kernel
2016-08-13 18:21:55 -06:00
Jeremy Soller
d5902c5a20
Bootable kernel skeleton
2016-08-13 18:21:46 -06:00
ticki
00f098ee76
Merge branch 'master' of github.com:redox-os/kernel
2016-08-14 00:59:13 +02:00
Jeremy Soller
8f4aff05d5
Cleanup docs
2016-08-13 16:57:21 -06:00
ticki
2d3f08ae67
Merge branch 'master' of github.com:redox-os/kernel
2016-08-14 00:55:17 +02:00
ticki
8a8f31cb2e
Add guidelines in the README.
...
This commits details the guidelines for contributing to the repository.
2016-08-14 00:53:13 +02:00
Jeremy Soller
b41c6be0fb
Add docs on syscalls
2016-08-13 16:53:05 -06:00