Jeremy Soller
|
a4ede1d23d
|
Merge pull request #7 from redox-os/user_irq
Userspace Schemes and Drivers
|
2016-09-20 20:18:14 -06:00 |
|
Jeremy Soller
|
8dfd003c72
|
Validate memory pointers
|
2016-09-20 18:03:14 -06:00 |
|
Jeremy Soller
|
be3bcbb878
|
Add function for getting mapped page flags
|
2016-09-20 17:36:36 -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
|
0b3be623fc
|
Move PS/2 driver to userspace
|
2016-09-19 17:19:49 -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
|
70a2faa0c7
|
Correctly position stack in higher half
|
2016-09-19 08:46:11 -06:00 |
|
Jeremy Soller
|
1331f4103f
|
Unlock context switch lock without potentially screwing up switch_to function
|
2016-09-18 21:05:59 -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
|
7561839cfc
|
Do not optimize kernel
|
2016-09-17 09:23:55 -06:00 |
|
Jeremy Soller
|
dfbcca99dd
|
Add exit status to status enum
|
2016-09-17 09:23:36 -06:00 |
|
Jeremy Soller
|
da9e703c4d
|
Remove debug break
|
2016-09-17 09:20:13 -06:00 |
|
Jeremy Soller
|
d5766c092f
|
Remove debug breaks
|
2016-09-17 09:19:55 -06:00 |
|
Jeremy Soller
|
b8d19746e4
|
Fix creation of kstack
|
2016-09-17 09:18:35 -06:00 |
|
Jeremy Soller
|
4e78a12002
|
Do not halt on page fault, do a stack dump
|
2016-09-17 08:13:09 -06:00 |
|
Jeremy Soller
|
0cb5a1045a
|
Debug init exec and wait
|
2016-09-17 08:10:44 -06:00 |
|
Jeremy Soller
|
9ad8ea7dd2
|
Run pcid as a daemon
|
2016-09-17 08:09:32 -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
|
a4f8613971
|
Merge pull request #5 from redox-os/clone
Clone
|
2016-09-15 08:56:41 -06:00 |
|
Jeremy Soller
|
aa7e38882b
|
Map display in kernel shared memory
|
2016-09-15 08:50:29 -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
|
c000820d72
|
Move kernel heap into kernel PML4, now a single PML4 needs to be copied to initialize a new table
|
2016-09-14 21:28:09 -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
|
3f9012b931
|
Restore page fault handler
|
2016-09-13 20:35:01 -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 |
|