(Translated by https://www.hiragana.jp/)
Windows NT系 - Wikipedia コンテンツにスキップ

Windows NTけい

出典しゅってん: フリー百科ひゃっか事典じてん『ウィキペディア(Wikipedia)』
Microsoft > Microsoft Windows > Windows NTけい

Windows NTけい(ウィンドウズ エヌティーけい)はマイクロソフト開発かいはつしたWindows NTアーキテクチャもとづいて製作せいさくされたオペレーティングシステム (OS) の総称そうしょうおそくとも Windows 98/98SE/Me のサポートが終了しゅうりょうした2006ねん以降いこうから2024ねん現在げんざいいたWindows主流しゅりゅう系統けいとうとなっている。MS-DOSもと拡張かくちょう発展はってんしてきたWindows 9xけいとはまったことなった構造こうぞうをしており、9xけいとはけてかんがえるときに、NTけい定義ていぎする。

バージョンの変遷へんせん

[編集へんしゅう]

以下いかのオペレーティングシステムがNTけい該当がいとうする。なお、発売はつばいねん最初さいしょ発売はつばいされた言語げんごばんとエディションを記載きさいする。

NT Ver. RTM Build プロダクトめい エディション、および備考びこう 発売はつばいねん
NT 3.1 528 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 1995ねん
NT 4.0 1381 Windows NT 4.0 Workstation, Server, Server Enterprise Edition, Terminal Server, Embedded 1996ねん
NT 5.0 2195 Windows 2000 Professional, Server, Advanced Server, Datacenter Server 2000ねん
NT 5.1 ? Windows Server Limited Edition Advanced Server[1], Datacenter Server[2] 2001ねん
2600 Windows XP Home, Professional, Media Center, Tablet PC, Starter, Embedded
Windows Fundamentals for Legacy PCs N/A 2006ねん
NT 5.2 3790 Windows Server 2003 Standard, Enterprise, Datacenter, Web, Storage, Small Business Server, Compute Cluster Server 2003ねん
Windows XP (64ビット) 64-bit Edition, Professional x64 Edition 2003ねん, 2005ねん
Windows Home Server N/A 2007ねん
NT 6.0 6000
6001(SP1)
6002(SP2)
Windows Vista Starter, Home Basic, Home Premium, Business, Enterprise, Ultimate 企業きぎょう:
2006ねん
一般いっぱん消費しょうひしゃ:
2007ねん
6001(SP1)
6002(SP2)
Windows Server 2008 Standard, Enterprise, Datacenter, Web, Foundation, Itanium-based Systems, Storage, Small Business Server 2008ねん
NT 6.1 7600
7601(SP1)
Windows 7 Starter, Home Basic, Home Premium, Professional, Enterprise, Ultimate 2009ねん-2011ねん
(DSPばんは2009ねん-2017ねん
Windows Server 2008 R2 Standard, Enterprise, Datacenter, Web, Foundation, Itanium-based Systems
Windows MultiPoint Server 2010 N/A
Windows Small Business Server 2011 Standard N/A
Windows Home Server 2011 N/A
Windows MultiPoint Server 2011 Standard, Premium
Windows Small Business Server 2011 Essentials N/A
NT 6.2 9200 Windows 8 Windows 8(無印むじるし(Core)) , Windows 8 Pro, Windows 8 Enterprise, Windows RT 2012ねん-2013ねん
Windows Server 2012 Datacenter, Standard, Essentials, Foundation, Storage, Hyper-V
Windows MultiPoint Server 2012 Standard, Premium
NT 6.3 9600 Windows 8.1 Windows 8、およびWindows RTのメジャーアップデート 2013ねん-2015ねん
Windows Server 2012 R2 Datacenter, Standard, Essentials, Foundation, Storage, Hyper-V
NT 6.4 なし Windows Technical Preview Home, Pro, Enterprise 2014ねん
NT 10.0 10240(1507)
10586(1511)
14393(1607)
15063(1703)
16299(1709)
17134(1803)
17763(1809)
18362(1903)
18363(1909)
19041(2004)
19042(20H2)
19043(21H1)
19044(21H2)
19045(22H2)
Windows 10
Windows 10 Mobile
Windows 10 IoT
Home, Pro, Enterprise, Education
Mobile, Mobile Enterprise
IoT Enterprise, IoT Core,

Pro For Workstations

2015ねん-2021ねん
(DSPばんは2015ねん-2022ねん)
14393 Windows Server 2016 Standard, Essentials, Datacenter, Storage, Hyper-V 2016ねん
17763 Windows Server 2019 Standard, Essentials, Datacenter, Hyper-V 2018ねん
20348 Windows Server 2022 Standard, Datacenter 2021ねん-現在げんざい
22000(21H2)
22621(22H2)
22631(23H2)
Windows 11 Home, Pro, Education, Pro For Workstations, Enterprise, IoT Enterprise

クライアント製品せいひんとサーバ製品せいひん呼称こしょう

[編集へんしゅう]

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/Itanium2専用せんようのWindows Advanced Server/Datacenter Server, Limited Editionをて、XPにおくれるかたちでWindows Server 2003としてことなるラインナップの位置付いちづけにあらたまっている。

歴史れきし

[編集へんしゅう]

マイクロソフトはMS-DOSの後継こうけいOSとしてOS/2IBM共同きょうどう開発かいはつしており、1980年代ねんだいすえにはOS/2 3.0の開発かいはつおも担当たんとうしていたが、契約けいやく関係かんけい開発かいはつすすかたとうにおいてIBMがわとしばしば対立たいりつ、プロジェクトの進捗しんちょくおおきく停滞ていたいする状況じょうきょうとなっていた。

そこでビル・ゲイツ事態じたい打開だかいさくとしてプロジェクトマネージャーを社外しゃがいさがし、当時とうじDEC在籍ざいせきしていたデヴィッド・カトラー抜擢ばってきした。カトラーはDECのVAXマシンようOSであるVMS開発かいはつしゃとしてげた人物じんぶつである。カトラーは当初とうしょOS/2 3.0のプロジェクトに参加さんかしたが、難航なんこうするIBMとの交渉こうしょう過程かていでOS/2に事実じじつじょう見切みきりをつけ、のちにNTと名付なづけられることになるしんOS開発かいはつ水面すいめん推進すいしんするようになった。それはかれがかつてDECでがけたVMSのアーキテクチャを基礎きそとするきわめて近代きんだいてき構成こうせいでポータビリティのたかいOS[1]であった。

OS/2次期じきバージョンの開発かいはつ遅延ちえんするなかで、マイクロソフトはストップギャップとして80386搭載とうさいマシンをおもなターゲットとして開発かいはつしていたWindows 3.01990ねん発売はつばいする。この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シェル[2]かぶせ、またそこで実装じっそうされていた16ビットWindows API (Win16) との互換ごかんせいたせたOSを自社じしゃ開発かいはつすることとし、1993ねんにはNTけいだいいちだんとなるWindows NT 3.1の発売はつばいたした。

NTはきわめてコンパクトなマイクロカーネル、サブシステムの概念がいねん導入どうにゅうし、Win32、OS/2、POSIXのサブシステムをユーザ空間くうかん配置はいちした。サブシステムで致命ちめいてき問題もんだいきてもクラッシュばれるシステム全体ぜんたい破綻はたんこさない、当時とうじPC動作どうさするOSとしては画期的かっきてきなシステムであった。しかしこの構造こうぞう当時とうじのPCには負荷ふかおおきく、結果けっかとしておもいOSとひょうされることになる。ことにバージョン3.1リリースにはプログラムの最適さいてき不十分ふじゅうぶんであったこともあって当時とうじ標準ひょうじゅんてきなPC環境かんきょうよりもはるかに過大かだいなメモリを必要ひつようとした[3]ため、「メモリ・イーター」[4]との不名誉ふめいよばれかたをされたこともあった。

当初とうしょおもいOSにPCがわ性能せいのうがついていかず、このあたらしいOSをビジネスPCようOSの後継こうけいにしようというマイクロソフトの目論もくろみは失敗しっぱいした。しかし、NT 3.1、NT 3.5につづいて発表はっぴょうした NT 3.51において、ときをほぼおなじくしてリリースしたWindows 95をクライアントとしたサーバOSとしての性格せいかく強調きょうちょうするマーケティングおこな[5]NetWare牙城がじょうであったNOS市場いちば足場あしば確保かくほすることに成功せいこうした。

バージョンアップをかさねるさいにマイクロカーネル概念がいねん一部いちぶ放棄ほうきしてWin32サブシステムやグラフィクス・デバイスドライバ論理ろんりそうなどをカーネル空間くうかん展開てんかいしてスループット向上こうじょうするなど、おもいオペレーティングシステムという汚名おめい払拭ふっしょくするためのいくつもの改修かいしゅうおこなわれた。UNIXnfsカーネルうち実装じっそうしてスループット向上こうじょうさせる技術ぎじゅつ参考さんこうに、ファイルサーバとしての性能せいのう向上こうじょうはかった。OSI参照さんしょうモデルならったプロトコルスタックはいBSD単純たんじゅんかつ高性能こうせいのうなプロトコルスタックをれたWinsock 2とあたらしいプロトコルスタックの搭載とうさいはネットワーク性能せいのう大幅おおはば向上こうじょうさせた[6]日々ひび進歩しんぽするUNIXやBSDは、マイクロソフトにとってかせぬ教材きょうざいであったともえよう。あわせてNTに本格ほんかくてき対応たいおうしたしんバージョンのVisual C++がリリースされ、サードパーティーやソフトハウスがNTけアプリケーションの開発かいはつ本格ほんかくてきおこなえるようになった。当時とうじ大変たいへん人気にんきのあったMMORPG Diablo安定あんていして動作どうさし、TCP/IPによるイントラネットインターネット接続せつぞくによるネットワークプレイが実現じつげんできたのは、これらの改修かいしゅうによる。

そのもマイクロソフトはデスクトップよう業務ぎょうむようOSの後継こうけいとしてもみをはかるが、当時とうじWindows 95からサポートがはじまりゲーム市場いちば急速きゅうそく普及ふきゅうはじめていたDirectX対応たいおう不十分ふじゅうぶんであった[7]こともあって一部いちぶITプロフェッショナルをのぞいては市場いちば浸透しんとうせず、2000ねんにリリースしたWindows 2000においても、技術ぎじゅつしゃあいだ支持しじるにとどまった。Windows 2000がみとめられたのは、Windows 9xシリーズのプラグアンドプレイACPIひとし電源でんげん管理かんり機能きのうUSBへの対応たいおうなどユーザビリティたか機能きのう実装じっそうしたことと、DirectXのサポートやマルチメディア機能きのう強化きょうかされたこと、それにこのころにはハードウェア性能せいのうがNTけいOSのおもさを問題もんだいとしない(つまりおもたくない)レベルにまで向上こうじょうしていたことによるとかんがえられる[独自どくじ研究けんきゅう?]

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のサーバーエディションで問題もんだいとなった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が統合とうごう共通きょうつうされた。

動作どうさプラットフォーム

[編集へんしゅう]
Windows NTけい対応たいおうしているプラットフォーム
ブランドめい
バージョン
x86 x64 IA-64 Alpha / MIPS PowerPC ARM32 ARM64
NT 3.1 対応たいおう[* 1] N/A N/A 対応たいおう 対応たいおう 対応たいおう 対応たいおう
NT 3.5 対応たいおう[* 1] N/A N/A 対応たいおう 対応たいおう 対応たいおう 対応たいおう
NT 3.51 対応たいおう[* 1] N/A N/A 対応たいおう 対応たいおう 対応たいおう 対応たいおう
NT 4.0 対応たいおう[* 1][* 2] N/A N/A 対応たいおう 対応たいおう 対応たいおう 対応たいおう
2000
NT 5.0
対応たいおう[* 1][* 2] N/A N/A 対応たいおう 対応たいおう 対応たいおう 対応たいおう
XP (32ビット)
NT 5.1
対応たいおう N/A 一部いちぶ[* 3] 対応たいおう 一部いちぶ[* 4] 対応たいおう 対応たいおう
XP (64ビット), Server 2003
NT 5.2
一部いちぶ[* 3] 対応たいおう 対応たいおう 対応たいおう 対応たいおう 対応たいおう 対応たいおう
Vista, Server 2008
NT 6.0
対応たいおう 対応たいおう 一部いちぶ[* 3] 対応たいおう 対応たいおう 対応たいおう 対応たいおう
7, Server 2008 R2
NT 6.1
一部いちぶ[* 5] 対応たいおう 一部いちぶ[* 3] 対応たいおう 対応たいおう 対応たいおう 対応たいおう
8/8.1, Server 2012/2012 R2
NT 6.2/6.3
一部いちぶ[* 5] 対応たいおう 対応たいおう 対応たいおう 対応たいおう 一部いちぶ[* 5] 対応たいおう
10, Server 2016-2022
NT 10.0.21390 まで
一部いちぶ[* 5] 対応たいおう 対応たいおう 対応たいおう 対応たいおう 一部いちぶ[* 6] 一部いちぶ[* 7]
11, Server 2025
NT 10.0.21996 から
対応たいおう 対応たいおう 対応たいおう 対応たいおう 対応たいおう 対応たいおう 対応たいおう[* 8]
  1. ^ a b c d e PC-9800シリーズをふく
  2. ^ a b SGI Visual Workstation 320/540をふく
  3. ^ a b c d サーバのみ、クライアントけは対応たいおう
  4. ^ 初期しょきの Xbox 360 ようのソフトウェア開発かいはつ環境かんきょうとして提供ていきょう
  5. ^ a b c d クライアントのみ、サーバけは対応たいおう
  6. ^ モバイルおよびエンベデッドけの一部いちぶのみ、デスクトップおよびサーバけは対応たいおう
  7. ^ サーバーけは対応たいおう。ただし、Microsoft社外しゃがいには非公開ひこうかいのものが存在そんざいする。[8]
  8. ^ Windows Serverは2025からARM64に対応たいおう

3.x以前いぜんならびに9xけいのWindowsではx86アーキテクチャしぼって設計せっけいされたが、Windows NTについては開発かいはつ当初とうしょから様々さまざまなCPUアーキテクチャで動作どうささせることを考慮こうりょしており、カーネルは移植いしょくせいたか設計せっけいとなっている。

NT 3.1と3.5では、PC-9800シリーズもちいおよびFMRシリーズようふくむ32ビットのx86(IA-32)ばんMIPS RシリーズばんAlphaはんがリリースされた。これらはARCアーキテクチャのワークステーションで動作どうさするもので、x86はんにおいてもBOOT.INIの記法きほうや「システムパーティション」、「ブートパーティション」といった起動きどう関係かんけい用語ようごなどに影響えいきょうあたえている。また、NT 3.51と4.0ではPowerPCはんもリリースされ、PowerPCを搭載とうさいしたIBMThinkPad Power Seriesでも動作どうさした。このほか、Clipperアーキテクチャ英語えいごばんSPARC移植いしょくされたが、リリースされなかった[9][10]

Windows 2000 (NT 5.0) ではAlphaばん開発かいはつおこなわれたもののβべーた3で開発かいはつ中止ちゅうしされたため発売はつばいにはいたらず、製品せいひんばんではデータセンターエディションにIA-64はんをリリースした以外いがいはインテル・アーキテクチャけいのみの提供ていきょうとなった。Windows Server 2008 R2 (NT 6.1)では、IA-32に対応たいおうとなった[11]同時どうじにIA-64への対応たいおう終了しゅうりょうすることがあきらかとなっている[12]

のちにマイクロソフトがXbox 360でPowerPCを採用さいようしたさい搭載とうさいされるOSはPowerPCばんWindows NTの資産しさん利用りようしたのではないかとの憶測おくそくながれたが、マイクロソフトはこれを否定ひていし、x86を採用さいようしたXbox初代しょだいのOSをあらたにPowerPCに移植いしょくしたものであるとしている[13]。Xbox 360の開発かいはつ環境かんきょうとして、PowerPC G5搭載とうさいするAppleせいPower MacにPowerPCようあらたに移植いしょくされたWindows XP (NT 5.1) が搭載とうさいされているが、市販しはんはされていない。

Windows RTタブレットコンピュータおお採用さいようされているARMアーキテクチャでNTカーネルが動作どうさするように開発かいはつされたものである。

2016ねん12月、ARM64への対応たいおう発表はっぴょうされた[14]

セキュリティ

[編集へんしゅう]

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指定していできる。これはWindows NTけいOSの最大さいだいセキュリティホールである。なぜなら、セキュリティ記述きじゅつがないオブジェクトはだれでもアクセスできるからである。たとえば名前なまえきイベントオブジェクトであればだれでもそのイベントをたたいてイベントを発生はっせいさせることが可能かのうであるし、名前なまえきパイプなどであれば勝手かってにオープンして勝手かってなデータをながむといったことが可能かのうとなってしまう。

ユーザーモード

[編集へんしゅう]
Windows 2000アーキテクチャのブロックダイアグラム

ユーザーモードには、ユーザーが利用りようするアプリケーションやWindowsのサブシステム、システムプロセスの一部いちぶ配置はいちされるメモリ領域りょういきう。ユーザーモードの権限けんげんのもとでは、ハードウェアやカーネルモードプロセス、カーネルモードにあるメモリへのアクセスはできない。

サブシステム

[編集へんしゅう]

かくアプリケーションの実行じっこう環境かんきょう提供ていきょうする。

Win64サブシステム

[編集へんしゅう]

Windows XPをふくめそれ以降いこうの64ビットばんでは、Win64サブシステムが基本きほんとなる。Win32サブシステムはWOW64機能きのうもちいて実装じっそうされる。

Win32サブシステム

[編集へんしゅう]

Windows NTけい基本きほんてきなサブシステムである。

Win16サブシステム

[編集へんしゅう]

従来じゅうらいのMS-DOS/Windows 3.1系列けいれつのソフトウェアを動作どうささせるためのサブシステムであり、WoW(Win16 on Win32)機能きのうにより互換ごかんせいたもつようになっている。

Vista以降いこうでは英語えいごばん相当そうとう機能きのう提供ていきょうされているが、日本語にほんごばん独自どくじ機能きのう提供ていきょうされていない[15]

厳密げんみつうとサブシステムの本体ほんたい仮想かそう86モード、286プロテクトモード、386プロテクトモードをハンドリングする仮想かそうマシンモニタNTVDM (NT Virtual DOS Machine) で、WOWはNTVDMがトラップしたWin16 APIしをWin32 APIにえをおこなうグループログラムである。NTVDMは16ビットDOSシステムコールとWin16 APIを動作どうささせることにとくした実装じっそうとなっており、たとえばVESA VGA BIOSなどはサポートしていない[16]。このことは初期しょきのDOS+Windows環境かんきょうしたでDOSアプリケーションとWindowsアプリケーションをとも利用りようしていたユーザーがNTへえるさいおおきなかべとなった。

すべての64ビットWindowsでWin16サブシステムは搭載とうさいされていない。とくにx64の場合ばあいLongモード、つまり64ビット命令めいれいセットが利用りよう可能かのう状態じょうたいでの動作どうさに、16ビット命令めいれいセットの動作どうさ必要ひつよう仮想かそう86モードがサポートされなくなったという事情じじょうもある。

OS/2サブシステム

[編集へんしゅう]

初期しょきOS/2プログラムを動作どうささせるためのサブシステムである。セキュリティめんからこのサブシステムは停止ていしすることがのぞましいとされる。Windows XPおよびWindows Server 2003以降いこうではサポートされていない[17]

POSIXサブシステム

[編集へんしゅう]

POSIX互換ごかんのサービスを提供ていきょうするためのサブシステムである。米国べいこく政府せいふ納入のうにゅうするためにこのサブシステムを実装じっそうしなければならなかったとされ、あまり積極せっきょくてき利用りようされなかった。OS/2サブシステムとおなじく、Windows XPおよびWindows Server 2003以降いこうではサポートされておらず、つぎべるInterixサブシステムにってわっている。

INTERIXサブシステム

[編集へんしゅう]

POSIX互換ごかんのサービスを提供ていきょうするためのサブシステムである。Windows NT標準ひょうじゅんのPOSIXサブシステムの不備ふび解消かいしょうするため、Softway Systemsしゃ(1999ねん9がつ17にち、Microsoftしゃ吸収きゅうしゅう合併がっぺい)が開発かいはつしたOpenNT起源きげんとする。のちUnixライクな環境かんきょう提供ていきょうするServices for UNIX標準ひょうじゅん搭載とうさいされ、Windows NTけいOS にネイティブでこう品質ひんしつPOSIX環境かんきょう提供ていきょうされることとなった。Windows Vistaの上位じょういパッケージやWindows Server 2003よりSUA (Sub-system for UNIX-Based Applications)として標準ひょうじゅん搭載とうさいされる。Windows NTに依存いぞんした部分ぶぶんがいくつか存在そんざいし、コンパイルするさいソースコードえが必要ひつようとなることがある。しまれつつもWindows 8.1 / Windows Server 2012 R2よりInterixサブシステムは廃止はいしされた。代替だいたい手段しゅだんとしてHyper-V利用りようした仮想かそうUnix環境かんきょう、もしくはCygwin利用りよう推奨すいしょうされている。

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カーネル

[編集へんしゅう]

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

[編集へんしゅう]

HALをのぞくカーネルモードで動作どうさするプログラムをハードウェアから分離ぶんりするそうである。カーネルとの分離ぶんり理想りそうだが、HALはカーネルと共存きょうぞん関係かんけいにある。また、ごくわずかのx86よう命令めいれいふくまれている(カーネルでエミュレートされる)。NTカーネルとHALは独立どくりつしておらず、NTカーネルがハードウェアに直接ちょくせつアクセスをおこなうこともあったが、Windows VistaからNTカーネルとHALの依存いぞん関係かんけいくなり、hal.dllに統一とういつされた。

  • hal.dll - 標準ひょうじゅんてきなPC
  • halaacpi.dll - APIC ACPI PC
  • halacpi.dll - 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けいサービス

[編集へんしゅう]

NT系列けいれつのOSは当初とうしょより従来じゅうらいWindows 9xけいにはられない「サービス」という概念がいねん採用さいようしている。基本きほんてきにはUNIXデーモンとそれらをコントロールする体系たいけいRC)を統合とうごうしたものである。サブシステムとているがかならずしもカーネルとみつ連携れんけい必要ひつようはないてんことなっており、マイクロカーネルにおけるサーバプログラムもふくまれている。サーバプログラム、クライアントプログラム、セキュリティ管理かんりプロトコルスタック、デバイスドライバ、ファイルシステム、仮想かそうマシンマネージャとう全部ぜんぶサービスとして構成こうせいされている。

サービスとしてシステムにまれているモジュールぐん標準ひょうじゅん状態じょうたいで100をえるが、そのうち常時じょうじ稼動かどうしているサービスは20–30であり、ぜんサービスがつね起動きどうしているわけではない。

サービスのメリットは、オペレーティングシステムの構成こうせい要素ようそをモジュール運用うんようじょう必要ひつようなサービスを精査せいさして管理かんりすることで、セキュリティを向上こうじょうさせリソース無駄むだ排除はいじょしシステムのパフォーマンスをたかめられることなどである。

サービスは、特定とくていのユーザーのもとで動作どうさする。一般いっぱんてきには、サービスようとして用意よういされたつぎのユーザーのいずれかをもちいる[18]。なお、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では、セキュリティと動作どうさ安定あんていせい向上こうじょうのため[19]原則げんそくとしてデバイスドライバの署名しょめい必須ひっすとされている[20]。NT 4.0まではWindows NTカーネルモードドライバが使つかわれ、Windows 2000以降いこうWindows Driver Model使つかわれている。WDMはWindows 98やWindows Meでもおなじソースコードでドライバが開発かいはつできるようにつくられている。

32ビットと64ビット

[編集へんしゅう]

32ビットばん (x86) と64ビットばん (x64/IA-64) では、CPUやメモリの制約せいやくことなる[21]

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)
Windows XPでの上限じょうげん物理ぶつりメモリ 4GB 128GB
Windows XPでの上限じょうげんCPUすう 2 2
  • ちゅう1 - アプリケーションが /LARGEADDRESSAWARE オプションをつけてコンパイルし、OSの起動きどうオプションとして /3GB スイッチを boot.ini に追加ついかした場合ばあい
  • ちゅう2 - アプリケーションが /LARGEADDRESSAWARE オプションをつけてコンパイルされている場合ばあい
  • ちゅう3 - Windows Server 2003 SP1 の場合ばあい
  • ちゅう4 - Windows Vista以降いこう場合ばあい
  • ちゅう5 - OSの起動きどうオプションとして /3GB スイッチを boot.ini に追加ついかした場合ばあい
  • ちゅう6 - LargeSystemCacheレジストリを1に設定せっていした場合ばあい
  • ちゅう7 - Windows 8以降いこう場合ばあい
  • ちゅう8 - Windows 8.1以降いこう場合ばあい

32ビット Windows において、Windows 2000 Professional、Windows XP、Windows VistaWindows 7Windows 8など、パソコンけのOSでは4GB(実際じっさいやく3.2GBまで)が上限じょうげん物理ぶつりメモリとなっているが[22][23]、Windows Server ではエディションによっては 128GB まで使つかえる。また、Address Windowing Extensions使つかうと4GBよりもおおきなメモリにアクセスできる。さらに、Physical Address Extension使つかい、OSの管理かんりにない4GBよりもおおきなメモリに直接ちょくせつアクセスしてしまうソフトウェアも存在そんざいする。[24]

脚注きゃくちゅう

[編集へんしゅう]
  1. ^ ただし、この時点じてんではGUIの実装じっそう基本きほん構想こうそうになく、MS-DOSなどと同様どうようのコマンドライン入力にゅうりょくによるCUIのみをそなえるものとして計画けいかくされていた。
  2. ^ 実際じっさいには平行へいこうして開発かいはつすすめられていたWindows 3.1にじゅんじたものとなった。
  3. ^ 一般いっぱんてきなPCのメモリ搭載とうさいりょうが8MB前後ぜんこうであった時期じきに、最低さいていでも32MBのメモリ搭載とうさい要求ようきゅうされた。
  4. ^ Memory eater:直訳ちょくやくすれば「メモリをらうもの」。「メモリを浪費ろうひするやつ」という揶揄やゆてき表現ひょうげん
  5. ^ それだけでなく実装じっそうAPIの修正しゅうせいおこない、ハードウェア依存いぞんせいたかいゲームやシステムけいソフトウェアなどをのぞ一般いっぱんてきなWindows 95ようアプリケーションの大半たいはん動作どうさ可能かのうなよう改良かいりょうされていた。
  6. ^ NT 3.1のTCP/IPネットワーク能力のうりょくは9,600bpsのモデム程度ていどであった。
  7. ^ NT 4.0ではSP3でDirectX 3が限定げんていてきにサポートされたが、DirectX 5以降いこうへの対応たいおうおこなわれなかった。
  8. ^ ARMサーバでうごく「Windows Server」Q&A--マイクロソフトにく - ZDNet Japan” (2017ねん3がつ15にち). 2019ねん8がつ21にち閲覧えつらん
  9. ^ Windows Mobile ベースの移植いしょく可能かのうなアプリケーションの構築こうちく” (2006ねん4がつ18にち). 2017ねん3がつ12にち閲覧えつらん。 “Windows NT は、つぎのプロセッサ アーキテクチャじょう実行じっこうできました。 Intel IA-32 x86 Digital Equipment Corporation(DEC)Alpha MIPS R4000 PowerPC Intergraph Clipper(一般いっぱんにはリリースされていません) SPARC(一般いっぱんにはリリースされていません)”
  10. ^ Intergraph Announces Port of Windows NT to SPARC Architecture”. The Florida SunFlash (1993ねん7がつ7にち). 2017ねん3がつ12にち閲覧えつらん
  11. ^ マイクロソフト. “Windows Server 2008 R2 概要がいよう”. 2009ねん2がつ13にち閲覧えつらん
  12. ^ 金子かねこ拓郎たくろう (2010ねん4がつ7にち). “マイクロソフト、Itaniumのサポートりへ”. ASCII.jp. 2011ねん8がつ7にち閲覧えつらん。 “引用いんようぶん
  13. ^ 後藤ごとうひろししげるのWeekly海外かいがいニュース■ Xbox 360のキーパースンJ Allardく(前編ぜんぺん)
  14. ^ 笠原かさはら一輝いっき (2016ねん12月8にち). “詳報しょうほう】Win32アプリがうごく“ARMばんWindows 10”はフル機能きのう搭載とうさい完全かんぜんなるWindows 10 ~デモでPhotoshopを動作どうささせる”. PC Watch. インプレス. 2017ねん6がつ4にち閲覧えつらん
  15. ^ Windows開発かいはつ統括とうかつ Windows Vista における 16 ビットサポート” (2006ねん6がつ16にち). 2006ねん7がつ1にち時点じてんオリジナルよりアーカイブ。2013ねん8がつ21にち閲覧えつらん
  16. ^ そのため、VESA VGA BIOSの機能きのう利用りようしていたゲームソフトなどは正常せいじょう動作どうさしない。
  17. ^ Windows XP および Windows Server 2003 では POSIX と OS/2 がサポートされていない
  18. ^ Service User Accounts (Windows)” (英語えいご). MSDNライブラリ. マイクロソフト (2011ねん6がつ10日とおか). 2011ねん8がつ7にち閲覧えつらん
  19. ^ Windows XPでのクラッシュの原因げんいん半数はんすう以上いじょうをデバイスドライバがめている。のこるクラッシュ理由りゆう大半たいはんはアンチウイルスソフトウエアのカーネルモードプログラムの誤動作ごどうさである。
  20. ^ マイクロソフト (2008ねん7がつ8にち). “A description of the differences between 32-bit versions of Windows Vista and 64-bit versions of Windows Vista” (英語えいご). サポート技術ぎじゅつ情報じょうほう. 2009ねん2がつ13にち閲覧えつらん
  21. ^ マイクロソフト (2009ねん1がつ15にち). “Memory Limits for Windows Releases” (英語えいご). MSDN ライブラリ. 2009ねん2がつ13にち閲覧えつらん
  22. ^ マイクロソフト (2008ねん6がつ13にち). “4 GB の RAM が搭載とうさいされている場合ばあい、Windows Vista の [システム情報じょうほう] ダイアログ ボックスで報告ほうこくされるシステム メモリが予想よそうよりちいさい”. サポート技術ぎじゅつ情報じょうほう. 2008ねん2がつ13にち閲覧えつらん
  23. ^ マイクロソフト (2008ねん3がつ12にち). “Windows Vista SP1 では、システムに 4 GB のメモリが搭載とうさいされている場合ばあい、システム メモリ (RAM) が 4 GB と報告ほうこくされる”. サポート技術ぎじゅつ情報じょうほう. 2009ねん2がつ13にち閲覧えつらん
  24. ^ いちれいとして、RAMディスクソフトウェアなど。

関連かんれん項目こうもく

[編集へんしゅう]

外部がいぶリンク

[編集へんしゅう]