News for hackers. Stuff that matters.
Re:TinyKVM: Fast sandbox that runs on top of Varnish by winternewt on Friday March 14, 2025 @07:22AM (#43361527)
What do you mean by I/O exactly? Because to me handling HTTP requests definitely requires I/O, no matter how you technically implement it. Does the program start anew with new arguments for each HTTP request, and if so how is that an improvement over I/O syscalls?
Re:TinyKVM: Fast sandbox that runs on top of Varnish by nine_k on Friday March 14, 2025 @10:28AM (#43362961)
Handling HTTP requests can be done entirely via stdin + stdout. But it won't be too useful if you could not even talk to a database.

The VM may (and should) be limited to a small subset of what's available on the host though.

Re:TinyKVM: Fast sandbox that runs on top of Varnish by winternewt on Sunday March 16, 2025 @03:15PM (#43381376)
But in order to read from stdin and write to stdout, you must make I/O syscalls.
Re:TinyKVM: Fast sandbox that runs on top of Varnish by cryptonector on Friday March 14, 2025 @11:59AM (#43363907)
I mean you don't get to open files, sockets, devices, etc. in the sandboxed program. You get to do just a few minimal things like I/O on stdin/stdout/stderr, use shared memory, maybe allocate memory.
Re:TinyKVM: Fast sandbox that runs on top of Varnish by winternewt on Sunday March 16, 2025 @03:17PM (#43381395)
So how do you do I/O on stdin/stdiout/stderr without syscalls?
Re:TinyKVM: Fast sandbox that runs on top of Varnish by cryptonector on Tuesday March 18, 2025 @04:08PM (#43404403)
There's a tiny kernel, and there are syscalls, because after all the executable is -though ELF- a statically linked executable with a statically linked libc, but that mini kernel only handles very few system calls, and does not provide the full generality of Linux. Yes I shouldn't have said "there's no syscalls", just no generic I/O.