Commit Graph

188 Commits

Author SHA1 Message Date
Drew Galbraith 984d8b143e [Yunq] Move message parser to shared internal function. 2024-01-11 20:47:39 -08:00
Drew Galbraith 7ec4f696a8 [Yunq] Move serialization to yunq library. 2024-01-11 20:36:41 -08:00
Drew Galbraith 0135d8d844 [Yunq] Accept a message view on message parsing. 2024-01-11 20:03:34 -08:00
Drew Galbraith 75d84a0fa5 [Yunq] Read capabilities using the parsing library. 2024-01-11 19:59:36 -08:00
Drew Galbraith 0e6aa532a1 [Yunq] Move MessageView higher in call stack. 2024-01-11 19:51:18 -08:00
Drew Galbraith 30b220b2fb [Yunq] Move repeated field parsing to the yunq library. 2024-01-11 19:36:24 -08:00
Drew Galbraith 9e9ef21a3d [Yunq] POC for moving yunq parsing to a library. 2024-01-11 19:27:57 -08:00
Drew Galbraith 7b8528ea99 [VictoriaFallS] Cache the results of reading inodes.
This reduces the number of reads when starting up the OS by ~30% (32-23
for a basic use case).

In the future we should cache things using a BTree in the VFS but this
is sufficient for now.
2024-01-11 18:29:51 -08:00
Drew Galbraith d74918409c [VictoriaFallS] Refactor Ext2Driver to share inode reading code. 2024-01-11 18:29:05 -08:00
Drew Galbraith b2354ae341 Move many loops over glcr::Vector to range-based loops. 2024-01-11 17:13:35 -08:00
Drew Galbraith 83b0d9ab61 [Denali] Minor AHCI fixes 2024-01-11 15:09:41 -08:00
Drew Galbraith 21265e76ed [Denali] Reduce logging. 2023-12-08 15:27:32 -08:00
Drew Galbraith 0375306f5e [Denali] Record SATA device sector size and count. 2023-12-08 15:25:44 -08:00
Drew Galbraith e308d8e120 [Denali] Rename devices to ports. 2023-12-08 15:14:52 -08:00
Drew Galbraith 69ce3028fa [Denali] Move AHCI read to internal method as well. 2023-12-08 15:11:56 -08:00
Drew Galbraith 3e1da2bc90 [Denali] Add a simpler command method and use it to send identify. 2023-12-08 15:05:43 -08:00
Drew Galbraith e71017070f [Denali] No longer store Commands on the port. 2023-12-08 14:48:41 -08:00
Drew Galbraith 28a0f02b05 [Denali] Move signaling out of the command class. 2023-12-08 14:43:29 -08:00
Drew Galbraith d90c8eb1ef [Denali] Add identify device command. 2023-12-08 14:30:08 -08:00
Drew Galbraith b3bc1c44d7 [Denali] Refactore interrupt handling. 2023-12-08 11:11:20 -08:00
Drew Galbraith 5a18d7d559 [Denali] Update HBA pointers to volatile. Store CommandList in arrayview. 2023-12-07 22:41:15 -08:00
Drew Galbraith c530921bda [Denali] Reset AHCI controller when starting denali. 2023-12-07 22:33:29 -08:00
Drew Galbraith 961389dee8 [Teton] Duplicate yellowstone cap before spawning processes. 2023-12-07 00:18:09 -08:00
Drew Galbraith ebe72af716 [Sys] Reduce debugging noise. 2023-12-06 23:29:48 -08:00
Drew Galbraith 8c95e66277 [VictoriaFalls] Skipp reading blocks indexed at 0. 2023-12-06 23:29:08 -08:00
Drew Galbraith 067da8709c Update TODOs 2023-12-05 16:16:42 -08:00
Drew Galbraith 0b9f83b321 [Teton] Wait on spawned processes to exit. 2023-12-02 13:26:42 -08:00
Drew Galbraith 642fc4d80d [Zion/Mammoth] Move init cap decls to mammoth.
They no longer need to be independent now that we have removed the libc.
2023-12-01 10:42:26 -08:00
Drew Galbraith c209925a3c [Yunq] Return status from client calls. 2023-12-01 10:35:42 -08:00
Drew Galbraith 700f3f94cb [Yunq] Return status in server code. 2023-12-01 10:26:03 -08:00
Drew Galbraith 3eba0bd9d8 [Yunq] Check identify byte and ensure users check status code. 2023-12-01 09:42:11 -08:00
Drew Galbraith 7d9f9a7ae9 [Yunq] Create libyunq and move parsing code to it. 2023-12-01 09:30:52 -08:00
Drew Galbraith 6212aef336 [Yellowstone] Move yellowstone yunq to namespace "yellowstone" 2023-11-30 08:50:43 -08:00
Drew Galbraith 9fdd670a23 [Voyageurs] Create unowned cap to pass to yellowstone. 2023-11-27 08:34:51 -08:00
Drew Galbraith 17b22c913b [Denali] Create unowned cap to pass to yellowstone. 2023-11-27 08:34:37 -08:00
Drew Galbraith 1614f2ae53 [VictoriaFalls] Create unowned cap to pass to yellowstone. 2023-11-27 08:31:55 -08:00
Drew Galbraith ad7794c694 [Yunq] Delete client capability in destructor.
Add a method to the server class to create an unowned capability. This
makes it simpler to create a capability for passing to other processes.

Duplicate the init yellowstone cap when using it temporarily.
2023-11-27 08:29:01 -08:00
Drew Galbraith 96a2f74e14 [Yunq] Release server cap on destructor. 2023-11-27 08:12:51 -08:00
Drew Galbraith 43d7bfa7ad [Voyageurs] Use yunq native empty response for service. 2023-11-27 08:08:03 -08:00
Drew Galbraith b95c736825 [Yellowstone] Use yunq native empty requests and responses for service. 2023-11-27 08:06:04 -08:00
Drew Galbraith 7c75b832b2 [Teton] Add a barebones way to spawn a process. 2023-11-26 21:14:15 -08:00
Drew Galbraith 26ab661dbf [Teton] Change cwd command to pwd. 2023-11-26 19:12:54 -08:00
Drew Galbraith 29148c8756 [Teton] Add a cd command. 2023-11-26 19:12:09 -08:00
Drew Galbraith ea8598068d [Teton] Add a ls command. 2023-11-26 14:48:33 -08:00
Drew Galbraith d0a3bf3936 [VictoriaFalls] Add a get directory ipc call for victoria falls. 2023-11-26 14:48:01 -08:00
Drew Galbraith 7d7cb8024c [Teton] Add a help command. 2023-11-26 13:53:22 -08:00
Drew Galbraith 57947fb5dd [Teton] Add a command to print the working directory. 2023-11-26 13:51:35 -08:00
Drew Galbraith faa54bc3dc [Teton] Buffer current command for executing. 2023-11-26 13:39:39 -08:00
Drew Galbraith 134185117d [Teton] Handle Tab and Backspace. 2023-11-26 13:21:04 -08:00
Drew Galbraith 7f2b01438d [Teton] Just print a simple promp on the screen. 2023-11-26 11:29:15 -08:00