4 ms·
""" At Level 1, a kernel provides low-level OS services such as device drivers and memory management. At Level 2, a distributed DBMS runs on those services. At
by airocker 4y ago
"""
At Level 1, a kernel provides low-level OS services such as device drivers and memory management. At Level 2, a distributed DBMS runs on those services. At Level 3, we build high-level OS services such as a distributed file system, cluster scheduler, and distributed inter-process communication (IPC) subsystem on top of the DBMS. At Level 4, users write applications.
"""
How would it be different from installing today's kernel and then installing postgres, Gluster, docker and etcd on top of it?
- airocker 4y agowould you force level 4 applications to only access level 3 services and model everything that OS does (device management, process management, memory management etc) as a layer on top of it? So essentially all devices are a table? I think just modeling memory access as a table would be a big win. Not sure how atomicity and consistency would help applications exactly though with every memory access. Would love to know.
- Jtsummers 4y agoProbably shortens the path between the applications (built on their distributed database manager) and the hardware/network compared to running applications on top of Postgres or other DBs today (which still end up calling out to the kernel and other subsystems). If all your applications (as seems to be their intent) don't need the Linux kernel, but only the DB, then push the DB service into the operating system. Building on top of too many layers increases the overall complexity and reduces overall performance. Periodically chopping out part of the system and creating what you actually need, fresh, is sometimes necessary. Even if it doesn't produce a new product or final system on its own, gives you a direction for moving other systems if the theory pans out in practice.
- deleted 4y ago[deleted]
- airocker 4y agoI guess the changes will be mostly within the kernel and not outside(possibly some new APIs). I thought applications would have to change which possibly is too hard to do. So anyone who misunderstood it the same way I did, nothing will change for an application developer.