4 ms·
Firecracker can run ordinary linux/GPOS vms and unikernels. Unikernels can run inside of firecracker. Unikernels are focused on single applications whereas ge
by eyberg 2y ago
Firecracker can run ordinary linux/GPOS vms and unikernels.
Unikernels can run inside of firecracker.
Unikernels are focused on single applications whereas general purpose operating systems are focused on multiple applications.
This is focused on running functions embedded inside a host program. So it is fairly different than other things out there and in a class of its own.
- ATechGuy 2y ago> each function request to have its own hypervisor for protection. They are talking about isolating serverless functions, not host program functions. In that sense, it is exactly what Firecracker does for lambda functions
- eyberg 2y agoFirecracker boots up a runtime that has a full blown operating system in it - lambda just happens to call a known program with a known function. In that sense sure it provides similar functionality but it's really quite different. That's not what fly uses firecracker for, for instance. Qemu/firecracker are in the same space - this is different. These are most definitely in a different boat as you embed the guest functions inside the host program and then you register those functions. Taken from the readme: > The host can call functions implemented and exposed by the guest (known as guest functions). > Once running, the guest can call functions implemented and exposed by the host (known as host functions). This is more in the 'safe plugin' type of space. As with most things in this space - the best way to learn about them is to simply try it out.
- stogot 2y ago> The host can call functions implemented and exposed by the guest (known as guest functions). Can you explain this a bit more? Why/when would a developer want to do this? What’s the advantage over firecracker?
- dboreham 2y agoIt's faster (shorter start time).
- rwmj 2y agolibkrun (on Linux) is probably a closer comparison (though still not quite the same). https://github.com/containers/libkrun https://github.com/containers/libkrun