Jeremy Soller
|
0e8487cf83
|
Event support - demonstration in example scheme
|
2016-09-23 17:54:39 -06:00 |
|
Jeremy Soller
|
616dfbc055
|
WIP: Kevent
|
2016-09-23 15:47:53 -06:00 |
|
Jeremy Soller
|
94ef9dd14a
|
Add env
|
2016-09-23 11:01:53 -06:00 |
|
Jeremy Soller
|
5b3aeb4a9f
|
Fix path lookup
|
2016-09-22 21:27:33 -06:00 |
|
Jeremy Soller
|
0d762918e2
|
Implement fpath in initfs
|
2016-09-22 21:13:17 -06:00 |
|
Jeremy Soller
|
d5ac1a70bd
|
Trim in env scheme, do not debug initfs
|
2016-09-22 20:49:28 -06:00 |
|
Jeremy Soller
|
c77fbdb69e
|
Folders in initfs
|
2016-09-22 20:26:33 -06:00 |
|
Jeremy Soller
|
9ce5628fa4
|
Bring in some coreutils
|
2016-09-22 19:38:09 -06:00 |
|
Jeremy Soller
|
bc1b503d25
|
Enable SSE and FPU
|
2016-09-22 16:14:45 -06:00 |
|
Jeremy Soller
|
76b0c7eeea
|
Add wnohang, make PS/2 driver write input to display scheme, which then passes it to the shell
|
2016-09-22 10:10:27 -06:00 |
|
Jeremy Soller
|
046236c10f
|
Add login process. Remove debugging. Fix order of arguments
|
2016-09-22 08:43:22 -06:00 |
|
Jeremy Soller
|
61eb0d1ca8
|
WIP: Userspace console
|
2016-09-21 12:18:48 -06:00 |
|
Jeremy Soller
|
5757f3436e
|
Clone grants
|
2016-09-20 22:14:08 -06:00 |
|
Jeremy Soller
|
e110ab81b8
|
WIP: VESA driver. Make initfs generated by code
|
2016-09-20 21:52:45 -06:00 |
|
Jeremy Soller
|
8dfd003c72
|
Validate memory pointers
|
2016-09-20 18:03:14 -06:00 |
|
Jeremy Soller
|
ed3170bdcc
|
Implement more system calls
|
2016-09-20 16:57:45 -06:00 |
|
Jeremy Soller
|
f60661820d
|
Create example userspace scheme. Remove kernel duplication of syscalls, use syscall crate instead
|
2016-09-20 16:23:28 -06:00 |
|
Jeremy Soller
|
941fc0b494
|
Grant to allow passing data to scheme handler
|
2016-09-20 14:50:04 -06:00 |
|
Jeremy Soller
|
2b915953c9
|
Increase buffer size when reading executable, update libstd
|
2016-09-20 09:51:26 -06:00 |
|
Jeremy Soller
|
d329f7c7d2
|
Fix deadlock
|
2016-09-20 09:21:54 -06:00 |
|
Jeremy Soller
|
791dbfa7ad
|
Implement user schemes. Example in pcid. Currently deadlocks in UserInner
|
2016-09-20 08:47:16 -06:00 |
|
Jeremy Soller
|
c512d04378
|
WIP: User scheme
|
2016-09-19 21:24:54 -06:00 |
|
Jeremy Soller
|
abdbadfea3
|
Minimize locking in schemes. Reenable pcid and ion launch in init. WIP: Userspace schemes
|
2016-09-19 18:29:28 -06:00 |
|
Jeremy Soller
|
94ad63de11
|
Remove warnings
|
2016-09-19 17:28:22 -06:00 |
|
Jeremy Soller
|
c957c2a105
|
PS/2 driver convert to char
|
2016-09-19 10:24:19 -06:00 |
|
Jeremy Soller
|
727647dbf1
|
Seperate PS/2 keyboard and mouse driver
|
2016-09-19 09:43:30 -06:00 |
|
Jeremy Soller
|
36fde7c7c5
|
Allow userspace to handle IRQs (WIP). Create basic keyboard handler
|
2016-09-18 20:17:08 -06:00 |
|
Jeremy Soller
|
4bcee99d9f
|
Add mechanism to read IRQ count
|
2016-09-18 18:59:46 -06:00 |
|
Jeremy Soller
|
483d466b1a
|
Add fsync. Add env scheme, currently hardcoded to get ion to launch. Make serial IRQ send data to debug scheme
|
2016-09-18 17:55:35 -06:00 |
|
Jeremy Soller
|
1b056395bb
|
Canonicalize paths in open
|
2016-09-18 12:54:10 -06:00 |
|
Jeremy Soller
|
cfbaccf4d2
|
Complete execve - add argument support using safe ABI
|
2016-09-17 21:44:50 -06:00 |
|
Jeremy Soller
|
57f5699664
|
Update libstd. Add CWD and associated syscalls. Remove debugging
|
2016-09-17 19:01:34 -06:00 |
|
Jeremy Soller
|
dfbcca99dd
|
Add exit status to status enum
|
2016-09-17 09:23:36 -06:00 |
|
Jeremy Soller
|
b8d19746e4
|
Fix creation of kstack
|
2016-09-17 09:18:35 -06:00 |
|
Jeremy Soller
|
3e726a5d0d
|
Implement the typical use of waitpid
|
2016-09-16 18:50:47 -06:00 |
|
Jeremy Soller
|
e680a84a57
|
Allow cloning of files and memory
|
2016-09-16 18:27:54 -06:00 |
|
Jeremy Soller
|
8ee9f1d7da
|
work on shared memory accross threads
|
2016-09-16 17:51:27 -06:00 |
|
Jeremy Soller
|
0b2fd79816
|
Panic upon use of unsupported flags
|
2016-09-16 13:45:00 -06:00 |
|
Jeremy Soller
|
6ad843184d
|
Collapse status of context into one status variable
|
2016-09-16 11:10:53 -06:00 |
|
Jeremy Soller
|
fbbfe16764
|
Organize context module
|
2016-09-16 10:44:52 -06:00 |
|
Jeremy Soller
|
997e229f27
|
Do not have interrupts enabled during context switch
|
2016-09-15 08:40:16 -06:00 |
|
Jeremy Soller
|
53a5a9188a
|
Remove debugging
|
2016-09-15 08:39:20 -06:00 |
|
Jeremy Soller
|
33e098c124
|
Fix implementation of clone and exec. Now the init process can load and execute the pci driver
|
2016-09-15 08:35:07 -06:00 |
|
Jeremy Soller
|
b01a918556
|
WIP: Create new page table for clone
|
2016-09-14 22:21:52 -06:00 |
|
Jeremy Soller
|
83bc8a0da5
|
Higher-half kernel mapping. Unmap where possible, freeing up lower memory
|
2016-09-14 20:47:55 -06:00 |
|
Jeremy Soller
|
6e16298e71
|
WIP: Copy usermode stack
|
2016-09-13 21:27:27 -06:00 |
|
Jeremy Soller
|
dc87afd2ac
|
Fix userspace clone by clobbering all variables on clone
|
2016-09-13 20:31:45 -06:00 |
|
Jeremy Soller
|
ce50faf7ca
|
Allow cloning of kernel threads. Userspace breaks potentially due to stack aliasing
|
2016-09-13 20:06:39 -06:00 |
|
Jeremy Soller
|
4341a2d725
|
Use flush_all instead of flush for performance
|
2016-09-13 11:20:55 -06:00 |
|
Jeremy Soller
|
6d675fc43a
|
Map kernel TLS to general area
|
2016-09-12 15:02:03 -06:00 |
|
Jeremy Soller
|
1298e38ed8
|
cr3 in context
|
2016-09-12 12:21:34 -06:00 |
|
Jeremy Soller
|
85fef883d6
|
Implement exit, partly
|
2016-09-11 22:03:03 -06:00 |
|
Jeremy Soller
|
aa2915001e
|
Clear memory on demand
|
2016-09-11 21:47:44 -06:00 |
|
Jeremy Soller
|
9796d21906
|
Add comments
|
2016-09-11 21:35:02 -06:00 |
|
Jeremy Soller
|
0d101ae5fa
|
Cleanup heap management
|
2016-09-11 21:18:18 -06:00 |
|
Jeremy Soller
|
bcd318d80b
|
Store context memory information
|
2016-09-11 21:04:34 -06:00 |
|
Jeremy Soller
|
f0431f4de1
|
Allow exec, emulate clone by pretending to be child
|
2016-09-11 18:03:10 -06:00 |
|
Jeremy Soller
|
2fffe3ee77
|
Fix close, add dup
|
2016-09-11 17:31:21 -06:00 |
|
Jeremy Soller
|
951831c4bb
|
Improve init process, debug missing syscalls, fix error codes in syscall return
|
2016-09-11 16:48:58 -06:00 |
|
Jeremy Soller
|
c9a4b3882c
|
PCI driver WIP
|
2016-09-11 15:56:48 -06:00 |
|
Jeremy Soller
|
8563961f28
|
Flush TLB correctly when remapping
Seperate mouse and keyboard structs in PS/2 driver
|
2016-09-11 15:02:35 -06:00 |
|
Jeremy Soller
|
44e8b99b46
|
Implement exec
Implement brk
|
2016-09-10 22:06:09 -06:00 |
|
Jeremy Soller
|
f2ca411cd6
|
Load init from initfs
|
2016-09-10 19:42:26 -06:00 |
|
Jeremy Soller
|
842826c1b0
|
Implement sched_yield, enable interrupts in userspace
|
2016-09-10 19:18:59 -06:00 |
|
Jeremy Soller
|
bd7bca30fa
|
Remove debugging messages, launch elf on APs
|
2016-09-10 19:03:31 -06:00 |
|
Jeremy Soller
|
0b1265d87e
|
Seperate kernel and userspace targets
|
2016-09-09 19:08:04 -06:00 |
|
Jeremy Soller
|
9040789987
|
Remove debug warnings
|
2016-09-09 17:30:22 -06:00 |
|
Jeremy Soller
|
aeadd17bb5
|
Connect schemes so that they can be used
|
2016-09-08 20:06:33 -06:00 |
|
Jeremy Soller
|
9afe0645e1
|
Cleanup to use question mark
|
2016-09-08 19:31:26 -06:00 |
|
Jeremy Soller
|
46f9f90e3c
|
Add syscall library, make init program Rust
|
2016-09-08 19:10:50 -06:00 |
|
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 |
|