3 ms·
> It's even more complex. Oh, this one goes elbows, armpits, neck, ten thousand fathoms deep. Now just imagine that every memory access that the processor does
by titzer 8y ago
> It's even more complex.
Oh, this one goes elbows, armpits, neck, ten thousand fathoms deep. Now just imagine that every memory access that the processor does actually consumes another type of resource, which is memory bandwidth. There are a limited number of cache-fill lines and those can be occupied or not; after tracking down all of the state of things at rest, you now have to think about the information leakage from the occupancy of the various networks of the CPU--data in flight. Tougher to analyze, but also tougher to secure.
It's gonna be separate CPUs, memory busses, and disks if we really want to get rid of side-channels.
And that's actually simple. Simple is better for security!
- hinkley 8y agoWouldn't this mean that kernel calls are interprocess communication?
- titzer 8y agoIn general, yes. But one could, e.g. have a second kernel, or some microkernel subsystems, running on the other system for the most common calls. In fact, that'd be even safer. It'd be safest to have a whole machine per process :)