Windows NT Turns 20
An anonymous reader writes with a link to the observation from ZDNet's Mary Jo Foley of Windows NT's 20th birthday (it came out on July 27th, 1993): ""In 1993, Microsoft launched Windows NT 3.1. It was followed up by NT 3.5, 3.51 and 4.0. Microsoft's Windows releases still rely on NT-inspired numbering conventions. Windows 7's build numbers commenced with 6.1; Windows 8's with 6.2; and Windows 8.1 with 6.3." The article also reminds us that "NT's not ancient history, in spite of its age. The NT 'core' is what's inside Windows 8, Windows Server 2012, Windows Phone 8, Windows Azure and the Xbox One.""
Indeed. No matter how structurally sound your operating system may be, UI developers (receiving messages from on high) can still make it look like trash.
I've seen the source and it's a work of art. Whoever they had working on NT 4 for the PnP and other additions really massacred the code.
I used both NT 3.5 and OS/2, and OS/2 was much better. Microsoft put more effort into support for the long term.
Originally it was a pretty good design, based on the concepts implemented by DEC's VMS system. It only got butchered later by people who didn't know their stuff as well as the original engineers.
Warts and all, Windows owes it's lineage to VMS and the once mighty DEC.
I've heard there are still places running VMS-based hardware.
I do not fail; I succeed at finding out what does not work.
The Linux kernel would have bought it a beer, but it hasn't turned 21 yet.
"I bless every day that I continue to live, for every day is pure profit."
V +1 = W
M + 1 = N
S + 1 = T
-- Fuck Beta
An article for WinNT turning 20, but nothing for Slackware when it did the same 10 days ago? What is wrong with you, Slashdot?
Wait, don't answer that...
I have yet to experience this DLL nightmare you speak of. I've had way more dependency hell on Linux than anything. Say you find a great program that does exactly what you need. Well the author based it off some obscure library that needs a dozen other dependencies. One of those said dozen fails to compile. I'm not a CS major so the story pretty much ends there.
The only DLL issue I've had was getting some of the cygwin tools. It needed some DLL and their site was useless for supplying it. I just need the one file, not their installer giving me the entire dev environment. In the end I searched for the filename and "index of" and found a copy that way.
I still don't understand how VMS can be compared to NT. They don't even seem remotely similar.
Only the State obtains its revenue by coercion. - Murray Rothbard
http://msdn.microsoft.com/en-us/library/windows/desktop/ms724832(v=vs.85).aspx
Wearing pants should always be optional.
A few releases are missing in the partial Windows NT history mentioned in the article:
- Windows 2000
- Windows XP
- Windows Server 2003
- Windows Server 2003 R2
- Windows Vista
- Windows Server 2008
And the Xbox.
When every new release of NT brought with it new and useful features at least I was always excited to upgrade from 3.5 on till about 2K8.
Now nobody seems to care about technology anymore... It is all politics, marketeering and guarding the table to ensure no excess value is ever left upon it. Innovation is now measured by games with shells, errecting walled gardens and fresh paint of questionable quality. Sad to see so much potential go to waste.
DOS stopped being in the core with WinME. WinNT was based on VMS and never had DOS lineage.
NT was the last revolutionary product put out by Microsoft. VB3 came out the same summer, and was also revolutionary. Excel 4.0 and Word 2.0 were the only other two revolutionary Microsoft products, and those came out the year previous.
All of these products are essentially unchanged over the past 20 years, with even the same codebase, with the exception of VB 3.0, concepts of which continue in the 2nd generation Visual Studio product (based on the late-90's Visual Interdev platform, chucking the highly responsive 1st generation that ended with Visual Studio 6.0).
The DOS line ended with Windows Me. For a while, MS had the home line based on DOS and the business line based on NT. At the turn of the century, they dropped the DOS lineage and just made different versions of the NT lineage (Home and Pro).
You need to check your history.
.. when IBM contracted Microsoft to develop OS/2 there was to be a consumer line (2.0) and a professional/server line (3.0) developed simultaneously. During the contract dispute negotiations, IBM walked away with the 2.0 code base while Microsoft walked away with the 3.0 code base.
There were two different lines of Windows kernels until Windows 2000. It was with 2000 that the WinNT kernel finally had all the API wrappers needed to run all regular 32-bit windows programs.
The people on slashdot are also wrong about the origins of NT, which was in fact rooted in OS/2 NT aka OS/2 3.0
"His name was James Damore."
I forgot to mention Visual C++ 4.0 from 1995, which introduced the modern IDE. I just now updated Wikipedia.
...that 640k was not enough!
There was an unknown error in the submission.
Maybe for services, but it still baffles me how even with the latest OS/2 release the mouse still didn't track smoothly and the GUI was easily process locked. You couldn't work in that environment without pulling your hair out trying to get anything done.
Compared to NT, for user experience, OS/2 never had a chance.
Windows NT 3.51 was the most stable operating system I have ever used.
I miss it sometimes.
Early versions of WinNT did support it.
I might just crack open my old copy of the book "Show Stopper!" by G. Pascal Zacharay. A great read on the design and development process involved in releasing Windows NT.
I still don't understand how VMS can be compared to NT. They don't even seem remotely similar.
Then follow this link.
... Many users believe that NT's developers carried concepts from VMS to NT, but most don't know just how similar NT and VMS are at the kernel level (despite the Usenet joke that if you increment each letter in VMS you end up with WNTWindows NT). "
From the link : " Most of NT's core designers had worked on and with VMS at Digital; some had worked directly with Cutler.
And : " [the] similarities could fill a book. In fact, you can read sections of VAX/VMS Internals and Data Structures (Digital Press) as an accurate description of NT internals simply by translating VMS terms to NT terms. "
The NT kernel was based on VMS in it's core design, which is what matters, not the APIs. VMS APIs were based on FORTRAN interfaces, while NTs were not, so of course they're not "compatible."
The key feature that I remember from my operating system class is that instead of semaphores, NT/VMS were based on the concept of "critical code sections" -- a completely different approach for implementing the locking needed for parallel code.
I do not fail; I succeed at finding out what does not work.
Have you actually used WinME? It's the same Win98, but with DOS hidden and locked down and a icons/sounds backported from Windows 2000. Windows 2000 is a much more modern NT-based OS and having used it alongside WinME I can tell the difference is clearly visible, with Windows 2000 winning in almost every test except memory consumption and compatibility with Win9x apps.
Windows 2000 was originally planned to replace the DOS-based 98, but application/driver compatibility was not perfect, so Microsoft instead produced the WinME abomination before finally moving everyone to XP.
Comment removed based on user account deletion
The NT kernel was based on VMS in it's core design, which is what matters, not the APIs. VMS APIs were based on FORTRAN interfaces, while NTs were not, so of course they're not "compatible."
BS. The NT kernel was created based on experience with VMS and a lot of new ideas. For instance, permeating the entire NT kernel is the concept of handles. A handle identifies a kernel object with a jump table. What we today call an object (in the OO sense), as it identifies and encapsulates an piece of memory with data as well as method references.
One of the advantages of this design is that the desired access level (read/write/delete/...) can be expressed when the handle is originally opened. If access is allowed, the kernel object identified by the handle will have the corresponding method pointer reference the actual kernel method that performs the operation. If a given access was not requested the method pointer will simply point to an generic "access denied" method. The upshot is that permissions are checked once when the handle is created. After that the granted access is implicit the the function indirection. If you didn'r request write access, the "write" method is mapped to "access denied". Not having to check permission of the user on each use of the handle yields much better performance than having syscalls check permissions upon each access to a file.
VMS was a much more traditional OS. It didn't have this object-oriented view of its internal structures.
Reading slashdot one-liner: (irm http://rss.slashdot.org/Slashdot/slashdot).rdf.item | fl title,desc*
Have you actually used WinME? It's the same Win98, but with DOS hidden and locked downWindows 2000 is a much more modern NT-based OS
I read Devman as that is what he meant - that WinME was the last OS to be based on DOS.
Windows 2000 was originally planned to replace the DOS-based 98, but application/driver compatibility was not perfect, so Microsoft instead produced the WinME abomination before finally moving everyone to XP.
I understand that it was not because "app/driver compatibility was not perfect" (it still isn't) but because of MS internal politics. The DOS/W9x team and the NT team were run in rivalry and the former lasted for years after they should have been taken out and shot. By about 1998, even entry level PCs could easily have run a lite version of NT (I ran NT4 then on a far-from-cutting-edge PC). The excuse was that games needed the direct hardware access that W9x allowed, and that the games writers could not adjust to NT. Eventually, with XP, the games writers had to adjust - or get lost.
I still have the T kindly handed out by IBM as we filed into the launch presentation at COMDEX - "OS/2 - up and running not up-and-coming". Tempted to frame it and send it back.
Wasn't the OS/2 kernel some strange 16/32 bit hybrid? In any case, it was x86 only -- IBM had to create a Mach-based kernel for the ill-fated OS/2-PowerPC.
Yeah, it was x86 only, which is why OS/2-PPC was a totally different project - Presentation Manager personality sitting on top of Mach. There is a more modern liberated version of it, which is Presentation Manager sitting on top of the L4 microkernel. Too bad the PPC is almost dead by now, otherwise that would have been a great candidate for POWERstations, PPC Amiga boxes and even older PPC based consoles.
I agree with everything you said, but it really seems that you did not understand devman's comment to which you replied.
Have you actually used WinME? It's the same Win98, but with DOS hidden and locked down and a icons/sounds backported from Windows 2000.
That can't be all the "improvements." At some point they must also have added the code which causes the OS to self destruct. Never before (and I hope never again) have I heard the line "Don't reboot it'll only make it worse."
Right you really are on most of this.
You cite imitation, derivation, improvement and tribute as the way that progress is made, in the arts and sciences. I actually advocate that.
But in the instance of Microsoft as a company, there are endless back-room rip-offs, double crosses and secret handshakes. They extend from (at least) QDOS through VMS and VINES to SGI (Rick Belluzzo, look closely) - right to the present day: Nokia and Win7 stink to heaven. This was a weird deal in the back room, if ever their were one.
Nokia is essentially a subsidiary of MS, without the legal tripwires. They ditched a successful if future challenged business, to sell devices by the folks behind Zune and Kin.
I know of at least TWO Sr. Execs at MS, who were dismissed because of flagrant sexual harassment, who each went to "penitence" jobs at minor MS partners, only to surface 6-9 months later in Sr Exec jobs at Nokia - where their function relates to Microsoft, corollary partner to their former roles.
Gates stole BASIC, in the beginning. Everything thereafter followed this pattern.
"Flyin' in just a sweet place,
Never been known to fail..."