|
|
|
|
|
by gilgoomesh
4229 days ago
|
|
> We have tools now such that if they had been around in the 60's/70's we wouldn't have these problems Not for kernel development we don't. The only modern, memory-safe language that gets close(-ish) to the performance of C for kernel development is Rust and it's a long way from being stable enough for mainstream kernel development. And even a safe language like Rust won't prevent escalation problems like this if you're placing too much trust in incoming data. That's a design problem that has nothing to do with languages or memory safety. |
|
ETHZ OS were done in Modula-2, Oberon, Active Oberon.
Olivetti and DEC were using Modula-3.
Several OS were being done in Algol and PL/I dialects back when UNIX was being born.
C's ubiquity is a consequence of UNIX adoption by some successful startups in the workstation market.
If one of the other systems had enjoyed a similar adoption another safer systems programming language would have taken C's adoption.