Jeremy Soller
fb0df8530d
Debug reads writes better, set up stdio for BSP
2016-09-07 21:32:09 -06:00
Jeremy Soller
850792bbf1
Load a very simple ELF and launch it in usermode
2016-09-07 21:16:30 -06:00
Jeremy Soller
0ccfd2125a
Improve efficiency of kernel console
2016-09-01 14:39:45 -06:00
Jeremy Soller
d7d61f82af
Draw on VESA for console using ransid
2016-09-01 11:51:33 -06:00
Jeremy Soller
53c71d9183
Warnings removal
2016-09-01 11:14:47 -06:00
Jeremy Soller
f784e9a06a
Fill in all exception and IRQ entries. Handle PIT, keyboard IRQs
2016-08-31 17:45:21 -06:00
ticki
a9a8c2b340
Merge branch 'master' of github.com:redox-os/kernel
2016-08-31 17:02:47 +02:00
ticki
03e7f221a8
Add the Fd definition file.
...
Damn, I forgot to `git add` it.
2016-08-31 17:01:08 +02:00
Jeremy Soller
165485b721
Add file descriptor type
2016-08-30 16:27:10 -06:00
Jeremy Soller
de761ce921
Merge branch 'master' of https://github.com/redox-os/kernel
2016-08-30 16:23:56 -06:00
Jeremy Soller
d3dfff8d51
Improvements for context switching
2016-08-30 16:23:51 -06:00
ticki
94a1a0fa0c
Newtype file descriptors.
...
To avoid various bugs regarding the typing of file descriptors, we
newtype them into a simple wrapper type.
- Document some stuff.
2016-08-29 11:58:31 +02:00
Jeremy Soller
6e3f59ba8e
Simple, unsafe context switch
2016-08-28 18:38:53 -06:00
Jeremy Soller
6715d5c534
Arm!
2016-08-25 17:03:01 -06:00
Jeremy Soller
c9d338715d
Fix the build. Sorry
2016-08-24 19:30:14 -06:00
Jeremy Soller
2be7ccaec2
Arch context in kernel context
2016-08-24 10:35:42 -06:00
Jeremy Soller
5b9c821ff5
Initialize contexts, add getpid
2016-08-20 14:32:45 -06:00
Jeremy Soller
3b8f396229
Context list class, static context ID magic
2016-08-20 13:43:35 -06:00
Jeremy Soller
0501b2580d
Setup independent page tables, map heap to a single location
2016-08-19 14:53:16 -06:00
Jeremy Soller
55a0154eac
Switch to goblin as executable parser
2016-08-19 07:57:24 -06:00
Jeremy Soller
5588c38178
Add syscall handler, still work in progress
...
Add elf files
2016-08-18 19:44:31 -06:00
Jeremy Soller
71a17070b1
Remove clone from context
2016-08-18 09:02:31 -06:00
Jeremy Soller
490dd16776
Refactor context list
2016-08-18 08:30:45 -06:00
Jeremy Soller
2de2d4cac4
Cleanup schemes list, remove lazy_static
2016-08-18 08:10:08 -06:00
Jeremy Soller
8ddddcec9f
Print out more useful information about AP and BSP, create kmain_ap
2016-08-17 19:38:04 -06:00
Jeremy Soller
0d995bfb5c
Keep track of AP count, allocate bigger AP stack, stack trace function
2016-08-17 19:34:33 -06:00
Jeremy Soller
b756dd59eb
Remove warnings
2016-08-17 16:54:48 -06:00
Jeremy Soller
d383cfb595
Lazy static init of schemes
2016-08-16 11:04:14 -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
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