|
Windowsとの共通点と相違点WindowsにはUnixの考え方を取り入れた部分があるため,Unixと共通する点がある。しかし,全体から見ると共通点はそれほど多くはなく,相違点の方が多い。 共通点実行ファイルの名前がコマンドになるコマンドには組込みコマンドと外部コマンドがあり,組込みコマンドはそのまま実行される。組込みコマンドでないものは入力された文字列と同じ名前を持つ実行ファイルを探し出して,そのファイルを実行する。 ただし,組込みコマンドの名前や種類,実行ファイルの名前や種類は異なる。 階層構造のディレクトリWindowsの前身であったMS-DOSに階層構造ディレクトリを取り入れるとき,Unixのディレクトリを参考にした。そのため,基本的な考え方は似ている。 カレントディレクトリを '.',親ディレクトリを'..'で表わすところも同じ。ディレクトリを扱うためのコマンドも共通するものが多い。
(*1) dirコマンドが標準で用意されているのはLinuxのみ。 標準入出力とコマンドパイプラインの考え方MS-DOSの時代に取り入れられた標準入出力とコマンドパイプラインもUnixを参考にしたものだった。そのため,これも基本的な考え方は似ている。 '>'や'<'を使ったリダイレクトや'|'によるコマンドパイプラインの考え方も同じ。
相違点大文字と小文字の区別ファイルの名前などで,Windowsは英字の大文字と小文字を同じ文字と見なすが,Unixは違う文字と見なす。ファイルの拡張子Unixにはファイルの拡張子でファイルの種類を識別する考え方がない。ファイル名の途中にピリオドが出てくるものもあるが,それは単に名前の一部に過ぎない。ディレクトリの区切り文字Windowsは'\'が区切り文字だが,Unixは'/'が区切り文字。そのため,Unixでのパス名は/usr/local/findという形式になる。
ドライブUnixはWindowsのドライブに相当するものは表面的には見せないようにしている。Unixでは,ディスクのパーティションに対応付けられたデバイスがWindowsのドライブに相当するものだが,それは階層化されたファイル構造にマウントされ,全体を一つの大きなディレクトリツリーとして扱う。コマンドのオプションWindowsのコマンドオプションは頭に'/'文字を付けて表わすが,Unixでは'-'を先頭に付けるのが原則。--の後にオプションの言葉という例もある。例)--help オプションの詳細はコマンドによって異なる。 バッチファイルとシェルスクリプトWindowsのバッチファイルのように,コマンドを登録してまとめて実行する仕組みはUnixにもあり,それをシェルスクリプトと呼ぶ。しかし,Unixの方が機能が圧倒的に多く,Windowsとはかなり違ったものに見える。ファイルのアクセス権設定WindowsのFAT16/32にはアクセス権を設定できない。NTFSにはアクセス権を設定できるがUnixとは考え方が違う。Unixのアクセス権は,ユーザをファイル所有者,同一グループ,その他,に分けてそれぞれにアクセス権を設定する。上記以外にも相違点はいろいろとある。 他のUnixとの違いLinuxの特徴LinuxはOSカーネルのみ。OS周辺のツール群はGNUのソフトが多数採用されている。つまり,Linux = Linuxカーネル + GNUツール + etc そして,それらはPOSIX仕様をベースにしている。 System V系UnixPOSIXはSystem V系のUnixをベースに作られたもの。そのため,LinuxはSystem V系のUnixに近い。 しかし,System V系のUnixはコンピュータメーカが個別に機能拡張しており,そのどれともLinuxは異なる。 BSD系UnixBSD系UnixはSystem V系よりさらにLinuxとの相違点が多い。しかし,大多数のUnix系ソフトウェアはBSD系とSystem V系の両方で動作するので,違いがあるといっても,類似点の方が多い。 | ||||||||||||||||||||||
|
|