Seiya Nuta
Seiya Nuta
In #141, I noticed that we need to track the lifetime of a `PAddr` object which references to `OwnedPages`. It's problematic because it lead to memory leaks or nasty use-after-free...
This PR implements epoll system calls for TCP sockets. AFAIK, this implementation covers essential features needed for running Node.js applications. Closes #19
Namely, write documentation and implement missing features to make following manifest work: ```yaml apiVersion: v1 kind: Pod metadata: name: nginx spec: runtimeClassName: kerla containers: - name: nginx image: nginx ```...
Currently, a symbol table reserves 2MiB space to store symbols (e.g. function names) of the kernel. Because symbols in Rust tend to be lengthy, they are truncated to 55 characters....
In smoltcp, the Kerla's TCP/IP implementation, there're some `O(|# of sockets|)` loops and it would lead to a scalability issue in the future: https://github.com/smoltcp-rs/smoltcp/blob/8e6fc7fec85188a783ed80a25ee2159201aa74e8/src/iface/interface.rs#L2019 The priority is not that high,...
IIUC it's essential to run event-driven programs like Node.js.
Currently, Kerla uses initramfs embedded into the kernel as its root file system. The major disadvantage is that the all file contents will be loaded into the memory. That is,...