Remix.run Logo
zozbot234 2 hours ago

Windows was designed with threads-first mentality because on pre-386 machines you don't have viable process memory protection, so your tasks share memory by necessity. This is not a great argument.

JdeBP an hour ago | parent | next [-]

Windows NT was never designed with pre-386 machines in mind. That was the territory of the old DOS+Windows. Windows NT from the get-go was for machines with page-based virtual memory.

* https://computernewb.com/~lily/files/Documents/NTDesignWorkb...

pstuart 35 minutes ago | parent [-]

WinNT 3.5 was a solid offering.

epcoa an hour ago | parent | prev | next [-]

This is not true. NT never had fork, was always based on the assumption of an MMU and Dave Cutler was a well known fork hater in the 80s long before this paper came out and made it cool to be so. By the time Windows 95 was out, the baseline was 386 with an MMU. CreateThread was initially designed for NT in 1993 though (which didn’t support pre-386 CPUs).

keitmo 18 minutes ago | parent | next [-]

NT performed unnatural acts to implement fork semantics for the POSIX subsystem.

JdeBP an hour ago | parent | prev [-]

As mentioned elsewhere on this page, Windows NT had fork from the start. Vide NtCreateProcess and what happens if an image file is not explicitly supplied.

* https://computernewb.com/~lily/files/Documents/NTDesignWorkb...

dcrazy 31 minutes ago | parent [-]

NtCreateProcess doesn’t accept an image file parameter.

pjmlp an hour ago | parent | prev [-]

Windows NT!

Misread on purpose to make a point?