Commit Graph

  • 7da34dbffb WIP linux multiarch support feature/multi-arch Justin C. Miller 2025-11-23 23:49:56 -08:00
  • 90a0eb3c53 [build] first pass at multiarch support Justin C. Miller 2025-11-23 23:21:12 -08:00
  • d1ddbd2cf1 [pci] Move PCIe and ACPI code to their own libs main Justin C. Miller 2024-08-18 19:44:47 -07:00
  • 81b331e5da [kernel] Clean up includes in kernel logger Justin C. Miller 2024-08-18 19:41:41 -07:00
  • 1ebee17880 [build] Explicitly add c++ standard headers to userspace Justin C. Miller 2024-08-18 19:40:16 -07:00
  • 4649d5f77b [kernel] Add a _very_ basic TLB shootdown mechanism Justin C. Miller 2024-08-13 19:02:40 -07:00
  • d3c1d6cc34 [kernel] Add debug names to processes Justin C. Miller 2024-08-12 19:40:20 -07:00
  • ee24ec8d5c [kernel] Ensure all VMA sizes are multiples of page size Justin C. Miller 2024-08-12 19:28:08 -07:00
  • 372325fab7 [scripts] Fix for missing path seperator in errno.h Justin C. Miller 2024-08-12 19:26:56 -07:00
  • 8f036d9293 [kernel] Fix the mysterious paging bug!! Justin C. Miller 2024-08-11 12:40:13 -07:00
  • e345cdd1a7 [util] Add util::bitset::set(i, val) Justin C. Miller 2024-08-10 23:33:26 -07:00
  • fca570a163 [scripts] Make j6libc.py into the codegen package Justin C. Miller 2024-08-10 23:29:21 -07:00
  • ff64d1989f [docs] Update docs: kernel mem, process init Justin C. Miller 2024-08-10 23:11:14 -07:00
  • d3f5db2479 [crt0] Actually pass argc, argv, envp to main()s Justin C. Miller 2024-08-10 17:37:34 -07:00
  • fa587060f1 [libj6] Change to a more SysV style process init args Justin C. Miller 2024-08-09 19:14:44 -07:00
  • b137c75eb2 [kernel] Use box-drawing characters in debugcon Justin C. Miller 2024-08-08 19:46:32 -07:00
  • 05c1361283 [libc] Implement setjmp/longjmp Justin C. Miller 2024-08-08 19:31:20 -07:00
  • c6835dad70 [tools] Update telnet to nc in qemu.sh Justin C. Miller 2024-08-04 12:14:42 -07:00
  • e7fa1dde97 [ld.so] Mark main module to not run ctors Justin C. Miller 2024-04-30 22:24:34 -07:00
  • eb62588b79 [6s] Allow 6s to know about filesystems Justin C. Miller 2024-04-30 22:23:04 -07:00
  • 29332cbd45 [libc] Update errno and strto* files for compatibility Justin C. Miller 2024-04-30 22:20:41 -07:00
  • 172eb70551 [6s] Break out builtin commands into a list of structs Justin C. Miller 2024-04-29 01:11:15 -07:00
  • 7322df98f5 [ld.so] Call all image global ctors, not just libc Justin C. Miller 2024-04-29 01:07:18 -07:00
  • 70af5a31cd [6s] Add simple command handling v0.8.0 Justin C. Miller 2024-04-28 19:36:27 -07:00
  • 0ab2f59fe8 [libc] Fix a strncmp bug Justin C. Miller 2024-04-28 19:35:12 -07:00
  • ab84cdb790 [edit] Change libedit API Justin C. Miller 2024-04-28 17:24:15 -07:00
  • da9041823b [edit] Add line-editing library, libedit Justin C. Miller 2024-04-27 16:21:46 -07:00
  • 2d7cfc6c59 [scripts] Fix mkj6romfs for real Justin C. Miller 2024-04-27 16:20:23 -07:00
  • cee4fe67fc [tools] Let GDB quit easily if inferior already quit Justin C. Miller 2024-04-27 15:41:05 -07:00
  • 53f90f5a1d [scripts] Fix initrd directory compression Justin C. Miller 2024-04-27 13:55:05 -07:00
  • bab2dd5c69 [libc] Change exit status from int to long Justin C. Miller 2024-04-27 12:58:51 -07:00
  • 3b9efc11d0 [drv.uart] Read everything from the channel in uartnnMake sure to keep reading until the channel is empty so output isn't behindnby a keystroke. Justin C. Miller 2024-04-26 00:32:06 -07:00
  • 182d3b0a6a [kernel] Add the handle_close syscallnnAdd a generic handle_close syscall and use it in j6::channel when failing to open Justin C. Miller 2024-04-24 15:48:00 -07:00
  • ed38e989b1 [srv.logger] Update logger for new channel/SLP Justin C. Miller 2024-04-23 23:59:06 -07:00
  • 1bc6f422c5 [kernel] Fix a bug with auto-assigned VMA addresses Justin C. Miller 2024-04-23 23:47:52 -07:00
  • 4909d15c20 [boot] Fix panic handler not installing Justin C. Miller 2024-04-23 23:46:31 -07:00
  • e725795a17 [6s] Add 6s shell, make channels full-duplex Justin C. Miller 2024-04-23 23:32:28 -07:00
  • d8a21608c3 [docs] Set up github pages workflow Justin C. Miller 2024-03-07 21:59:06 -08:00
  • 396fc131e0 [docs] Add sphinx documentation Justin C. Miller 2024-03-07 21:48:25 -08:00
  • 40130076b2 [uart] Fix UART driver hangs Justin C. Miller 2024-03-04 19:48:16 -08:00
  • 9f54927a82 [util] Remove enum_bitfields Justin C. Miller 2024-02-25 23:40:14 -08:00
  • f7ea46e49e [build] Get release mode optimizations working Justin C. Miller 2024-02-25 17:09:04 -08:00
  • bc46c9a7d5 [libj6] Add log area and severity to j6::syslog() Justin C. Miller 2024-02-24 13:39:24 -08:00
  • a1e2c58afc [kernel] Add spam logging to trace mailbox calls Justin C. Miller 2024-02-21 19:40:28 -08:00
  • 4e73e933db [libj6] Update how init args are passed and used Justin C. Miller 2024-02-20 20:51:14 -08:00
  • 9f8e75f680 [ld.so] Properly handle stack alignment in ld.so args Justin C. Miller 2024-02-20 19:42:12 -08:00
  • e17119254b [libc] Add enough stubs to support new LLVM 16 sysroot Justin C. Miller 2024-02-19 16:53:36 -08:00
  • 17261622c6 [scripts] Add missing iced-x86 dependency for print_got.py feature/dynamic_linking Justin C. Miller 2024-02-19 16:20:10 -08:00
  • dff9e53658 [init] Randomize load address of dynamic ELF modules Justin C. Miller 2024-02-19 15:00:42 -08:00
  • 0bf709a339 [util] Add xoroshiro256++ Justin C. Miller 2024-02-19 14:58:20 -08:00
  • c245949ea4 [ld.so] Add dynamic library linking Justin C. Miller 2024-02-18 17:39:42 -08:00
  • c27f8baa31 [libj6] Fix the infinite loop in simple_strlen Justin C. Miller 2024-02-18 17:29:43 -08:00
  • f51f519c31 [kernel] Allow passing 0 to vma_resize to query the current size Justin C. Miller 2024-02-18 17:27:07 -08:00
  • 55a485ee67 [elf] Add get_section_by_name Justin C. Miller 2024-02-18 17:22:23 -08:00
  • ba6e8e1349 [libc] Pull crt0 out into its own module Justin C. Miller 2024-02-13 22:41:40 -08:00
  • 75d30fb56d [scripts] Add debugging help for linked lists and GOT Justin C. Miller 2024-02-13 22:36:50 -08:00
  • 4abcf238a0 [bonnibel] Add SONAME to shared objects Justin C. Miller 2024-02-13 22:33:51 -08:00
  • c05b4211fa [libj6] Make sure thread stacks are aligned Justin C. Miller 2024-02-13 20:06:10 -08:00
  • 337b8bb36b [panic] Don't spin the CPU in panic Justin C. Miller 2023-08-31 19:43:26 -07:00
  • 97433fc7d1 [libc] Properly call init functions and main through GOT Justin C. Miller 2023-08-31 19:42:14 -07:00
  • fc16ed54b3 [kernel] Change VMA syscall addr param to inout Justin C. Miller 2023-08-31 19:40:02 -07:00
  • 8cbde13139 [build] Address symbol visibility and DSO builds Justin C. Miller 2023-08-26 19:30:26 -07:00
  • 646a534dfd [libj6] Remove driver_main Justin C. Miller 2023-08-26 19:23:13 -07:00
  • eda816ad90 [build] Add build knowledge of dynamic libraries Justin C. Miller 2023-08-26 19:06:18 -07:00
  • c4bb60299e [ld.so] Add a minimal dynamic linker Justin C. Miller 2023-08-12 22:55:37 -07:00
  • 3cfd0cf86b [libj6] Make j6::thread a template for lambdas Justin C. Miller 2023-08-09 21:07:09 -07:00
  • 8b3fa3ed01 [kernel] Make mailbox non-fixed-length again Justin C. Miller 2023-08-07 22:59:03 -07:00
  • a0f91ed0fd [kernel] Allow handle lists in syscall definitions Justin C. Miller 2023-08-06 18:50:29 -07:00
  • 77590b31a6 [build] Remove unneeded lib options Justin C. Miller 2023-08-06 10:46:45 -07:00
  • ce27749705 [srv.init] Allow init loader to load dynamic ELFs Justin C. Miller 2023-08-06 10:42:25 -07:00
  • b239bb6df2 [util] Fix a non-explicit-typed shift in sized_uint Justin C. Miller 2023-08-05 17:43:14 -07:00
  • 28379dc0f6 [libj6] Add symbol sizes to syscall stubs Justin C. Miller 2023-08-05 17:40:24 -07:00
  • c86c0f2ae6 [elf] Allow checking for different file types Justin C. Miller 2023-08-05 17:37:45 -07:00
  • bbe27c6b53 [build] Move init to its own target Justin C. Miller 2023-07-31 00:16:02 -07:00
  • 21916ab869 [build] Refactor build options definitions Justin C. Miller 2023-07-30 23:44:04 -06:00
  • 778e766f6b [libj6] Fix a memcpy return address bug Justin C. Miller 2023-07-12 19:46:02 -07:00
  • 5d1fdd0e81 [all] Reference headers in src instead of copying Justin C. Miller 2023-07-12 19:45:43 -07:00
  • f5208d1641 [all] Remove dependencies on non-freestanding libc Justin C. Miller 2023-07-12 19:38:31 -07:00
  • a7beb0df18 [util] Add moving append() call to vector Justin C. Miller 2023-07-10 01:45:31 -07:00
  • 1ec46ee641 [util] Use chunk_size alias instead of N in deque Justin C. Miller 2023-07-10 01:44:19 -07:00
  • 3ba0600694 [tools] Add --no-build option to qemu.sh Justin C. Miller 2023-07-10 01:43:07 -07:00
  • a449a88395 [user] Update logging and return in user apps Justin C. Miller 2023-07-10 01:41:55 -07:00
  • 4bf03266a9 [libj6] Account for double-mapped ring buffers in j6::channel Justin C. Miller 2023-07-10 01:37:31 -07:00
  • 4bceac3d56 [kernel] Check for null handle arg in mailbox_call Justin C. Miller 2023-07-10 01:34:19 -07:00
  • 350396d70f [tools] Commit memory debug (et al) tooling Justin C. Miller 2023-07-10 01:31:07 -07:00
  • ad3afae315 [kernel] Fix a heap double-allocate bug Justin C. Miller 2023-07-10 01:24:13 -07:00
  • 0dc86f2a0d [misc] Get VSCode running / debugging working Justin C. Miller 2023-07-07 16:19:47 -07:00
  • 2b3c276f33 [util] Abstract out radix_tree class from page_tree Justin C. Miller 2023-07-04 17:43:23 -07:00
  • 8bf2425c4a [tools] Make qemu.sh debugcon output optional Justin C. Miller 2023-07-04 16:23:47 -07:00
  • 72530ccb15 [misc] Remove vscode artifacts Justin C. Miller 2023-07-02 17:56:09 -07:00
  • da14fd123e [kernel] Add MXCSR handling, mask SIMD exceptions Justin C. Miller 2023-05-21 14:48:27 -07:00
  • f215b98f74 [panic] Fix display of r14 & r15 in panic display Justin C. Miller 2023-05-20 13:07:40 -07:00
  • b5662bfd25 [kernel] Initial XSAVE support implementation Justin C. Miller 2023-05-05 12:04:37 -06:00
  • 3b3857548c [libcpu] Add CPU_FEATURE_WRN Justin C. Miller 2023-05-01 20:35:12 -06:00
  • 1e2e154747 [libcpu] Fix CPUID register overwriting bug Justin C. Miller 2023-04-30 15:05:23 -06:00
  • 2d8d4fd200 [libc] Fix random SSE alignment GP faults Justin C. Miller 2023-04-09 15:20:17 -07:00
  • 459b40ad57 [kernel] Fix merge conflict getting committed in cpu.cpp Justin C. Miller 2023-03-16 20:08:05 -07:00
  • 90cf1e2220 [tools] Use less for viewing debugcon output in qemu.sh Justin C. Miller 2023-03-16 19:54:06 -07:00
  • 692e0d8656 [drv.uart] Replace user code with new channels Justin C. Miller 2023-03-16 19:52:47 -07:00
  • 3ab1a6b170 [util] Remove asserts from util::bitset Justin C. Miller 2023-03-16 19:49:43 -07:00