「Windows NT系」の版間の差分

提供: miniwiki
移動先:案内検索
(1版 をインポートしました)
(内容を「{{Otheruses|Windows NTの設計に基づくWindows|Windows NT 3.1からNT 4.0までの製品群|Microsoft Windows NT}} '''Windows NT系'''(ウィンドウズ エヌテ…」で置換)
(タグ: Replaced)
 
1行目: 1行目:
 
{{Otheruses|Windows NTの設計に基づくWindows|Windows NT 3.1からNT 4.0までの製品群|Microsoft Windows NT}}
 
{{Otheruses|Windows NTの設計に基づくWindows|Windows NT 3.1からNT 4.0までの製品群|Microsoft Windows NT}}
'''Windows NT系'''(ウィンドウズ エヌティけい)は[[マイクロソフト]]が開発した[[Microsoft Windows NT|Windows NT]]の[[コンピュータ・アーキテクチャ|アーキテクチャ]]に基づいて製作された[[オペレーティングシステム|OS]]の総称。遅くとも [[Microsoft Windows 98|Windows 98/98SE]]/[[Microsoft Windows Millennium Edition|me]] のサポートが終了した2006年以降から2018年現在に至る [[Microsoft Windows|Windows]] の主流系統となっている。[[MS-DOS]]を基に拡張・発展してきた[[Windows 9x系]]とは全く異なった構造をしており、9x系とは分けて考えるときに、NT系と定義する。
+
'''Windows NT系'''(ウィンドウズ エヌティけい
  
広義の「Windows NT」として、Windows NT系という言葉が用いられる。
+
[[マイクロソフト]]が開発した[[Microsoft Windows NT|Windows NT]]の[[コンピュータ・アーキテクチャ|アーキテクチャ]]に基づいて製作された[[オペレーティングシステム|OS]]の総称。
  
== バージョンの変遷 ==
+
遅くとも [[Microsoft Windows 98|Windows 98/98SE]]/[[Microsoft Windows Millennium Edition|me]] のサポートが終了した2006年以降から2018年現在に至る [[Microsoft Windows|Windows]] の主流系統となっている。[[MS-DOS]]を基に拡張・発展してきた[[Windows 9x系]]とは全く異なった構造をしており、9x系とは分けて考えるときに、NT系と定義する。
{{Main2|Windows NT 3.1 から Windows NT 4.0|Microsoft Windows NT}}
 
以下のオペレーティングシステムがNT系に該当する。なお、発売年は最初に発売された言語版とエディションを記載する。
 
{|class="wikitable" style="font-size:95%"
 
!NT Ver.
 
!RTM Build
 
!プロダクト名
 
!エディション、および備考
 
!発売年
 
|-
 
|NT 3.1  || 528 || [[Microsoft Windows NT 3.1|Windows NT 3.1]] || Workstation (名称はWindows NT), Advanced Server || [[1993年]]
 
|-
 
|NT 3.5  || 807 || Windows NT 3.5 || Workstation, Server || [[1994年]]
 
|-
 
|NT 3.51 || 1057 || Windows NT 3.51 || Workstation, Server || [[1995年]]
 
|-
 
|NT 4.0  || 1381 || [[Microsoft Windows NT 4.0|Windows NT 4.0]] || Workstation, Server, Server Enterprise Edition, Terminal Server, Embedded || [[1996年]]
 
|-
 
|NT 5.0  || 2195 || [[Microsoft Windows 2000|Windows 2000]] || Professional, Server, Advanced Server, Datacenter Server || [[2000年]]
 
|-
 
|NT 5.1  || ? || Windows Server Limited Edition || Advanced Server[http://itpro.nikkeibp.co.jp/free/ITPro/USNEWS/20010828/17/], Datacenter Server[http://web.archive.org/web/20140222151329/http://www.nikkeibp.co.jp/archives/172/172971.html] || [[2001年]]
 
|-
 
|NT 5.1  || 2600 || [[Microsoft Windows XP|Windows XP]] || Home, Professional, Media Center, Tablet PC, Starter, Embedded || [[2001年]]
 
|-
 
|NT 5.1  || 2600 || [[Microsoft_Windows_XP#Windows_Fundamentals_for_Legacy_PCs|Windows Fundamentals for Legacy PCs]] || {{N/A}} || [[2006年]]
 
|-
 
|NT 5.2  || 3790 || [[Microsoft Windows Server 2003|Windows Server 2003]] || Standard, Enterprise, Datacenter, Web, Storage, Small Business Server, Compute Cluster Server || [[2003年]]
 
|-
 
|NT 5.2 || 3790 || Windows XP (64ビット) || 64-bit Edition, [[Microsoft Windows XP Professional x64 Edition|Professional x64 Edition]] || [[2003年]], [[2005年]]
 
|-
 
|NT 5.2 || 3790 || [[Microsoft Windows Home Server|Windows Home Server]] || {{N/A}} || [[2007年]]
 
|-
 
|NT 6.0 || 6000<br />6001{{small|(SP1)}}<br />6002{{small|(SP2)}} || [[Microsoft Windows Vista|Windows Vista]] || Starter, Home Basic, Home Premium, Business, Enterprise, Ultimate || 企業: <br />[[2006年]]<br />一般消費者: <br />[[2007年]]
 
|-
 
|NT 6.0 || 6001{{small|(SP1)}}<br />6002{{small|(SP2)}} || [[Microsoft Windows Server 2008|Windows Server 2008]]||Standard, Enterprise, Datacenter, Web, Foundation, Itanium-based Systems, Storage, Small Business Server || 2008年
 
|-
 
|NT 6.1 || 7600<br />7601{{small|(SP1)}} || [[Microsoft Windows 7|Windows 7]] || Starter, Home Basic, Home Premium, Professional, Enterprise, Ultimate || 2009年
 
|-
 
|NT 6.1 || 7600<br />7601{{small|(SP1)}} || [[Microsoft Windows Server 2008 R2|Windows Server 2008 R2]] || Standard, Enterprise, Datacenter, Web, Foundation, Itanium-based Systems || 2009年
 
|-
 
|NT 6.1 || 7601 || [[Microsoft Windows Home Server 2011|Windows Home Server 2011]] || {{N/A}} || [[2011年]]
 
|-
 
|NT 6.2 || 9200 || [[Microsoft Windows 8|Windows 8]] || Windows 8(無印(Core)) , Windows 8 Pro, Windows 8 Enterprise, [[Microsoft Windows RT|Windows RT]] || [[2012年]]  
 
|-
 
|NT 6.2 || 9200 || [[Microsoft Windows Server 2012|Windows Server 2012]] || Datacenter, Standard, Essentials, Foundation || 2012年
 
|-
 
|NT 6.3 || 9600 || [[Microsoft Windows 8.1|Windows 8.1]] || Windows 8、およびWindows RTのメジャーアップデート || [[2013年]]
 
|-
 
|NT 6.3 || 9600 || [[Microsoft Windows Server 2012 R2|Windows Server 2012 R2]] || Datacenter, Standard, Essentials, Foundation || 2013年
 
|-
 
|NT 10.0 ||10240{{small|(1507)}}<br />10586{{small|(1511)}}<br />14393{{small|(1607)}}<br />15063{{small|(1703)}}<br />16299{{small|(1709)}}<br />17134{{small|(1803)}}
 
|| [[Microsoft Windows 10|Windows 10]]<br />[[Microsoft Windows 10 Mobile|Windows 10 Mobile]]<br />[[Microsoft Windows 10 IoT|Windows 10 IoT]] || Home, Pro, Enterprise, Education<br />Mobile, Mobile Enterprise<br />IoT Enterprise, IoT Mobile Enterprise, IoT Core ||[[2015年]]
 
|-
 
|NT 10.0 || 14393 || [[Microsoft Windows Server 2016|Windows Server 2016]]|| Standard,Datacenter || [[2016年]]
 
|}
 
  
=== クライアント向け製品とサーバ向け製品の呼称 ===
+
広義の「Windows NT」として、Windows NT系という言葉が用いられる。
Windows NT系の製品の特徴として、大きく分けて[[クライアント (コンピュータ)|クライアント]]向けの製品と[[サーバ]]向けの製品の2種類存在する。
 
 
 
Windows NTには同バージョン製品でクライアント向けの「Workstation」とサーバ向けの「Server」の2種類がラインナップされている。ただし、Windows NT 3.1だけはクライアント兼サーバーの「Windows NT 3.1」と、ドメインコントローラ専用のWindows NT Advanced Server 3.1のラインナップだった。
 
 
 
Windows 2000以降はクライアント向けを「Workstation」から「Professional」に呼称変更し、Windows XPにおいてもその路線を継承した。また、Windows XPにおいては家庭などでの使用を前提に9x系を統合した「Home Edition」を新たにラインナップに追加した。その一方で、Windows 2000 Serverの後継となるサーバ版は[[Itanium]]/[[Itanium#Itanium2|Itanium2]]専用のWindows Advanced Server/Datacenter Server, Limited Editionを経て、XPに遅れる形でWindows Server 2003として異なるラインナップの位置付けに改まっている。
 
 
 
== 歴史 ==
 
マイクロソフトはMS-DOSの後継OSとして[[OS/2]]を[[IBM]]と共同開発しており、[[1980年代]]末にはOS/2 3.0の開発を主に担当していたが、契約関係・開発の進め方等においてIBM側としばしば対立、プロジェクトの進捗が大きく停滞する状況となっていた。
 
 
 
そこで[[ビル・ゲイツ]]は事態の打開策としてプロジェクトマネージャーを社外に探し、当時[[ディジタル・イクイップメント・コーポレーション|DEC]] に在籍していた[[デヴィッド・カトラー]]を抜擢した。カトラーはDECの[[VAX]]マシン用OSである[[OpenVMS|VMS]]の開発者として名を上げた人物である。カトラーは当初OS/2 3.0のプロジェクトに参加したが、難航するIBMとの交渉の過程でOS/2に事実上見切りをつけ、後にNTと名付けられることになる新OS開発を水面下で推進するようになった。それは彼がかつてDECで手がけたVMSのアーキテクチャを基礎とする極めて近代的な構成でポータビリティの高いOS<ref>ただし、この時点ではGUIの実装は基本構想になく、MS-DOSなどと同様のコマンドライン入力によるCUIのみを備えるものとして計画されていた。</ref>であった。
 
 
 
OS/2次期バージョンの開発が遅延する中で、マイクロソフトはストップギャップとして[[Intel 80386|80386]]搭載マシンを主なターゲットとして開発していた[[Windows 3.x|Windows 3.0]]を[[1990年]]に発売する。このWindows 3.0が大ヒットしたことでゲイツは方針を転換し、後継OSをOS/2ではなく自社オリジナルのWindowsにすることを決意する。だが、初期のWindowsは見た目は[[グラフィカルユーザインタフェース|GUI]]ではあったが内部的には16ビットコードで書かれたMS-DOSを土台としたアプリケーションランチャーの域を出るものではなく、また当時未だサポートされていた(そしてPC/ATの搭載CPUであったが故にPC市場の主流でもあった)[[Intel 80286]]の機能的な制約に由来する貧弱な[[記憶装置|メモリ]]管理機能、[[マルチタスク]]の不完全さ、[[コンピュータネットワーク|ネットワーク]]機能の欠落など課題が山積していた。
 
 
 
そこでゲイツは、カトラーが開発していたOS/2 3.0→NTを基本としつつ、それにWindows 3.0である程度確立されたGUIシェル<ref>実際には平行して開発が進められていたWindows 3.1に準じたものとなった。</ref>を被せ、またそこで実装されていた16ビット[[Windows API]] (Win16) との互換性を持たせたOSを自社開発することとし、[[1993年]]にはNT系第一弾となるWindows NT 3.1の発売を果たした。
 
 
 
NTは極めてコンパクトな[[マイクロカーネル]]、サブシステムの概念を導入し、Win32、OS/2、[[POSIX]]のサブシステムを[[アドレス空間#ユーザ空間|ユーザ空間]]に配置した。サブシステムで致命的な問題が起きても[[クラッシュ (コンピュータ)|クラッシュ]]と呼ばれるシステム全体の破綻を起こさない、当時の[[パーソナルコンピュータ|PC]]で動作するOSとしては画期的なシステムであった。しかしこの構造は当時のPCには負荷が大きく、結果として重いOSと評されることになる。殊にバージョン3.1リリース時にはプログラムの最適化が不十分であったこともあって当時の標準的なPC環境よりも遙かに過大なメモリを必要とした<ref>一般的なPCのメモリ搭載量が8MB前後であった時期に、最低でも32MBのメモリ搭載が要求された。</ref>ため、「メモリ・イーター」<ref>Memory eater:直訳すれば「メモリを喰らう者」。「メモリを浪費するやつ」という揶揄的表現。</ref>との不名誉な呼ばれ方をされたこともあった。
 
 
 
当初は重いOSにPC側の性能がついていかず、この新しいOSをビジネスPC用OSの後継にしようというマイクロソフトの目論みは失敗した。しかし、NT 3.1、NT 3.5に続いて発表した NT 3.51において、時をほぼ同じくしてリリースしたWindows 95を[[クライアントサーバモデル|クライアントとしたサーバOS]]としての性格を強調する[[マーケティング]]を行い<ref>それだけでなく実装APIの修正を行い、ハードウェア依存性の高いゲームやシステム系ソフトウェアなどを除く一般的なWindows 95用アプリケーションの大半が動作可能なよう改良されていた。</ref>、[[NetWare]]の牙城であった[[ネットワークオペレーティングシステム|NOS]]の市場に足場を確保することに成功した。
 
 
 
バージョンアップを重ねる際にマイクロカーネル概念の一部を放棄してWin32サブシステムやグラフィクス・[[デバイスドライバ]]の論理層などを[[アドレス空間#カーネル空間|カーネル空間]]に展開して[[スループット]]を向上するなど、重いオペレーティングシステムという汚名を払拭するためのいくつもの改修が行われた。[[UNIX]]で[[Network File System|nfs]]の一部を[[カーネル]]に移転して[[スループット]]を向上させる技術を参考に、[[ファイルサーバ]]としての性能向上を図った。[[OSI参照モデル]]に倣った[[プロトコルスタック]]を廃し[[BSD]]の単純かつ高性能なプロトコルスタックを取り入れた[[Winsock]] 2と新しいプロトコルスタックの搭載はネットワーク性能を大幅に向上させた<ref>NT 3.1のTCP/IPネットワーク能力は9,600[[ビット毎秒|bps]]のモデム程度であった。</ref>。日々進歩するUNIXや[[BSD]]は、マイクロソフトにとって欠かせぬ教材であったとも言えよう。あわせてNTに本格的に対応した新バージョンの[[Microsoft Visual C++|Visual C++]]がリリースされ、[[サードパーティー]]やソフトハウスがNT向けアプリケーションの開発を本格的に行えるようになった。当時大変人気のあった[[MMORPG]] [[Diablo]]が安定して動作し、TCP/IPによる[[イントラネット]]・[[インターネット]]接続によるネットワークプレイが実現できたのは、これらの改修による。
 
 
 
その後もマイクロソフトはデスクトップ用の業務用OSの後継としても売り込みを図るが、{{独自研究範囲|当時Windows 95からサポートが始まりゲーム市場で急速に普及し始めていた[[DirectX]]の対応が不十分であった<ref>NT 4.0ではSP3でDirectX 3が限定的にサポートされたが、DirectX 5以降への対応は行われなかった。</ref>こともあって一部の[[情報技術|IT]]プロフェッショナルを除いては市場に浸透せず、[[2000年]]にリリースしたWindows 2000においてようやくデスクトップOSとしても市場に認められることとなった。Windows 2000が認められたのは、Windows 9xシリーズの[[プラグアンドプレイ]]や[[Advanced Configuration and Power Interface|ACPI]]等の電源管理機能、[[ユニバーサル・シリアル・バス|USB]]への対応など[[ユーザビリティ]]の高い機能を実装したことと、DirectXのサポートやマルチメディア機能が強化されたこと、それにこの頃には[[ハードウェア]]の性能がNT系OSの重さを問題としない(つまり重たくない)レベルにまで向上していたことによると考えられる|date=2016年10月}}。
 
 
 
Windows 2000は業務用のデスクトップOSとして歓迎されたが、一般家庭向けの市場でNT系OSが普及するのは次のWindows XPまで待つことになる。Windows XPが発売されてからはセキュリティの問題が取り上げられるようになった。そのため、Windows XPはService Pack 2にてCPUのセキュリティ機能[[データ実行防止|DEP]]を利用したり、インターネットからの攻撃には[[ファイアウォール]]を標準で搭載することとなった。Windows XP Service Pack 2開発前後に開発中であったサーバー用Windowsは予定よりも遅くずれることが発表され、Windows XP Service Pack 2で搭載された各セキュリティ保護機能を搭載するとともに、Windows 2000のサーバーエディションで問題となった[[Internet Information Services|IIS]]のインストール直後に機能し始めるといった設計が見直されることとなった。
 
 
 
Windows Vistaは予定が何度も変更された。変更規模の計画が大小含め幾度も変更されたことに加えて、従業員に対するセキュリティ訓練のための開発中断、Windows XP Service Pack 2とWindows Serverの開発があったこと、搭載が予定されている機能の開発で問題が多かったことによる。Windows Vistaは発売されると動作の重さが問題となった。Windows Vistaのサービスパックにて重さへの問題が対処されるが、結局次のWindows 7が発売されるまで話題が収まることはなかった。Windows Vistaと同じソースコードベースであるWindows Server 2008ではハードウェア仮想化機能である[[Hyper-V]]が搭載された。Windows 7では、重さに対処する問題、同じソースコードベースであるWindows Server 2008 R2では仮想化機能の更なる対応などが行われた。Windows VistaのバージョンであるNT 6世代はクライアント版もサーバー版も機能と価格が異なるバリエーションとなる多くのエディションが登場した。
 
 
 
Windows 7がリリースされた時点で、既に従来の[[スタイラス]]操作ではなく複数の指による画面操作([[マルチタッチ]])が可能で、また一つのチップで低消費電力かつ低発熱で長時間動作可能な[[ARMアーキテクチャ]]が採用された小型機器の[[スマートフォン]]や[[タブレット (コンピュータ)|タブレット]]が世に出回っていた。これを受けて、Windows 8ではそれらのデバイスで同様に動作するように開発が行われた。Windows 8が完成する以前、ARMアーキテクチャに対応するWindowsとして既に[[Windows CE]]が存在していたが、Windows NTとは採用対象となるセグメントの違いからOSアーキテクチャが異なり、デスクトップアプリケーションやデバイスドライバ用APIの互換性も乏しく、そもそもNT用に設計されCEでは導入されていないAPIがあるなど、それらの問題に対応する必要があった。ARMタブレット向けのWindows 8はWindows RTという名称でリリースされた。ARMアーキテクチャにNTカーネルが対応することにより、自社のスマートフォン用OSの[[Windows Phone]] OSでもバージョン8以降からNTカーネルが採用された。他のスマートフォン・タブレット用OSでは一般的であったアプリケーション販売のサービス、SNSサービスや自社のオンラインストレージサービスであるOneDrive等、自社他社問わず既に広く利用されているインターネットオンラインサービスに対応した。また、Windows 8では[[Modern UI]]スタイルアプリケーション(Windowsストアアプリ)の開発・実行基盤として、ARMアーキテクチャとx86/x64アーキテクチャとで共通の[[Windowsランタイム]]が開発された。Windows 8.1/Windows RT 8.1およびWindows Phone 8.1では、さらにWindowsランタイムおよび開発環境の統合が進められ、互換性が向上した。
 
 
 
Windows 10では、Windowsランタイムの発展型である[[ユニバーサルWindowsプラットフォーム]]およびユニバーサルWindowsドライバーにより、モバイルやIoTを含めてすべてのOSのカーネルやコアAPIが統合・共通化された。
 
 
 
== 動作プラットフォーム ==
 
{| class="wikitable" style="float: right; font-size:85%; text-align:center; margin:5px"
 
|+ Windows NT系が対応しているプラットフォーム
 
!NT ver.
 
!x86
 
!x64
 
!IA-64
 
!Alpha / MIPS
 
!PowerPC
 
!ARM
 
!ARM64
 
|-
 
|NT 3.1||{{yes|対応}}<ref group="*" name="nec">PC-9800シリーズを含む</ref>||{{n/a}}||{{n/a}}||{{yes|対応}}||{{no|非対応}}||{{no|非対応}}||{{no|非対応}}
 
|-
 
|NT 3.5||{{yes|対応}}<ref group="*" name="nec" />||{{n/a}}||{{n/a}}||{{yes|対応}}||{{no|非対応}}||{{no|非対応}}||{{no|非対応}}
 
|-
 
|NT 3.51||{{yes|対応}}<ref group="*" name="nec" />||{{n/a}}||{{n/a}}||{{yes|対応}}||{{yes|対応}}||{{no|非対応}}||{{no|非対応}}
 
|-
 
|NT 4.0||{{yes|対応}}<ref group="*" name="nec" />||{{n/a}}||{{n/a}}||{{yes|対応}}||{{yes|対応}}||{{no|非対応}}||{{no|非対応}}
 
|-
 
|NT 5.0||{{yes|対応}}<ref group="*" name="nec" />||{{n/a}}||{{n/a}}||{{no|非対応}}||{{no|非対応}}||{{no|非対応}}||{{no|非対応}}
 
|-
 
|NT 5.1||{{yes|対応}}||{{n/a}}||{{partial|一部}}<ref group="*" name="server">サーバのみ、クライアント向けは非対応</ref>||{{no|非対応}}||{{partial|一部}}<ref group="*">初期の Xbox 360 用のソフトウェア開発環境として提供</ref>||{{no|非対応}}||{{no|非対応}}
 
|-
 
|NT 5.2||{{yes|対応}}||{{yes|対応}}||{{yes|対応}}||{{no|非対応}}||{{no|非対応}}||{{no|非対応}}||{{no|非対応}}
 
|-
 
|NT 6.0||{{yes|対応}}||{{yes|対応}}||{{partial|一部}}<ref group="*" name="server" />||{{no|非対応}}||{{no|非対応}}||{{no|非対応}}||{{no|非対応}}
 
|-
 
|NT 6.1||{{partial|一部}}<ref group="*" name="client">クライアントのみ、サーバ向けは非対応</ref>||{{yes|対応}}||{{partial|一部}}<ref group="*" name="server" />||{{no|非対応}}||{{no|非対応}}||{{no|非対応}}||{{no|非対応}}
 
|-
 
|NT 6.2/6.3||{{partial|一部}}<ref group="*" name="client" />||{{yes|対応}}||{{no|非対応}}||{{no|非対応}}||{{no|非対応}}||{{partial|一部}}<ref group="*" name="client" />||{{no|非対応}}
 
|-
 
|NT 10.0||{{partial|一部}}<ref group="*" name="client" />||{{yes|対応}}||{{no|非対応}}||{{no|非対応}}||{{no|非対応}}||{{partial|一部}}<ref group="*" name="mobile_iot">モバイルおよびエンベデッド向けの一部のみ、デスクトップおよびサーバ向けは非対応</ref>||{{yes2|対応}}<ref group="*" name="devel">開発中</ref>
 
|-
 
|colspan=8 style="text-align: left"|{{reflist|group=*}}
 
|}
 
 
 
3.x以前ならびに9x系のWindowsでは[[x86|x86アーキテクチャ]]に絞って設計されたが、Windows NTについては開発当初から様々なCPUアーキテクチャで動作させることを考慮しており、カーネルは移植性が高い設計となっている。
 
 
 
NT 3.1と3.5では、[[PC-9800シリーズ]]用および[[FMRシリーズ]]用を含む32ビットのx86([[IA-32]])版、[[MIPSアーキテクチャ|MIPS]] Rシリーズ版と[[DEC Alpha|Alpha]]版がリリースされた。これらは[[w:en:Advanced RISC Computing|ARC]]アーキテクチャのワークステーションで動作するもので、x86版においてもBOOT.INIの記法や「システムパーティション」、「ブートパーティション」といった起動関係の用語などに影響を与えている。また、NT 3.51と4.0では[[PowerPC]]版もリリースされ、PowerPCを搭載した[[IBM]]の[[ThinkPad]] Power Seriesでも動作した。このほか、{{仮リンク|Clipperアーキテクチャ|en|Clipper architecture}}と[[SPARC]]に移植されたが、リリースされなかった<ref>{{Cite web|url=https://msdn.microsoft.com/ja-jp/library/ms838140.aspx|title=Windows Mobile ベースの移植可能なアプリケーションの構築|accessdate=2017-03-12|date=2006-04-18|quote=Windows NT は、次のプロセッサ アーキテクチャ上で実行できました。
 
Intel IA-32 x86
 
Digital Equipment Corporation(DEC)Alpha
 
MIPS R4000
 
PowerPC
 
Intergraph Clipper(一般にはリリースされていません)
 
SPARC(一般にはリリースされていません)
 
}}</ref><ref>{{cite web|url= http://ftp.lanet.lv/ftp/sun-info/sunflash/1993/Jul/55.11-Sun-Intergraph:-SPARC-and-Windows-NT|title=Intergraph Announces Port of Windows NT to SPARC Architecture|accessdate=2017-03-12|date=1993-07-07|work=The Florida SunFlash}}</ref> 。
 
 
 
Windows 2000 (NT 5.0) ではAlpha版の開発は行われたもののβ3で開発が中止されたため発売には至らず、製品版ではデータセンターエディションに[[IA-64]]版をリリースした以外はインテル・アーキテクチャ系のみの提供となった。Windows Server 2008 R2 (NT 6.1)では、IA-32に非対応となった<ref>{{Cite web
 
|author=マイクロソフト
 
|authorlink=マイクロソフト
 
|url=http://www.microsoft.com/japan/windowsserver2008/prodinfo/r2.mspx
 
|title=Windows Server 2008 R2 概要
 
|accessdate=2009-02-13
 
}}</ref>と同時にIA-64への対応を終了することが明らかとなっている<ref>{{Cite web
 
|author=金子拓郎
 
|date=2010-04-07
 
|url=http://ascii.jp/elem/000/000/512/512624/
 
|title=マイクロソフト、Itaniumのサポート打ち切りへ
 
|publisher=ASCII.jp
 
|accessdate=2011-08-07
 
|quote=引用文
 
}}</ref>。
 
 
 
後にマイクロソフトが[[Xbox 360]]でPowerPCを採用した際、搭載されるOSはPowerPC版Windows NTの資産を利用したのではないかとの憶測が流れたが、マイクロソフトはこれを否定し、x86を採用したXbox初代のOSを新たにPowerPCに移植したものであるとしている<ref>[http://pc.watch.impress.co.jp/docs/2005/0602/kaigai184.htm ■後藤弘茂のWeekly海外ニュース■ Xbox 360のキーパースンJ Allard氏に聞く(前編)]</ref>。Xbox 360の開発環境として、[[PowerPC G5]]を搭載する[[アップル (企業)|アップル]]製[[PowerMac]]にPowerPC用に新たに移植された[[Microsoft Windows XP|Windows XP]] (NT5.1) が搭載されているが、市販はされていない。
 
 
 
[[Microsoft Windows RT|Windows RT]]は[[タブレット (コンピュータ)|タブレットコンピュータ]]に多く採用されている[[ARMアーキテクチャ]]でNTカーネルが動作するように開発されたものである。
 
  
2016年12月、ARM64への対応が発表された<ref>{{Cite web|url=http://pc.watch.impress.co.jp/docs/news/1034101.html|title=【詳報】Win32アプリが動く“ARM版Windows 10”はフル機能搭載の完全なるWindows 10 ~デモでPhotoshopを動作させる|accessdate=2017-06-04|author=笠原一輝|date=2016-12-08|work=PC Watch|publisher=インプレス}}</ref>。
 
 
== セキュリティ ==
 
Windows NTのコアであるNT Executiveは、[[コンピュータセキュリティ|セキュリティ]]に対して非常に厳しい設計が行われている。カーネルから提供されるオブジェクトは基本的にセキュリティ記述子を伴っており、利用するユーザーによってアクセス権が細かく設定されている。XPユーザーではあまり見かけないであろうが、それ以前のバージョンのNT系列OSではファイルにアクセス権を非常にこと細かに設定できる。XPではエクスプローラーからではなく、[[コマンドプロンプト]]からCACLSコマンドでアクセス権を設定する。なお、Professionalでは簡易ファイル共有を停止することにより、2000以前と同様のセキュリティ設定タブがGUIで利用可能になる。
 
 
下位基盤として頑強なセキュリティを持つNTだが、Windows 95のシェルや機能を移植された際に9xとの互換性の問題からそれらのセキュリティの存在を無視する実装を行ったことによりユーザーは管理者 (Administrator)権限で[[ログオン]]していないと作業しづらいといった問題が生じた。限定された権限での動作を考慮していないアプリケーションの問題等、利用する上で不都合が多々あった。
 
 
このような経緯から、Windows NT系列、特に2000からXPにかけてはユーザー(特に個人や小規模なネットワーク環境で使っているユーザー)はAdministrators権限でログオンしていることがほとんどである。これは[[UNIX]]でいえば[[スーパーユーザー|root]]でログオンしっぱなしの状態であり、非常に深刻な脆弱性をもたらす。なぜなら、あらゆるオブジェクトにアクセス可能であり、たとえばシステムファイルの書き換えを阻むものは何もない。これにより[[ワーム (コンピュータ)|ワーム]]ほか[[コンピュータウイルス|ウイルス]]が侵入する隙を作ってしまい、たかだか[[電子メール]]に添付してある実行ファイルを開いてしまっただけで悲惨な結果を招くことがある。この様な問題に対しては、新しいユーザーを作りそのユーザーにはPower UserないしUser権限のみを与えるという方法がある。新しいソフトウェアをインストールできないといった問題が生じることもあるが、NT本来の頑強なセキュリティを利用できるというメリットに比べればさほど大きな問題はない。これに加え、必要なときのみ管理者権限(Administrators)を得る手段として、「別ユーザとして実行」(Windows 2000より)、「高速ユーザ切り替え」(Windows XPより)、「[[ユーザーアカウント制御]] (UAC)」(Windows Vistaより)などの策が講じられている。
 
 
なお、NT Executiveはオブジェクトを作成する際にセキュリティ記述子に[[Null|NULL]]を指定できる。これはWindows NT系OSの最大の[[セキュリティホール]]である。なぜなら、セキュリティ記述子がないオブジェクトは誰でもアクセスできる。たとえば名前付きイベントオブジェクトであれば誰でもそのイベントを叩いてイベントを発生させることが可能であるし、[[名前付きパイプ]]などであれば勝手にオープンして勝手なデータを流し込むといったことが可能となってしまう。
 
 
== ユーザーモード ==
 
[[ファイル:Windows 2000 architecture-ja.png|サムネイル|300x300ピクセル|Windows 2000アーキテクチャのブロックダイアグラム]]
 
ユーザーモードには、ユーザーが利用するアプリケーションやWindowsのサブシステム、システムプロセスの一部が配置されるメモリ領域を言う。ユーザーモードの権限のもとでは、ハードウェアやカーネルモードプロセス、カーネルモードにあるメモリへのアクセスはできない。
 
 
=== サブシステム ===
 
各アプリケーションの実行環境を提供する。
 
 
==== Win64サブシステム ====
 
Windows XPを含めそれ以降の64ビット版では、Win64サブシステムが基本となる。Win32サブシステムは[[WOW64]]機能を用いて実装される。
 
 
==== Win32サブシステム ====
 
Windows NT系の基本的なサブシステムである。
 
 
==== Win16サブシステム====
 
従来のMS-DOS/Windows 3.1系列のソフトウェアを動作させるためのサブシステムであり、[[Windows on Windows|WoW]](Win16 on Win32)機能により互換性を保つようになっている。
 
 
Vista以降では英語版相当の機能は提供されているが、日本語版独自の機能は提供されていない<ref>{{Cite web|url=http://www.exconn.net/Blogs/windows/archive/2006/06/16/13349.aspx|title=Windows開発統括部 Windows Vista における 16 ビットサポート|language=日本語|date=2006年6月16日|archiveurl=http://web.archive.org/web/20060701074801/http://www.exconn.net/Blogs/windows/archive/2006/06/16/13349.aspx|archivedate=2006年7月1日|accessdate=2013年8月21日}}</ref>。
 
 
厳密に言うとサブシステムの本体は[[仮想86モード]]、286プロテクトモード、386プロテクトモードをハンドリングする仮想マシンモニタ[[仮想DOSマシン|NTVDM]] (NT Virtual DOS Machine) で、WOWはNTVDMがトラップしたWin16 API呼び出しをWin32 APIに呼び変えを行うグループログラムである。NTVDMは16ビットDOSシステムコールとWin16 APIを動作させることに特化した実装となっており、例えばVESA VGA BIOSなどはサポートしていない<ref>そのため、VESA VGA BIOSの機能を利用していたゲームソフトなどは正常に動作しない。</ref>。このことは初期のDOS+Windows環境の下でDOSアプリケーションとWindowsアプリケーションを共に利用していたユーザーがNTへ乗り換える際に大きな壁となった。
 
 
x64およびIA-64エディションにはWin16サブシステムが搭載されていない。特にx64の場合、[[X64#Longモード|Longモード]]、つまり64ビット命令セットが利用可能な状態での動作時に、16ビット命令セットの動作に必要な[[仮想86モード]]がサポートされなくなったという事情もある。
 
 
==== OS/2サブシステム ====
 
初期の[[OS/2]]プログラムを動作させるためのサブシステムである。セキュリティ面からこのサブシステムは停止することが望ましいとされる。Windows XPおよびWindows Server 2003以降ではサポートされていない<ref>[http://support.microsoft.com/kb/308259 Windows XP および Windows Server 2003 では POSIX と OS/2 がサポートされていない]</ref>。
 
 
==== POSIXサブシステム ====
 
[[POSIX]]互換のサービスを提供するためのサブシステムである。米国政府に納入するためにこのサブシステムを実装しなければならなかったとされ、あまり積極的に利用されなかった。OS/2サブシステムと同じく、Windows XPおよびWindows Server 2003以降ではサポートされておらず、次に述べるInterixサブシステムに取って代わっている。
 
 
==== INTERIXサブシステム ====
 
{{Main|Interix}}
 
 
[[POSIX]]互換のサービスを提供するためのサブシステムである。Windows NT標準のPOSIXサブシステムの不備を解消するため、Softway Systems社(1999年9月17日、Microsoft社に吸収合併)が開発した[[OpenNT]]を起源とする。後に[[Unix]]ライクな環境を提供する[[Microsoft Windows Services for UNIX|Services for UNIX]]に標準搭載され、Windows NT系OS にネイティブで高品質な[[POSIX]]環境が提供されることとなった。Windows Vistaの上位パッケージやWindows Server 2003より[[Microsoft Windows Services for UNIX|SUA (Sub-system for UNIX-Based Applications)]]として標準搭載される。Windows NTに依存した部分がいくつか存在し、[[コンパイル]]する際に[[ソースコード]]の書き換えが必要となることがある。惜しまれつつもWindows8.1 / Windows2012 R2よりInterixサブシステムは廃止された。代替手段として[[Hyper-V]]を利用した仮想Unix環境、もしくは[[Cygwin]]の利用が推奨されている。
 
 
==== Linuxサブシステム ====
 
{{Main|Windows Subsystem for Linux}}
 
Windows Subsystem for Linuxとして2016年3月に発表されたネイティブ[[Linux]]レイヤーを提供するサブシステムである。Linuxカーネルの[[システムコール]]をNTカーネルのシステムコールに変換することによりLinuxアプリケーションのネイティブ動作を実現している。Interixサブシステムではソースコードの修正やInterix用にコンパイルを行う必要があったが、Subsystem for Linux では[[Ubuntu]] Linuxとバイナリレベルでの互換性を実現しているため、Ubuntuでビルドしたバイナリをそのまま実行できる。bashやEmacsなどUnix/Linuxのソフトウェアが利用可能となる。
 
 
==カーネルモード==
 
カーネルモードには、NT Executiveやカーネル、各デバイスドライバが配置されるメモリ領域を言う。カーネルモードにおかれるプロセスには、ユーザーモードに存在した各種の制限はない。
 
 
===NT Executive===
 
;Cache Manager
 
:Memory Managerに一部機能は依存するが、I/Oのパフォーマンス管理をする。
 
;Configuration Manager
 
:レジストリを管理するコンポーネント。
 
;I/O Manager
 
:ハードウェアデバイスに依存しないI/Oを提供し、I/Oを管理する。
 
;Security Reference Monitor
 
:サブシステムのセキュリティの管理やACLを通してオブジェクトやリソースへのアクセスの制御、ユーザアカウントやログオンセッション管理を取り仕切るコンポーネント。
 
;IPC Manager
 
:プロセス間通信を管理するコンポーネント。
 
;Process Manager
 
:プロセスやスレッドの管理をするコンポーネント。
 
;PnP Manager
 
:プラグアンドプレイを管理するコンポーネント。
 
;Power Management
 
:CPUやその他ハードウェアの電源管理をするコンポーネント。
 
;Window Manager/GDI
 
:ウィンドウ管理やグラフィックを行う。
 
;Object Manager
 
:サブシステムとシステムコールがWindowsのリソースへのアクセスを管理する。
 
;Local Procedure Call
 
:プロセス間通信の接続を提供する。サブシステムとの通信に利用される。またRPCのローカル転送でも用いられる。
 
;Memory Manager
 
:メモリや仮想メモリの管理をするコンポーネント。
 
 
=== NTカーネル ===
 
{{Main|カーネル}}
 
NTカーネルはNT ExecutiveとHALの中間にある。NT 5.2までは幾つかのNTカーネルが存在したが、Windows Vistaからは[[ntoskrnl.exe]]に統一された。
 
 
*ntoskrnl.exe - 標準的なPC
 
*ntkrnlpa.exe - 標準的なPC(32ビットWindowsのみ。[[物理アドレス拡張|PAE]]が有効なときのみ。)
 
*ntkrnlmp.exe - マルチプロセッサPC
 
*ntkrpamp.exe - マルチプロセッサPC(PAEが有効なときのみ。)
 
等、幾つか実装が分かれていた。
 
 
=== Hardware Abstraction Layer ===
 
{{Main|Hardware Abstraction Layer}}
 
HALを除くカーネルモードで動作するプログラムをハードウェアから分離する層である。カーネルとの分離が理想だが、HALはカーネルと共存関係にある。また、極僅かのx86用の命令が含まれている(カーネルでエミュレートされる)。NTカーネルとHALは独立しておらず、NTカーネルがハードウェアに直接アクセスを行うこともあったが、Windows VistaからNTカーネルとHALの依存関係は無くなり、hal.dllに統一された。
 
 
*hal.dll - 標準的なPC
 
*halaacpi.dll - [[APIC]] ACPI PC
 
*halacpi.dll - [[Advanced Configuration and Power Interface|ACPI]] PC
 
*halapic.dll - APIC PC
 
*halmacpi.dll - マルチプロセッサACPI PC
 
*halmps.dll - マルチプロセッサPC
 
*halsp.dll - Compaq SystemPro
 
*halborg.dll - Sillicon Graphics Workstation
 
等、幾つかのHALが存在していた。HALはOSインストール時に自動的に選択される。
 
 
== Windows NT系サービス ==
 
{{See also|Windowsサービス}}
 
NT系列のOSは当初より従来の[[Windows 9x系]]には見られない「サービス」という概念を採用している。基本的には[[UNIX]]の[[デーモン (ソフトウェア)|デーモン]]とそれらをコントロールする体系([[遠隔操作|RC]])を統合したものである。サブシステムと似ているが必ずしもカーネルと密に連携を取る必要はない点が異なっており、マイクロカーネルにおけるサーバプログラムも含まれている。[[サーバ]]プログラム、[[クライアント (コンピュータ)|クライアント]]プログラム、[[コンピュータセキュリティ|セキュリティ]]管理、[[プロトコル]]スタック、デバイスドライバ、ファイルシステム、仮想マシンマネージャ等は全部サービスとして構成されている。
 
 
サービスとしてシステムに組み込まれているモジュール群は標準状態で100を超えるが、そのうち常時稼動しているサービスは20–30個であり、全サービスが常に起動しているわけではない。
 
 
サービスのメリットは、オペレーティングシステムの構成要素をモジュール化し運用上必要なサービスを精査して管理することで、セキュリティを向上させ[[リソース]]の無駄を排除しシステムのパフォーマンスを高められることなどである。
 
 
サービスは、特定のユーザーのもとで動作する。一般的には、サービス用として用意された次のユーザーのいずれかを用いる<ref>{{Cite web
 
|date=2011-06-10
 
|url=http://msdn.microsoft.com/en-us/library/ms686005(VS.85).aspx
 
|title=Service User Accounts (Windows)
 
|work=MSDNライブラリ
 
|publisher=マイクロソフト
 
|language=英語
 
|accessdate=2011-08-07
 
}}</ref>。なお、LocalSystem以外はWindows XPで新設された。
 
;LocalService
 
:下2つに当てはまらないほとんどのサービスに適する。
 
;NetworkService
 
:Windowsネットワークへのアクセスの際、コンピュータ自身のアカウントで認証を受けられる点がLocalServiceと異なる(この点、LocalServiceでは権限の低い匿名アクセスとなる)。
 
;LocalSystem
 
:ユーザーモードにおいて最も強力なSYSTEM権限のもと動作する。システム全体に影響を与えるようなサービスで使用する。
 
それ以外のユーザー権限を割り当てることも可能である。これには、サービスがアクセスできる範囲を限定しセキュリティを高める効果がある。例えば、不特定多数からアクセスが予想されるサービスに特定のディレクトリへのみアクセスを許可し、それ以外は不許可にしたとする。こうすることにより読み取られたくないファイルへのアクセスが抑制できる。これらの管理権限の管理は各種資源が持つ[[アクセス制御リスト]]への適切な編集が必要である。
 
 
サービスの管理をWindows NT 4.0までは「コントロールパネル」で、Windows 2000以降では「サービスマネージャ」によって行える。NT 4.0まではNTサービスという名称であり、Windows 2000からWindowsサービスに名称が変更された。
 
 
== デバイスドライバ ==
 
ユーザーやシステムからハードウェアへのI/Oをそのハードウェア固有の機能から抽象化するものと、システムサービスを提供するものと両方ある。64ビット版Windowsでは、セキュリティと動作の安定性向上のため<ref>Windows XPでのクラッシュの原因の半数以上をデバイスドライバが占めている。残るクラッシュ理由の大半はアンチウイルスソフトウエアのカーネルモードプログラムの誤動作である。</ref>原則としてデバイスドライバの署名が必須とされている<ref>{{Cite web
 
|author=マイクロソフト
 
|authorlink=マイクロソフト
 
|date=2008-07-08
 
|url=http://support.microsoft.com/kb/946765/en-us
 
|title=A description of the differences between 32-bit versions of Windows Vista and 64-bit versions of Windows Vista
 
|work=サポート技術情報
 
|language=英語
 
|accessdate=2009-02-13
 
}}</ref>。NT 4.0まではWindows NT[[カーネル]]モードドライバが使われ、Windows 2000以降は[[Windows Driver Model]]が使われている。WDMはWindows 98やWindows Meでも同じソースコードでドライバが開発できるように作られている。
 
 
== 32ビットと64ビット ==
 
32ビット版 (x86) と64ビット版 (x64/IA-64) では、CPUやメモリの制約が異なる<ref>{{Cite web
 
|author=マイクロソフト
 
|authorlink=マイクロソフト
 
|date=2009-01-15
 
|url=http://msdn.microsoft.com/en-us/library/aa366778.aspx
 
|title=Memory Limits for Windows Releases
 
|work=[[MSDN ライブラリ]]
 
|language=英語
 
|accessdate=2009-02-13
 
}}</ref>。
 
 
{| class="wikitable" style="text-align:left"
 
|+ CPUやメモリの制約
 
! 制約 !! x86 !! x64
 
|-
 
| 全仮想アドレス空間 || 4GB || 16TB / 256TB(注8)
 
|-
 
| 32ビットプロセスごとの仮想アドレス空間 || 2GB  / 3GB(注1) || 2GB / 4GB(注2)
 
|-
 
| 64ビットプロセスごとの仮想アドレス空間 || N/A || 8TB / 128TB(注8)
 
|-
 
| Paged Pool(カーネルメモリ)|| 470MB / 650MB(注3) / 2GB(注4) || 128GB / 384GB(注7) / 15.5TB(注8)
 
|-
 
| Non-Paged Pool(カーネルメモリ)|| 256MB / 128MB(注5) / 2GB(注4)|| 128GB / 16TB(注8)
 
|-
 
| システムキャッシュ || 512MB / 432MB(注5) / 960MB(注6) / 2GB(注4) || 1TB / 16TB(注8)
 
|-
 
| [[Microsoft Windows XP|Windows XP]]での上限物理メモリ || 4GB || 128GB
 
|-
 
| Windows XPでの上限CPU数 || 2 || 2
 
|}
 
 
* 注1 - アプリケーションが /LARGEADDRESSAWARE オプションをつけてコンパイルし、OSの起動オプションとして /3GB スイッチを boot.ini に追加した場合
 
* 注2 - アプリケーションが /LARGEADDRESSAWARE オプションをつけてコンパイルされている場合
 
* 注3 - [[Microsoft Windows Server 2003|Windows Server 2003]] SP1 の場合
 
* 注4 - [[Microsoft Windows Vista|Windows Vista]]以降の場合
 
* 注5 - OSの起動オプションとして /3GB スイッチを boot.ini に追加した場合
 
* 注6 - LargeSystemCacheレジストリを1に設定した場合
 
* 注7 - [[Microsoft Windows 8|Windows 8]]以降の場合
 
* 注8 - [[Microsoft Windows 8.1|Windows 8.1]]以降の場合
 
 
32ビット Windows において、[[Microsoft Windows 2000|Windows 2000 Professional]]、Windows XP、[[Microsoft Windows Vista|Windows Vista]] や [[Microsoft Windows 7|Windows 7]]、[[Microsoft Windows 8|Windows 8]]など、パソコン向けのOSでは4GB(実際は約3.2GBまで)が上限物理メモリとなっているが<ref>{{Cite web
 
|author=マイクロソフト
 
|authorlink=マイクロソフト
 
|date=2008-06-13
 
|url=http://support.microsoft.com/kb/929605/ja
 
|title=4 GB の RAM が搭載されている場合、Windows Vista の &#x5b;システム情報&#x5d; ダイアログ ボックスで報告されるシステム メモリが予想より小さい
 
|work=サポート技術情報
 
|accessdate=2008-02-13
 
}}</ref><ref>{{Cite web
 
|author=マイクロソフト
 
|authorlink=マイクロソフト
 
|date=2008-03-12
 
|url=http://support.microsoft.com/kb/946003/ja
 
|title=Windows Vista SP1 では、システムに 4 GB のメモリが搭載されている場合、システム メモリ (RAM) が 4 GB と報告される
 
|work=サポート技術情報
 
|accessdate=2009-02-13
 
}}</ref>、Windows Server ではエディションによっては 128GB まで使える。また、[http://msdn.microsoft.com/en-us/library/aa366527.aspx Address Windowing Extensions]を使うと4GBよりも大きなメモリにアクセスできる。さらに、[[Physical Address Extension]]を使い、OSの管理下にない4GBよりも大きなメモリに直接アクセスしてしまうソフトウェアも存在する。<ref>一例として、[[RAMディスク#ソフトウェアによるRAMディスク|RAMディスク]]ソフトウェアなど。</ref>
 
 
== 脚注 ==
 
{{脚注ヘルプ}}
 
{{Reflist}}
 
 
== 関連項目 ==
 
*[[OS/2]]
 
*[[Microsoft Windows]]
 
*[[Windows 9x系]]
 
 
== 外部リンク ==
 
* [http://support.microsoft.com/kb/160605/ja {NT} 再起動後のエラー OS/2 !! SYS01475]
 
* [http://pc.watch.impress.co.jp/docs/2007/0111/hot464.htm 元麻布春男の週刊PCホットライン]
 
* [http://www.geocities.co.jp/SiliconValley-Cupertino/6138/computer/os/more/his_w.html Windowsの歴史 OS - ぐうたら感謝の日(コンピュータ編)]
 
  
 
{{Windows}}
 
{{Windows}}
 
+
{{テンプレート:20180815sk}}
 
[[Category:Windows NT系|*]]
 
[[Category:Windows NT系|*]]

2018/8/29/ (水) 18:00時点における最新版

Windows NT系(ウィンドウズ エヌティけい

マイクロソフトが開発したWindows NTアーキテクチャに基づいて製作されたOSの総称。

遅くとも Windows 98/98SE/me のサポートが終了した2006年以降から2018年現在に至る Windows の主流系統となっている。MS-DOSを基に拡張・発展してきたWindows 9x系とは全く異なった構造をしており、9x系とは分けて考えるときに、NT系と定義する。

広義の「Windows NT」として、Windows NT系という言葉が用いられる。




楽天市場検索: