Commit Graph

46 Commits

Author SHA1 Message Date
Jeremy Soller af2f6fc6df 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 8ba97b8cff Canonicalize paths in open 2016-09-18 12:54:10 -06:00
Jeremy Soller 4821357934 Complete execve - add argument support using safe ABI 2016-09-17 21:44:50 -06:00
Jeremy Soller 75016bfe39 Update libstd. Add CWD and associated syscalls. Remove debugging 2016-09-17 19:01:34 -06:00
Jeremy Soller c5afb10b00 Add exit status to status enum 2016-09-17 09:23:36 -06:00
Jeremy Soller 9bc242c179 Implement the typical use of waitpid 2016-09-16 18:50:47 -06:00
Jeremy Soller 5f570fa5b4 Allow cloning of files and memory 2016-09-16 18:27:54 -06:00
Jeremy Soller 91fc7c96ab work on shared memory accross threads 2016-09-16 17:51:27 -06:00
Jeremy Soller 236b2f0e04 Panic upon use of unsupported flags 2016-09-16 13:45:00 -06:00
Jeremy Soller 356ba325ea Collapse status of context into one status variable 2016-09-16 11:10:53 -06:00
Jeremy Soller dee5b4dd9e Remove debugging 2016-09-15 08:39:20 -06:00
Jeremy Soller 1711303ef8 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 8607367058 WIP: Create new page table for clone 2016-09-14 22:21:52 -06:00
Jeremy Soller 1acb84afbb Higher-half kernel mapping. Unmap where possible, freeing up lower memory 2016-09-14 20:47:55 -06:00
Jeremy Soller 932026fed8 WIP: Copy usermode stack 2016-09-13 21:27:27 -06:00
Jeremy Soller b042f40847 Fix userspace clone by clobbering all variables on clone 2016-09-13 20:31:45 -06:00
Jeremy Soller d3ace7dcad Allow cloning of kernel threads. Userspace breaks potentially due to stack aliasing 2016-09-13 20:06:39 -06:00
Jeremy Soller d1c0e3b5da Use flush_all instead of flush for performance 2016-09-13 11:20:55 -06:00
Jeremy Soller 70bf79a977 Implement exit, partly 2016-09-11 22:03:03 -06:00
Jeremy Soller 0bb1ad38c9 Clear memory on demand 2016-09-11 21:47:44 -06:00
Jeremy Soller 011c8f7f2b Cleanup heap management 2016-09-11 21:18:18 -06:00
Jeremy Soller efd41a857e Store context memory information 2016-09-11 21:04:34 -06:00
Jeremy Soller 86597331cc Allow exec, emulate clone by pretending to be child 2016-09-11 18:03:10 -06:00
Jeremy Soller cf27b3a3ad Fix close, add dup 2016-09-11 17:31:21 -06:00
Jeremy Soller 7a928a5f97 Improve init process, debug missing syscalls, fix error codes in syscall return 2016-09-11 16:48:58 -06:00
Jeremy Soller 038cf5aba1 PCI driver WIP 2016-09-11 15:56:48 -06:00
Jeremy Soller 9371120f0f Flush TLB correctly when remapping
Seperate mouse and keyboard structs in PS/2 driver
2016-09-11 15:02:35 -06:00
Jeremy Soller 9b17495dd6 Implement exec
Implement brk
2016-09-10 22:06:09 -06:00
Jeremy Soller c30f4208d4 Implement sched_yield, enable interrupts in userspace 2016-09-10 19:18:59 -06:00
Jeremy Soller 486bfea62c Remove debugging messages, launch elf on APs 2016-09-10 19:03:31 -06:00
Jeremy Soller 3837b2606f Connect schemes so that they can be used 2016-09-08 20:06:33 -06:00
Jeremy Soller 7036ed4c63 Cleanup to use question mark 2016-09-08 19:31:26 -06:00
Jeremy Soller 44e57773a3 Debug reads writes better, set up stdio for BSP 2016-09-07 21:32:09 -06:00
Jeremy Soller aecfa50029 Initialize contexts, add getpid 2016-08-20 14:32:45 -06:00
Jeremy Soller 47280a921a Context list class, static context ID magic 2016-08-20 13:43:35 -06:00
Jeremy Soller b46c7e71c0 Add syscall handler, still work in progress
Add elf files
2016-08-18 19:44:31 -06:00
Jeremy Soller 8fc113adef Refactor context list 2016-08-18 08:30:45 -06:00
Jeremy Soller 0bd1cda1b6 Cleanup schemes list, remove lazy_static 2016-08-18 08:10:08 -06:00
Jeremy Soller 1993e701dd Remove warnings 2016-08-17 16:54:48 -06:00
Jeremy Soller 9f79abe542 Lazy static init of schemes 2016-08-16 11:04:14 -06:00
Jeremy Soller 38f1a4fb76 WIP: Schemes 2016-08-14 21:38:32 -06:00
Jeremy Soller 946fd79e83 Test for BadFile 2016-08-14 19:17:55 -06:00
Jeremy Soller dd280a5d1a Add stdout/stderr tests 2016-08-14 18:22:50 -06:00
Jeremy Soller f79d6ce12b Add context and file structs 2016-08-14 18:16:56 -06:00
Jeremy Soller 04a6a45fac WIP: Exec 2016-08-14 16:07:41 -06:00
Jeremy Soller 6cfa38c5ba Add syscall module 2016-08-14 15:58:35 -06:00