Commit Graph

  • ba64d82818 Make kstart the aarch64 entry point Jeremy Soller 2022-08-19 21:00:47 -06:00
  • 97b4d31355 Match aarch64 PHYS_OFFSET with x86_64 Jeremy Soller 2022-08-19 20:54:02 -06:00
  • a1411353a9 Update rmm Jeremy Soller 2022-08-19 19:52:39 -06:00
  • 49fcafac45 Fix building on aarch64 Jeremy Soller 2022-08-19 16:12:42 -06:00
  • 38361661e6 Add proc scheme stubs for aarch64 Jeremy Soller 2022-08-19 16:00:35 -06:00
  • 80fc1d7fd4 Remove phys_offset stack hack Jeremy Soller 2022-08-18 15:03:35 -06:00
  • 6b2439f1b9 Improved 32-bit x86 support Jeremy Soller 2022-08-18 14:57:15 -06:00
  • c09be1770b Use registers for switch_to_inner instead of stack Jeremy Soller 2022-08-18 09:09:11 -06:00
  • 472081f8ba Save/restore GS segment on interrupt Jeremy Soller 2022-08-17 21:13:35 -06:00
  • bd9ee98ba9 Use same code for clone_handler on 32-bit and 64-bit x86 Jeremy Soller 2022-08-17 14:40:30 -06:00
  • d47ba636a0 Support x86 in proc scheme Jeremy Soller 2022-08-17 14:32:12 -06:00
  • 679662c99e Name bootstrap process Jeremy Soller 2022-08-17 13:25:13 -06:00
  • 4bd137f36e Fixes for x86 32-bit Jeremy Soller 2022-08-17 10:48:23 -06:00
  • 1eda828877 Merge branch 'userspace_cwd' into 'master' Jeremy Soller 2022-08-16 09:17:37 +00:00
  • 67c0b911b4 Update syscall 4lDO2 2022-08-16 10:45:04 +02:00
  • c3c135cb1d Remove chmod from UserScheme 4lDO2 2022-08-13 19:43:22 +02:00
  • 431407aff0 Remove SYS_CHMOD and cwd related syscalls/files. 4lDO2 2022-08-12 13:04:35 +02:00
  • ac70c76922 Fix TSS and IDT structures on 32-bit x86 Jeremy Soller 2022-08-12 09:03:56 -06:00
  • 9c78219a6a Use 32-bit TSS for x86 32-bit Jeremy Soller 2022-08-12 08:44:05 -06:00
  • d33ff704ba Implement usermode for x86 32-bit Jeremy Soller 2022-08-12 08:21:49 -06:00
  • 4602b81a2f Fix debugger when dumping kernel threads Jeremy Soller 2022-08-03 11:08:49 -06:00
  • 3ba1b018b7 Warn but otherwise allow unaligned sizes in funmap Jeremy Soller 2022-08-03 11:08:18 -06:00
  • 7a390c2a1d Sync some paging code for aarch64 with x86_64 Jeremy Soller 2022-08-01 08:25:33 -06:00
  • 2191308d15 setup_new_utable for aarch64 Jeremy Soller 2022-07-29 18:58:19 -06:00
  • 358abbd40f Fix copy paste error and update rmm Jeremy Soller 2022-07-29 18:53:27 -06:00
  • 07015d17ba Sync x86 and x86_64 Jeremy Soller 2022-07-29 18:49:55 -06:00
  • 166e1e304b Update syscall Jeremy Soller 2022-07-29 18:39:34 -06:00
  • 62c62c4e7c Update rmm Jeremy Soller 2022-07-29 18:38:12 -06:00
  • 5d55d4eb87 Fix warnings Jeremy Soller 2022-07-29 18:33:54 -06:00
  • cc6c974c91 Bump kernel to 0.3.0 to match syscall Jeremy Soller 2022-07-29 18:18:27 -06:00
  • be12d0f1bd Add initial i686 arch module Jeremy Soller 2022-07-29 18:12:49 -06:00
  • 9b74fb3ff1 Update syscall Jeremy Soller 2022-07-29 18:07:44 -06:00
  • e99cbcf5d2 Fixes for compiling aarch64 Jeremy Soller 2022-07-29 18:06:53 -06:00
  • 897cd4c9f4 Add graphical_debug module Jeremy Soller 2022-07-29 15:57:02 -06:00
  • 0c80643077 Make graphical_debug arch independent and fix lots of warnings Jeremy Soller 2022-07-29 15:56:44 -06:00
  • 87acffe859 Fix kernel TLS permissions in INIT_GDT Jeremy Soller 2022-07-29 09:28:13 -06:00
  • 4d1c41232b Support inner_physmap on 32-bit systems Jeremy Soller 2022-07-29 09:27:54 -06:00
  • 059f2a0d07 Support ContextList::spawn on i686 Jeremy Soller 2022-07-29 09:27:35 -06:00
  • a1d9edee52 Use Mutex<u64> instead of AtomicU64 for user scheme packet ID Jeremy Soller 2022-07-29 09:25:40 -06:00
  • bf9e630f65 Fix building proc scheme on non-x86_64 Jeremy Soller 2022-07-29 09:25:17 -06:00
  • f0d3e3281c Use acpi on i686 Jeremy Soller 2022-07-28 08:22:55 -06:00
  • 8db4596f73 Use x86 crate on i686 as well Jeremy Soller 2022-07-28 08:22:26 -06:00
  • fdb4ad8e88 Only build debugger on x86_64 for now Jeremy Soller 2022-07-28 08:21:31 -06:00
  • 8d5ca62499 Add linker and target for i686 Jeremy Soller 2022-07-28 08:20:49 -06:00
  • a45a7c696e Merge branch 'fix-bootstrap' into 'master' Jeremy Soller 2022-07-28 13:38:27 +00:00
  • f3faf33e3f Add a workaround to treat bootstrap mem as owned. 4lDO2 2022-07-28 14:17:02 +02:00
  • ca4525462d Return right number of bytes written for addrspace. 4lDO2 2022-07-28 14:16:07 +02:00
  • 2d935ca6d3 Update cargo.lock 4lDO2 2022-07-27 18:01:58 +02:00
  • 7fcdd8f6e2 Merge branch 'userspace_fexec' into 'master' Jeremy Soller 2022-07-27 15:40:58 +00:00
  • e58bf714d8 Update rmm and syscall 4lDO2 2022-07-27 17:39:16 +02:00
  • 99362f98d2 Add a better interface for modifying addrspaces. 4lDO2 2022-07-26 21:01:53 +02:00
  • 939feacdc5 Add fn for validating user memory range bounds. 4lDO2 2022-07-26 20:57:33 +02:00
  • 5bbfdcda6b Add mmap-min-addr and support unmapping parent PTs. 4lDO2 2022-07-23 19:14:46 +02:00
  • 0720db2265 Remove SYS_EXEC debug code. 4lDO2 2022-07-21 10:51:59 +02:00
  • 308c2cc711 Support modifying processes' sigactions. 4lDO2 2022-07-18 14:06:07 +02:00
  • b766501896 Fix deadlock while starting APs. 4lDO2 2022-07-18 11:29:45 +02:00
  • bf82387f3b Fix KernelMapper unlocking code. 4lDO2 2022-07-18 11:29:11 +02:00
  • e60321d4a0 Partial: migrate remaining parts to RMM. 4lDO2 2022-07-17 14:14:20 +02:00
  • dc8ce1c22b Partial: migrate context handling code to RMM. 4lDO2 2022-07-17 14:13:46 +02:00
  • c912d9e0db Partial: migrate syscall handling code to RMM. 4lDO2 2022-07-17 14:13:34 +02:00
  • 6589083238 Partial: Migrate schemes to RMM. 4lDO2 2022-07-17 14:11:57 +02:00
  • 486d296d6d Remove old x86_64 paging code, migrate to RMM. 4lDO2 2022-07-17 14:11:11 +02:00
  • 302e55098c Migrate misc x86_64 parts to RMM. 4lDO2 2022-07-17 14:10:51 +02:00
  • 2bb019bc44 Partial: migrate debugger, add consistency check. 4lDO2 2022-07-17 14:09:11 +02:00
  • 648b0edb41 Partial: migrate allocator to RMM. 4lDO2 2022-07-17 14:08:25 +02:00
  • 0aec4d3341 Partial: migrate ACPI to RMM. 4lDO2 2022-07-17 14:07:56 +02:00
  • 8970ce1fe7 Benefit from addrspace abstraction in switch. 4lDO2 2022-07-13 15:42:33 +02:00
  • 1cdd462244 Move the initfs scheme to userspace. 4lDO2 2022-07-12 14:09:55 +02:00
  • 351d77ad9b Improve floating point handling. 4lDO2 2022-07-11 18:51:05 +02:00
  • 94578efd1e Use alloc_zeroed when allocating FX. 4lDO2 2022-07-11 13:55:21 +02:00
  • db3b834f19 Also inherit pgid, umask, sigmask. 4lDO2 2022-07-11 13:51:34 +02:00
  • 4aea0cfd0c Fix AddrSpace memory leak. 4lDO2 2022-07-11 12:39:08 +02:00
  • b141cdaad2 Fail if funmap's length isn't page size divisible. 4lDO2 2022-07-10 15:21:33 +02:00
  • 60e3e0af34 Flush less frequently in funmap. 4lDO2 2022-07-10 15:19:57 +02:00
  • 549c023398 Return correct bytes written in proc:X/addrspace. 4lDO2 2022-07-10 15:18:42 +02:00
  • 59d74689dc Copy filetable more efficiently. 4lDO2 2022-07-08 12:36:36 +02:00
  • 0b67997c7b Fix "id == current" check in set_addr_space. 4lDO2 2022-07-08 12:35:27 +02:00
  • 240d91f951 Set address space/files when closing, not writing. 4lDO2 2022-07-07 12:11:58 +02:00
  • fa48c7aa97 Deduplicate code for transferring/creating grants. 4lDO2 2022-07-07 10:16:07 +02:00
  • cb40eb3792 Support reading all grants and transferring grants. 4lDO2 2022-07-07 10:05:39 +02:00
  • b50495bfa5 WIP: Support clone in userspace 4lDO2 2022-07-05 12:26:30 +02:00
  • 283ada82a0 WIP: Remove SYS_CLONE (to be done in userspace). 4lDO2 2022-07-04 10:42:04 +02:00
  • 563121596d Fix running on multi_core. 4lDO2 2022-06-17 12:37:03 +02:00
  • 6e5015dcab WIP: Add necessary interfaces for setuid/setgid. 4lDO2 2022-06-16 14:51:23 +02:00
  • 37f9b292f1 Add kfmap to fix properly reobtaining grants. 4lDO2 2022-06-12 14:21:02 +02:00
  • de28cc4918 Add a Scheme supertrait for kernel-only methods. 4lDO2 2021-08-16 13:40:53 +02:00
  • 31c4bc8a1c Remove kernel support for fmap_old and funmap_old. 4lDO2 2022-06-12 11:42:28 +02:00
  • 23f49414bd Fix phys offset, lock grants correctly. 4lDO2 2022-06-10 11:43:50 +02:00
  • 15b029de36 Fix everything all the way to booting to desktop. 4lDO2 2022-02-22 19:49:05 +01:00
  • e6e1348072 Implement exec, and change UserGrant allocator. 4lDO2 2022-01-21 21:44:12 +01:00
  • f7f722f81c Don't use identity mapping for ACPI. 4lDO2 2022-01-21 21:38:03 +01:00
  • 846318e716 WIP: Attempt implementing fexec in userspace. 4lDO2 2022-01-02 11:58:46 +01:00
  • 67edfbfc42 Remove the unused USER_HEAP_PML4. 4lDO2 2021-12-31 15:15:22 +01:00
  • 76d29bac78 Update rmm Jeremy Soller 2022-07-26 20:16:47 -06:00
  • ac38e62398 Update syscall Jeremy Soller 2022-07-26 15:30:51 -06:00
  • b5a9301706 Map live disk only if not already mapped Jeremy Soller 2022-04-26 12:01:55 -06:00
  • 65bbd50416 Update kernel version to match syscall version Jeremy Soller 2022-04-26 08:28:05 -06:00
  • e88e7d6df1 Fix HPET on real hardware with better debugging Jeremy Soller 2022-04-25 15:08:09 -06:00
  • 6f83a0800a Set graphical_debug by default Jeremy Soller 2022-04-25 08:47:10 -06:00
  • 6e98736c94 Do not map live disk twice Jeremy Soller 2022-04-25 08:43:51 -06:00