Re: " fix some annoying if trivial restrictions "
The SIQ bug didn't actually "freeze" the other applications, they'd be running happily in the background. In most instances it didn't "freeze" the application running in the foreground either. What it did do was make the machine's UI totally unresponsive to the user.
Headless OS/2 servers/machines ran forever - they simply didn't crash. Some ATMs in the UK were running OS/2 until the late 00s AFAIK - don't remember many "Bork Bork Bork" articles on those ;)
What killed OS/2 was IBM and IBM alone.
MS didn't "play by the rules" or anything close but that's pot, kettle, black territory frankly.
You have to remember this is back in the days when IBM were losing money hand over fist - they set a (then) world record for the largest annual corporate loss in history ($2bn IIRC, small beer now). They were largely clueless regarding the x86 world by this time as everyone with a clue on the hardware side had long since departed.
IBM simply didn't believe you could make serious money on operating systems unless you controlled/specified the hardware platform, which to be fair has been/still is the case now, MS are/were pretty much the only the exception to the rule.
OS/2 Warp ran Win16 programs fine but they never got the license for Win32 so Win95 killed any significant consumer use on OS/2. In that regard it was very successful.
OS/2 Warp had plenty of major developers writing native programs for it but given IBMs ambivalence/hostility to the x86 platform they all left one by one. When I saw Brad Wardell (Stardock Systems) bin OS/2 development I knew it was dead. Brad was a big advocate of OS/2 but he's done OK on Windows.
My abiding memory of OS/2 was the look on people's faces when you showed them three DOS virtual machines running Win3.1 FASTER on OS/2 than the machine (486DX, 8MB RAM) could run a single instance of Win3.1 when booted via MS-DOS.
Oh and I still miss the PM on OS/2 - proper OO inheritances, not symbolic link shit.