Windows NT

Windows NT
Kehittäjä Microsoft
Ytimen tyyppi hybridiydin
Suoritintuki Intel i860, x86-32, Alpha/32, MIPS, PowerPC, SPARC (ei julkaistu), Alpha/64 (ei julkaistu), IA64, x86-64, ARM

Windows NT on Microsoftin kehittämä käyttöjärjestelmäperhe. Lyhenne NT tulee sanoista New Technology. Microsoftin kuluttajakäyttöön tarkoitetuista DOS-pohjaisista Windows-käyttöjärjestelmistä poiketen NT:ssä oli moniajosovelluksia varten muistin suojaus, jonka ansiosta se oli niitä luotettavampi. Windows NT oli korkean tason ohjelmointikieliin pohjautuva, useaa suoritinta tukeva, monen käyttäjän käyttöjärjestelmä, joka oli ominaisuuksiltaan verrattavissa Unixiin.lähde? NT oli ensimmäinen 32-bittinen Windows kun aiempi Windows 2.0 oli 16-bittinen.

Aiemmin Microsoft oli IBM:n alihankkijana OS/2-käyttöjärjestelmän kehitystyössä. Microsoft oli toimittanut IBM:lle graafiset käyttöliittymät kahteen ensimmäiseen versioon OS/2-käyttöjärjestelmästä.

Microsoft kehitti ensimmäisen version Windows NT:sta Intel i860 -suorittimelle.[1]

NT:n kehitys alkoi korvaajana OS/2 versiolle 2, mutta Windows 3.0:n menestys muutti suunnitelmia.[2] Microsoft palkkasi David Cutlerin elokuussa 1988 kehittämään NT:n ja toi mukanaan useita VMS:n kehityksessä mukana olleita henkilöitä.[3] NT:ssä esiintyvät suunnitteluperiaatteet ja pääkonseptit esiintyivät jo Digitalin RSX-11M-käyttöjärjestelmässä.[3] NT:n alkoi "OS/2 NT" -projektina ja tavoitteena oli säilyttää OS/2:n Presentation Manager ohjelmointirajapinta.[3][2] Windows 3.0:n julkaisun jälkeen Win32 API:sta tuli sen pääasiallinen ohjelmointirajapinta ja yhteensopivuus 16-bittisen Windows 3.0 -rajapinnan kannassa oli tärkeä tekijä.[3]

Windows NT:n ensimmäinen julkaistu versio käytti sisäistä versionumeroa 3.1.[4] Seuraavat julkaistut versiot olivat 3.5, 3.51 ja 4.0.[4]

Windows NT julkaistiin huhtikuussa 1993.[3] Windows NT 3.1 ei ollut kovin suosittu, muun muassa sen 12 MB:n keskusmuistivaatimusten vuoksi. NT 3.1 sisälsi oman Win32-sovellusrajapinnan lisäksi myös tuen 16-bittisille Windows/DOS- sekä OS/2- ja POSIX-sovelluksille. NT 3.1 oli saatavissa Intel x86 -suorittimien lisäksi myös DEC Alpha- ja MIPS R4000 -arkkiehtuureille. Myöhemmät versiot kuten NT 3.5 tai NT 3.51 eivät menestyneet kovin paljon paremmin. Erään bugin vuoksi Windows NT 3.5 ei toiminut Intel Pentium -suoritinta uudemmilla suorittimilla[5]. Kesällä 1996 julkaistussa Windows NT 4.0:ssä oli Windows 95:n käyttöliittymän kaltainen käyttöliittymä, ja siitä tuli ensimmäinen suosittu Windows NT -versio. Sen tuki päättyi 30.6.2004, ja sitä seuraavia käyttöjärjestelmiä Microsoft ei enää myynyt NT-nimikkeellä.

NT:n ja VMS:n yhtäläisyyksien vuoksi Microsoft maksoi Digitalille 65–100 miljoonaa dollaria, NT:lle lisättiin tuki Alpha-suorittimelle sekä osapuolet tekivät promootio- ja koulutussopimuksia.[3]

Windows NT tukee sisäisesti Unicode-merkistöä. Sitä varten kehitettiin uusi NTFS-tiedostojärjestelmä IBM:n HPFS:n pohjalta. Jo Windows NT 3.1 tuki sisäisesti pitkiä tiedostonimiä DOS:in 8+3-merkkisten sijaan, mutta Windows 3.1:stä peräisin oleva NT 3.1:n käyttöliittymä ei mahdollistanut niiden käyttöä.

NT:n ytimen on sanottu perustuvan Mach-mikroytimeen, mutta NT:n ydin on suurelta osin monoliittinen: laiteajurit sekä suuri osa käyttöjärjestelmästä ovat kaikki samassa ytimen osoitevaruudessa.[6][7][8][9] Ydinmoodissa suoritetaan Executive, itse ydin ja laiteajurit sekä laitteiston abstraktiokerros (Hardware abstraction layer, HAL).[10] Lisäksi ikkunointi ja grafiikka suoritetaan ytimen tilassa.[10] Executiveen kuuluvat muistinhallinta, prosessien ja säikeiden hallinta, käyttäjäoikeudet, laite-IO, verkkotoiminnot ja prosessien välinen kommunikaatio.[11] Lisänä on tuki eri persoonallisuuksille kuten DOS, OS/2 ja POSIX-rajapinnat.[7][3][6]

Windows NT -julkaisut
Versio Jakelunimi Versiot Julkaisupäivä
3.1 Windows NT 3.1 Workstation, Server 27. heinäkuuta 1993
3.5 Windows NT 3.5 Workstation, Server 21. syyskuuta 1994
3.51 Windows NT 3.51 Workstation, Server 30. toukokuuta 1995
4.0 Windows NT 4.0 Workstation, Server, Server Enterprise Edition, Terminal Server, Embedded 31. heinäkuuta 1996
5.0 Windows 2000 Professional, Server, Advanced Server, Datacenter Server 17. helmikuuta 2000
5.1 Windows XP Starter, Home, Professional, Extended IA64, Media Center, Tablet PC, Embedded* 25. lokakuuta 2001
5.1 Windows FLP Fundamentals for Legacy Personal Computers 8. heinäkuuta 2006
5.2 Windows XP 64-bit Edition Version 2003 28. maaliskuuta 2003
5.2 Windows Server 2003 Standard, Enterprise, Datacenter, Web, Small Business Server 24. huhtikuuta 2003
5.2 Windows XP Extended X64 25. huhtikuuta 2005
5.2 Windows Server 2003 R2 Standard, Enterprise, Datacenter, Web, Storage, Small Business Server, Compute Cluster 6. joulukuuta 2005
5.2 Windows Home Server N/A 16. heinäkuuta 2007
6.0 Windows Vista Starter, Home Basic, Home Premium, Business, Enterprise, Ultimate* 30. tammikuuta 2007
6.0 Windows Server 2008 Standard, Enterprise, Datacenter, Web, Storage, Small Business Server 27. helmikuuta 2008
6.1 Windows 7 Starter, Home Basic, Home Premium, Professional, Enterprise, Ultimate* 22. lokakuuta 2009[12]
6.1 Windows Server 2008 R2 Foundation, Standard, Enterprise, Datacenter, Web Server, HPC Server, Itanium-Based Systems 22. lokakuuta 2009
6.1 Windows Home Server 2011 N/A 6. huhtikuuta 2011
6.2 Windows 8 Basic, Pro, Enterprise, RT 26. lokakuuta 2012 [13]
6.2 Windows Server 2012 Foundation, Essentials, Standard, Datacenter 4. syyskuuta 2012
6.3 Windows 8.1 Basic, Pro, Enterprise, RT 18. lokakuuta 2013
6.3 Windows Server 2012 R2 Foundation, Essentials, Standard, Datacenter 18. lokakuuta 2013
10.0 Windows 10 Windows 10 Home, Windows 10 Pro, Windows 10 Enterprise, Windows 10 Education, Windows 10 IoT Core, Windows 10 Mobile ja Windows 10 Mobile Enterprise 29. heinäkuuta 2015
10.0/6.4(Preview) Windows Server 2016 N/A TBA
10.0 Windows 11 Windows 11 Home, Windows 11 Pro, Windows 11 Enterprise, Windows 11 IoT Enterprise, Windows 11 Education 5. lokakuuta 2021

* Myös K-, N- ja E-mallit liikenteessä joista K ei sisällä Messengeriä, N ei sisällä Media Playeria ja E ei sisällä Internet Exploreria ja myyntipaketit, kuten esim. KNE, joka ei sisällä mitään näistä.

Ohjelmointikielet

[muokkaa | muokkaa wikitekstiä]

Suurin osa Windows NT:stä on ohjelmoitu C- tai C++-kielellä, jonka lisäksi on pieni osa assembly-kielellä.[14]

Yhteensopivuus

[muokkaa | muokkaa wikitekstiä]

DOS-yhteensopivuuden vuoksi Windows NT:n mukana on ollut vuodesta 1993 lähtien NTVDM-komponentti (NT Virtual DOS Machine) 16-bittisien MS-DOS-ohjelmien suorittamiseen.[15] NTVDM on rajattu 32-bittisille IA-32-suorittimille ja se ei ole enää tuettu x86-64 tai ARM-suorittimilla.[15]

  1. https://www.realworldtech.com/intel-history-lesson/3/
  2. a b Russinovich, Mark E. & Solomon, David A.: Windows Internals, s. 3. Microsoft.
  3. a b c d e f g Mark Russinovich: Windows NT and VMS: The Rest of the Story 30.11.1998. ITPro Today. Viitattu 11.8.2019. (englanniksi)
  4. a b Russinovich, Mark E. & Solomon, David A.: Windows Internals, s. 1. Microsoft.
  5. Windows NT 3.5 Setup and the Pentium Pro Processor MS KB. Viitattu 01.05.2007.
  6. a b Jim Mohr: Windows NT Basics 20.2.2014. Microsoft. Viitattu 10.9.2019. (englanniksi) 
  7. a b Silberschatz & Galvin & Gagne: Operating System Concepts Essentials (PDF) cs.columbia.edu. Arkistoitu 28.6.2016. Viitattu 10.11.2017.
  8. User mode and kernel mode 20.4.2017. Microsoft. Viitattu 11.8.2019. (englanniksi)
  9. Russinovich, Mark E. & Solomon, David A.: Windows Internals, s. 35. Microsoft. (englanniksi)
  10. a b Russinovich, Mark E. & Solomon, David A.: Windows Internals, s. 36. Microsoft. (englanniksi)
  11. Russinovich, Mark E. & Solomon, David A.: Windows Internals, s. 37. Microsoft. (englanniksi)
  12. Mannila, Marko: Windows 7 myyntiin lokakuussa Digitoday. Viitattu 3.6.2009.
  13. Windows 8 has reached the RTM milestone blogs.windows.com. Arkistoitu 25.12.2012. Viitattu 17.12.2012. (englanti)
  14. Lesson 2 - Windows NT System Overview learn.microsoft.com. 20.2.2014. Viitattu 8.11.2022. (englanniksi)
  15. a b NTVDM and 16-bit app support learn.microsoft.com. 17.11.2021. Viitattu 24.10.2022. (englanniksi)