Commit graph

  • abdbadfea3 Minimize locking in schemes. Reenable pcid and ion launch in init. WIP: Userspace schemes Jeremy Soller 2016-09-19 18:29:28 -0600
  • 94ad63de11 Remove warnings Jeremy Soller 2016-09-19 17:28:22 -0600
  • 0b3be623fc Move PS/2 driver to userspace Jeremy Soller 2016-09-19 17:19:49 -0600
  • c957c2a105 PS/2 driver convert to char Jeremy Soller 2016-09-19 10:24:19 -0600
  • 727647dbf1 Seperate PS/2 keyboard and mouse driver Jeremy Soller 2016-09-19 09:43:30 -0600
  • 70a2faa0c7 Correctly position stack in higher half Jeremy Soller 2016-09-19 08:46:11 -0600
  • 1331f4103f Unlock context switch lock without potentially screwing up switch_to function Jeremy Soller 2016-09-18 21:05:59 -0600
  • 36fde7c7c5 Allow userspace to handle IRQs (WIP). Create basic keyboard handler Jeremy Soller 2016-09-18 20:17:08 -0600
  • 4bcee99d9f Add mechanism to read IRQ count Jeremy Soller 2016-09-18 18:59:46 -0600
  • 483d466b1a Add fsync. Add env scheme, currently hardcoded to get ion to launch. Make serial IRQ send data to debug scheme Jeremy Soller 2016-09-18 17:55:35 -0600
  • 1b056395bb Canonicalize paths in open Jeremy Soller 2016-09-18 12:54:10 -0600
  • cfbaccf4d2 Complete execve - add argument support using safe ABI Jeremy Soller 2016-09-17 21:44:50 -0600
  • 57f5699664 Update libstd. Add CWD and associated syscalls. Remove debugging Jeremy Soller 2016-09-17 19:01:34 -0600
  • 7561839cfc Do not optimize kernel Jeremy Soller 2016-09-17 09:23:55 -0600
  • dfbcca99dd Add exit status to status enum Jeremy Soller 2016-09-17 09:23:36 -0600
  • da9e703c4d Remove debug break Jeremy Soller 2016-09-17 09:20:13 -0600
  • d5766c092f Remove debug breaks Jeremy Soller 2016-09-17 09:19:55 -0600
  • b8d19746e4 Fix creation of kstack Jeremy Soller 2016-09-17 09:18:35 -0600
  • 4e78a12002 Do not halt on page fault, do a stack dump Jeremy Soller 2016-09-17 08:13:09 -0600
  • 0cb5a1045a Debug init exec and wait Jeremy Soller 2016-09-17 08:10:44 -0600
  • 9ad8ea7dd2 Run pcid as a daemon Jeremy Soller 2016-09-17 08:09:32 -0600
  • 3e726a5d0d Implement the typical use of waitpid Jeremy Soller 2016-09-16 18:50:47 -0600
  • e680a84a57 Allow cloning of files and memory Jeremy Soller 2016-09-16 18:27:54 -0600
  • 8ee9f1d7da work on shared memory accross threads Jeremy Soller 2016-09-16 17:51:27 -0600
  • 0b2fd79816 Panic upon use of unsupported flags Jeremy Soller 2016-09-16 13:45:00 -0600
  • 6ad843184d Collapse status of context into one status variable Jeremy Soller 2016-09-16 11:10:53 -0600
  • fbbfe16764 Organize context module Jeremy Soller 2016-09-16 10:44:52 -0600
  • a4f8613971 Merge pull request #5 from redox-os/clone Jeremy Soller 2016-09-15 08:56:41 -0600
  • aa7e38882b Map display in kernel shared memory Jeremy Soller 2016-09-15 08:50:29 -0600
  • 997e229f27 Do not have interrupts enabled during context switch Jeremy Soller 2016-09-15 08:40:16 -0600
  • 53a5a9188a Remove debugging Jeremy Soller 2016-09-15 08:39:20 -0600
  • 33e098c124 Fix implementation of clone and exec. Now the init process can load and execute the pci driver Jeremy Soller 2016-09-15 08:35:07 -0600
  • b01a918556 WIP: Create new page table for clone Jeremy Soller 2016-09-14 22:21:52 -0600
  • c000820d72 Move kernel heap into kernel PML4, now a single PML4 needs to be copied to initialize a new table Jeremy Soller 2016-09-14 21:28:09 -0600
  • 83bc8a0da5 Higher-half kernel mapping. Unmap where possible, freeing up lower memory Jeremy Soller 2016-09-14 20:47:55 -0600
  • 6e16298e71 WIP: Copy usermode stack Jeremy Soller 2016-09-13 21:27:27 -0600
  • 3f9012b931 Restore page fault handler Jeremy Soller 2016-09-13 20:35:01 -0600
  • dc87afd2ac Fix userspace clone by clobbering all variables on clone Jeremy Soller 2016-09-13 20:31:45 -0600
  • ce50faf7ca Allow cloning of kernel threads. Userspace breaks potentially due to stack aliasing Jeremy Soller 2016-09-13 20:06:39 -0600
  • 4341a2d725 Use flush_all instead of flush for performance Jeremy Soller 2016-09-13 11:20:55 -0600
  • 0a2abe0f54 Initialize FPU and SSE on APs Jeremy Soller 2016-09-12 20:37:22 -0600
  • 31fdc8f175 Cleanup usermode jump Jeremy Soller 2016-09-12 17:52:38 -0600
  • e50e6d2e4f Remove user TLS Jeremy Soller 2016-09-12 15:52:04 -0600
  • ea8b9189a3 Pass page table of BSP to AP Jeremy Soller 2016-09-12 15:50:16 -0600
  • 6560cc653b Simplify bootloader GDT Jeremy Soller 2016-09-12 15:49:54 -0600
  • 6d675fc43a Map kernel TLS to general area Jeremy Soller 2016-09-12 15:02:03 -0600
  • 11eddfecd1 Cleanup PML4 entries, pass correct cpu ID to trampoline Jeremy Soller 2016-09-12 13:06:00 -0600
  • 1298e38ed8 cr3 in context Jeremy Soller 2016-09-12 12:21:34 -0600
  • 85fef883d6 Implement exit, partly Jeremy Soller 2016-09-11 22:03:03 -0600
  • aa2915001e Clear memory on demand Jeremy Soller 2016-09-11 21:47:44 -0600
  • 9796d21906 Add comments Jeremy Soller 2016-09-11 21:35:02 -0600
  • 0d101ae5fa Cleanup heap management Jeremy Soller 2016-09-11 21:18:18 -0600
  • bcd318d80b Store context memory information Jeremy Soller 2016-09-11 21:04:34 -0600
  • bed09d0518 Allow thread control block to be moved Jeremy Soller 2016-09-11 18:25:05 -0600
  • f0431f4de1 Allow exec, emulate clone by pretending to be child Jeremy Soller 2016-09-11 18:03:10 -0600
  • 2fffe3ee77 Fix close, add dup Jeremy Soller 2016-09-11 17:31:21 -0600
  • 951831c4bb Improve init process, debug missing syscalls, fix error codes in syscall return Jeremy Soller 2016-09-11 16:48:58 -0600
  • adec5d6df6 More compact output Jeremy Soller 2016-09-11 16:24:43 -0600
  • 4f6a0fb2b0 Stripping the kernel causes crashes for some reason Jeremy Soller 2016-09-11 16:13:27 -0600
  • c9a4b3882c PCI driver WIP Jeremy Soller 2016-09-11 15:56:48 -0600
  • f05cc96db1 KVM default off, ack after irq handling Jeremy Soller 2016-09-11 15:13:09 -0600
  • 8563961f28 Flush TLB correctly when remapping Seperate mouse and keyboard structs in PS/2 driver Jeremy Soller 2016-09-11 15:02:35 -0600
  • 44e8b99b46 Implement exec Implement brk Jeremy Soller 2016-09-10 22:06:09 -0600
  • f2ca411cd6 Load init from initfs Jeremy Soller 2016-09-10 19:42:26 -0600
  • 00db6ddd62 vga=no mode and serial echo Jeremy Soller 2016-09-10 19:24:16 -0600
  • 842826c1b0 Implement sched_yield, enable interrupts in userspace Jeremy Soller 2016-09-10 19:18:59 -0600
  • bd7bca30fa Remove debugging messages, launch elf on APs Jeremy Soller 2016-09-10 19:03:31 -0600
  • 0faa82609d Fix path in bochs Jeremy Soller 2016-09-10 18:48:36 -0600
  • ce717ff277 Reorganize kernel memory mappings Jeremy Soller 2016-09-10 18:48:27 -0600
  • 7ace92c60c Show where frame allocator ran out Jeremy Soller 2016-09-10 16:28:01 -0600
  • 024b0d8a22 Relocatable kernel Jeremy Soller 2016-09-10 16:27:11 -0600
  • 0b1265d87e Seperate kernel and userspace targets Jeremy Soller 2016-09-09 19:08:04 -0600
  • 729c7fd004 Prepare for higher half Jeremy Soller 2016-09-09 18:31:48 -0600
  • 59327eb1b2 Strip kernel for size, recompile on change of bootloader Jeremy Soller 2016-09-09 18:31:28 -0600
  • 9040789987 Remove debug warnings Jeremy Soller 2016-09-09 17:30:22 -0600
  • b326ac0a10 Remove symbols from init executable Jeremy Soller 2016-09-09 17:28:20 -0600
  • 5d97fd75c7 Fix crash in libstd Jeremy Soller 2016-09-09 17:25:56 -0600
  • 8dd26c5239 Compile init as executable using libstd Jeremy Soller 2016-09-09 17:13:16 -0600
  • 3cd846a756 Update rust, use redox branch to prepare for libstd Jeremy Soller 2016-09-09 15:48:54 -0600
  • 097a40d109 Merge branch 'master' of https://github.com/redox-os/kernel Jeremy Soller 2016-09-08 20:06:44 -0600
  • aeadd17bb5 Connect schemes so that they can be used Jeremy Soller 2016-09-08 20:06:33 -0600
  • 00ef69d461 Merge pull request #4 from redox-os/usermode Jeremy Soller 2016-09-08 19:32:21 -0600
  • 9afe0645e1 Cleanup to use question mark Jeremy Soller 2016-09-08 19:31:26 -0600
  • afde5f5b5d rebuild init on cargo file change Jeremy Soller 2016-09-08 19:13:52 -0600
  • 46f9f90e3c Add syscall library, make init program Rust Jeremy Soller 2016-09-08 19:09:58 -0600
  • fcec69efdc remove bochs breaks Jeremy Soller 2016-09-08 15:53:45 -0600
  • a5d79d7957 Nographic mode, fix userspace transition by setting kernel TLS back on syscall Jeremy Soller 2016-09-08 15:45:26 -0600
  • fb0df8530d Debug reads writes better, set up stdio for BSP Jeremy Soller 2016-09-07 21:32:09 -0600
  • 850792bbf1 Load a very simple ELF and launch it in usermode Jeremy Soller 2016-09-07 21:16:30 -0600
  • 398838dc1b Log bad mouse events Jeremy Soller 2016-09-07 19:35:50 -0600
  • 486b11eb1c Force scancode set, combine keyboard packets Jeremy Soller 2016-09-02 14:47:56 -0600
  • f45958f449 Fix stack trace, WIP usermode Jeremy Soller 2016-09-02 12:27:45 -0600
  • eab03299be Remove algorithmicx package Jeremy Soller 2016-09-02 08:52:21 -0600
  • 7a4c5de2ae Assertions in PS/2 driver Jeremy Soller 2016-09-01 21:01:38 -0600
  • 3d79c653bd Enable display first to catch ps2 output Jeremy Soller 2016-09-01 20:52:52 -0600
  • aad69e8a6c Reduce bootloader messages Jeremy Soller 2016-09-01 20:45:26 -0600
  • 69faf5f377 Do not disable local apic, it appears to turn off irqs on BSP Jeremy Soller 2016-09-01 20:23:47 -0600
  • da88cdcb61 Better debugging messages Jeremy Soller 2016-09-01 20:16:58 -0600
  • f706dda8af Support both X2 and XAPIC modes Jeremy Soller 2016-09-01 19:54:44 -0600
  • a4da0121ea Make sure to enable xAPIC mode as well as x2APIC mode Jeremy Soller 2016-09-01 17:23:04 -0600