Comment by afiori

7 years ago

The paper agrees with you that the fork models had a reason to exist and that is is perfect for shells.

They also point out that on modern hardware you often should want to write multithreaded multiprocess application.

Their main criticism of fork is that it does not compose at any level of the OS (as it cannot be implemented over a different primitive)

I understand that a lot of people here dislike Microsoft for good reason (not only historical), but drawbacks in fork() are well known and recognized, here they point out that it is also hard-to-impossible to implement as a compatibility layer if the kernel does not support fork.

Also:

> Microsoft "researchers" can stuff it and their company's flagship piece of shit OS.

Do you have any reason to insult Microsoft researchers? They have plenty of citations in this paper of other researchers that appear to agree with them. This type of comments does not appear constructive to me

It's an idiotic argument. Only functions compose. Though fork is packaged as a function, it's really an operator with a big effect.

Booting a system doesn't compose; let's not have power-on reset and bootloaders.

Everything in this paper could have been cribbed from twenty year or older Usenet postings, mailing lists and other sources. Fork has been dissected ad nausem; anyone who is anyone in the Unix-like world knows this.

Oh, and threads have perpetually been the way to go on current hardware --- every damn year since 1988 and counting.

  • Also levels of abstraction compose.

    > Booting a system doesn't compose;

    Actually this is false, virtual machine and hypervisors allow to boot a system inside another system

    • Virtual machines can be forked processes, and contain operating systems with forked processes, some of which are virtual machiens ... fork composes!

      4 replies →

> Do you have any reason to insult Microsoft researchers?

Yes: they are pompous wankers who want to dictate not only what features people should include in their operating system, but what we should be teaching CS students.