泉澄明輝(いすみあきら)のシスアド教室

2000/02/16(Wed) コンピュータシステム(ハード、OS)

本日は、コンピュータなど情報機器のハードウェアと、OS(基本ソフトウェア)のお話です。

作成年月日2003/10/16

最終更新日2005/06/17


コンピュータの種類

パーソナルコンピュータ(PC : Personal Computer)

 初級シスアド試験を受けるには、ある程度のPCの基礎知識が必須です。ですが特に説明は不要ですね。OSは、WindowsやMacOSを搭載しているものが一般的です。


PDA(Personal Data Assistance)

 おもに個人の情報管理を行うために、持ち歩きに便利なサイズの情報端末のことです。スケジュール管理や住所録などの機能が入っています。シャープの液晶ザウルスや、iモードなどの携帯電話端末にこの機能を盛り込んだものも、PDAに含みます。

 近年はノート型PCだけでなく、PDAを営業担当者に持たせて、客先での商談に活用する事例が増えています。生命保険の見積もり機能をPDAに盛り込み、客の目の前で見積もりができる、などの例があります。


ワークステーション(WS:Work Station)

 サン・マイクロシステムズ社のものが有名です。今日ではPCとワークステーションの役割上の違いはほとんど無いですが、特に高性能が要求されるCAD分野(建築や電子設計など)やCAM分野(車の衝突シミュレーションなど)、コンピュータグラフィックス分野などで好んで用いられています。多くはOSとして、UNIXを搭載しています。


汎用コンピュータ(メインフレーム)

 汎用機とも呼ばれます。NECのACOSや、日立のエンタープライズサーバが有名です。長く培われた技術のため信頼性は非常に高く、また値段も高いです。

 信頼性が高く、過去の資産(蓄積されたデータやソフトウェア)を活かせることから、金融機関や保険・証券業の、基幹系(業務の生命線を握る部分)に根強い人気があります。また今日では、ハイエンドサーバとしての位置付けが注目されています。


HPC(High Performance Computer)

スーパーコンピュータとも呼ばれます。科学技術、特に気象予測や天文、核物理学、ゲノム解析などの分野で用いられます。地球シミュレータが有名です。


ハードウェア

集積回路(IC、LSI(Large Scale IC))

 集積回路(IC)は、Integrated Circuitの略です。その作り方は、半導体(主にシリコン)の薄板上に、写真製版と似た技術を使って細かく電子回路を作り込んでいきます。


主記憶装置と補助記憶装置

主記憶装置
CPUの割と近くにあって、データやプログラムを頻繁に書き換えたい場合に使う記憶装置です。一般には、RAMのIC(PCでは、DIMMと呼ばれるメモリモジュール)が、これにあたります。
補助記憶装置
CPUが直接アクセスしに行けない場所にある記憶装置です。補助記憶装置に入っているデータを扱う場合は、一度そのデータを主記憶装置に持って来ないといけません。ハードディスクやCD-ROM、DVDなどが、これにあたります。


情報素子:RAM(ラム)とROM(ロム)の違い

 集積回路で作られたメモリICにおいて、電源を絶たれた時(PCの電源OFFなど)に、それまで記憶していた内容が消えてしまう性質(これを「揮発性」と呼びます)のメモリがRAMで、消えない性質(不揮発性)のものがROMです。

 なお、CD-ROMやDVD-RAMは集積回路ではないため、ここには分類されません。


SRAM(エスラム)とDRAM(ディーラム)の違いについて

 データの最小構成である1ビットを記憶させるために、SRAMではフリップフロップ回路と呼ばれる回路を用います。それに対してDRAMは、キャパシタ(コンデンサ)を用い、そこに電荷(静電気)がたまっているか否かで1ビットを表します。

 SRAMはその高速性から、CPU内部など高速にデータを書き換えたい場所に使われることが多く、DRAMSRAMに較べて(同じ記憶容量あたり)安く作れることから、大容量が好まれる主記憶装置に、よく用いられます。


フラッシュメモリ

 ディジタルカメラの画像データ保存用や、USBメモリに用いられています。ROMに分類されますので、一度書き込んだ内容はバックアップ電源なしでも消えません。また、何度も消しては再書き込みができます。

 フラッシュメモリは「セクタ」と呼ばれる区画ごとにメモリ領域を管理していて、データはセクタ単位で消去・再書き込みができます。

【コラム】フラッシュメモリの語源

 セクタ単位で「パッ」と消せるという、この「パッ」というイメージが、カメラのフラッシュのようなので、この名前になったそうです。日本の東芝が発明しました。


CPU(MPU・マイクロプロセッサ)

 コンピュータシステムの中で、主に演算処理を行う装置を指す言葉です。中央処理装置(Central Processing Unit)とも呼ばれます。汎用コンピュータ(メインフレーム)では、CPUは巨大な装置を指していましたが、今日のパーソナルコンピュータではIC化されたMPU(Micro Processing Unit)を指します。


CCD(固体撮像素子)、CMOSイメージセンサ(CIS)

 主にディジタルカメラやテレビカメラの受光部に用いられる、映像を取り込むための素子です。また、CCDと同様の機能を持ちながら、CMOSプロセスを採用することで消費電力とコストを抑えたCMOSイメージセンサのシェアが最近伸びています。今日の携帯電話のカメラの多くは、このCMOSイメージセンサが使われています。

【コラム】主記憶装置とCPU

PC上の主記憶装置は、通常はDRAMで構成されます。f:id:isumiakira:20050602011912:image

 写真は32Mバイトの主記憶装置のモジュールです。1997年製造、今となっては秋葉原で210円でした。


 CPUを裏から見た写真です。

f:id:isumiakira:20050602011900:image

 写真は1993年に登場したインテル社のPentiumですが、今日の秋葉原では105円で売られていました。中央の四角い部分にICが入っており、耐熱のためセラミックでできたパッケージに収められています。


プロセッサアーキテクチャ

CPUクロック

 コンピュータのCPUが演算処理を行う際には、CPUの回路内部で、処理する回路同士でタイミングを取りながら(これを「同期をとる」と呼びます)処理をこなしています。

 これは丁度オーケストラの指揮者が、各楽器間のタイミングをとるのと同じです。そしてCPUにとっての指揮者のような存在が“CPUクロック”です。一般には、同一のCPUであればクロック数の値が大きいほど(クロックサイクルが早いほど)演算スピードが速くなり、ひいては処理能力が高くなると言えます。


CPUクロックの波形

 CPUが演算処理を行う際の、いわば指揮者のような存在が、CPUクロックでした。CPUクロックの速さの単位は、ヘルツ(Hz)を用います。信号のオンとオフの定期的な繰り返しによる電圧の変化を、波とみなします。

 一度オンになってから次にオンになるまでの時間の幅が、1クロックの幅です。


クロック周波数が1GHzの場合の波形

f:id:isumiakira:20050602013010:image

【例題】1GHzのクロックの、1サイクル分の時間は、何ミリ秒・何マイクロ秒・何ナノ秒になるでしょうか?それぞれ換算して下さい。

【解答】

1GHzなので、10億分の1秒ごとにオン・オフされる。

  • 0.000001ミリ秒
  • 0.001マイクロ秒
  • 1ナノ秒


MIPS値(ミップス・ち)

 MIPS(Million Instructions Per Second)とは、CPUの処理能力を表す指標の一つで、1秒あたりCPUが処理できる命令語の個数(単位は100万)を表す値です。たとえば50MIPSとは、1秒あたり50×100万=5000万の命令をこなせる、という意味です。


【コラム】CPUのクロックアップ

しばしばPCの手軽な高速化手段として、PCユーザがCPUクロック数を高めに設定変更することで高速化する“クロックアップ”が行われます。これを個人が自己責任で行うのは勝手ですが、CPUの発熱が大きくなり、PC全体の耐久性や信頼性を損なうため、仕事で使うPCをクロックアップすることは厳に慎むべきです。


メモリアーキテクチャ

メモリキャッシュ

 メモリキャッシュとは、ツボを押さえた高速化に用いられる技法です。キャッシュ(cache)とは「隠し持つ・貯蔵する」という意味を持つ単語で、よく使うデータやプログラムを高速アクセスできるメモリに記憶させておき、そのメモリをCPUのすぐ近くに置いておくことで、高速なデータ処理を目指す技術のことです。具体的には、CPUのすぐ隣(今日ではCPUに内蔵)に高速なSRAMのキャッシュメモリを配置し、頻繁に使うデータをそこに置いておきます。


メモリの容量と性能について

 SRAMDRAMには、「速くて高いSRAM」「低速で安いDRAM」という違いがあります。そのため、大容量が求められる主記憶(今日のPCでは、DIMMのメモリモジュール)には安価なDRAMを用い、キャッシュメモリのように「ここぞ」という場所にはSRAMを用います。こうすることで、処理スピードとコストのバランスが取れたシステム構成が可能となります。


メモリの種類

 RAMは大きく分けて、SRAMDRAMに分けられます。また、DRAMを高速化したSDRAM(シンクロナスDRAM)が、今日のPCでは主記憶装置に用いられています。

 ROMはフラッシュメモリ以外に、PROM、EPROM、EEPROM等の種類がありますが、出題頻度はごく低いので、メモリに関心ある方のみお調べ下さい。なお、CD-ROMやDVD-RAMは集積回路ではないので、ここには分類されません。


ビデオRAMについて

 PCの画面をよく見ると、画面上の絵や文字は小さな粒の集まりで描かれていることがわかります。その粒(画素、ドット、ピクセル)ごとに色番号を指定することで、絵や文字を表示しています。

 PCの画面制御には、ビデオコントローラと呼ばれる専用ICを用いるのが一般的です。そして今日のPCでは、主記憶とは別にビデオコントローラのためのメモリ(ビデオRAM(VRAM))も持たせる構成が一般的です。

 より大容量のビデオRAMを搭載する事で、より多い色数や、より多くのピクセルを(つまり、より精細に)表示させることができます。ただし、いくらPC側にビデオRAMを搭載しても、それに対応できる高性能なディスプレイも用意しておく必要があります。

【例題】

 2MバイトのビデオRAMを用い、1024×768ドットで表示可能な色数は、以下のどれか。

  ア 16色   イ 256色   ウ 65536色   エ 16777216色

【解き方】

 表示可能な色数は、「1ピクセルあたり何ビットの情報量(ビット数)を用いるか」で決まります。各選択肢は1ピクセルあたり、アが4ビット(0.5バイト)、イが8ビット(1バイト)、ウが16ビット(2バイト)、エが24ビット(3バイト)の場合です。

 この画面の総ピクセル数は1,024×768で786,432ドットです。選択肢エだとメモリ容量が足りないので、ウ(2バイト×786,432ドット=1,572,864バイト≒1.6Mバイト)を選んでください。


補助記憶装置

ハードディスク(HD)

 磁性体が塗られた円盤を1〜複数枚用い、回しながら同心円状に磁気的に記録するものです。PCの起動時などにPC内部から「カラカラ(コリコリ)」という音が聞こえますが、これはハードディスク内のヘッド(読み書きのためのセンサ)が動いている音です。なお、ハードディスクは衝撃に弱く、また高速回転による発熱にも弱いため、取り扱いには注意が必要です。


ハードディスクの外観(PCに内蔵のもの)

f:id:isumiakira:20050602011827:image


CD(CD-ROM、CD-R)

 読み出し時、ピットと呼ばれる小さな穴に赤色レーザ光線をあて、ピットの長短を検知することで0か1かを判別します。1枚で640Mバイトまで記録可能です。また、CD-ROMの記録フォーマットの規格(ISO9660フォーマット)に則っていれば、WindowsのPCで焼いた(書き込んだ)CD-RをMacintoshのPCで読んだり、オーディオ用のCDとして楽しむこともできます。


DVD(Digital Veasatile Disk)

 原理はCDと同じですが、より短波長な青色レーザ光線を用いることで、記録密度を高めています。また2枚のディスクを貼り合わせて1枚のディスクとする(片面2層)事で、1枚あたり約4.7Gバイトまで扱えます。


光磁気ディスク(MO)

 レーザ光線で熱し、冷える瞬間に磁場をかけることで、磁気データを記録するものです。過去に書き込んだデータの消去や、再書き込みも可能です。オーディオ用のMD(Mini Disk)も同じ原理を利用しています。


磁気テープ(MT)

 もともとディジタル録音用であったDAT(Digital Audio Tape)など、磁気テープにデータを記録するものです。サーバのデータをバックアップする際によく用いられます。DDS-4などのテープストリーマもMTに分類されます。数10Gバイト単位の大容量データをバックアップできますが、バックアップに数時間から一晩かかるので、頻繁なバックアップには向きません。


半導体ディスク

 USBメモリが代表的です。ハードディスクと同様に扱うことができる装置ですが、磁気ディスクのかわりにICメモリを用いるため、アクセス時間の短縮が図れます。また衝撃に強いことから、航空機のボイスレコーダ等にも用いられています。


スマートメディア

 メモリカードの規格の一つです。ディジタルカメラの画像保存用や、ノートPC等に用いられる、主にフラッシュメモリを用いたメモリカードです。

ソニーが中心となって策定した「メモリースティック」や、松下電器が中心となって策定した「SDメモリー」なども、広い意味でスマートメディアに分類されます。


記憶装置の、アクセス速度の比較

 アクセス速度とは、CPU等から「データが欲しい」と要求されてから、実際にデータが取り出され始めるまでの時間を指します。

 主な記憶装置を、アクセス速度が速い(時間が短い)順に並べると、

 SRAM(キャッシュメモリ) < DRAM < HD < CD-ROM < FD

となります。


保管性(バックアップ媒体として用いた場合のメリット・デメリット)

 サーバ等に入っているデータを、障害に備えてバックアップをとる際に用いるバックアップ先の媒体は、以下の基準で選んであげて下さい。

  • メディアの容量
  • バックアップスピード
  • 必要となる媒体数
  • コスト
  • 入手性

 バックアップは定期的に(日次・週次・月次バックアップ)行い、複数世代(もしバックアップ先が故障しても、最悪の事態を避けられる)に渡ってとるのが理想です。

 また、データ保存専用のネットワークであるSAN(Storage Area Network)や、LAN上のファイルサーバから発展したNAS(Network Attached Storage)を利用し、そこをバックアップ先とする運用方法も、最近の流行りです。


補助記憶装置の容量計算

 補助記憶装置、特にハードディスクやフロッピーディスクの記憶容量を計算問題が、午前試験でよく出題されます。

 キーワードとして、同心円状の「トラック」と、扇形の「セクタ」との違いを押さえておきましょう。

【例題】

初級シスアド平成13年春期午前問3

 フロッピーディスクを次の仕様でフォーマットしたとき,容量は約何Mバイトか。

総トラック数160
セクタ数/トラック9
セクタ長(バイト)512

 ア 0.5  イ 0.7  ウ 1.2  エ 1.4


 この例題の場合、全ての値を掛け算すれば求まります

f:id:isumiakira:20050603000913:image

 磁気ディスクではディスク内を、トラックと呼ばれる同心円と、セクタと呼ばれる扇形の区切りで管理していることを押えておきましょう。

【コラム】ファイルのアーカイブとアーカイバ

 関連のある複数のファイル(実行可能ファイルと、その取扱説明書ファイルなど)をまとめて1つのファイルとすることを、ファイルのアーカイブと呼びます。これによって、1回のダウンロードのみで必要なファイル群を手に入れることができるため、管理上のメリットがあります。

 アーカイブを行うためのユーティリティツール(ソフトウェア)をアーカイバと呼び、主にPCで用いられるZIPやLHA、主にUNIX系OSで用いられるtarが有名です。

 なおZIPやLHAは、アーカイブと同時にファイルを圧縮する機能も持っているため、これらを用いてファイルを圧縮する事をアーカイブと呼ぶ場合もあります。ですが本来、アーカイブとファイル圧縮とは、区別して考えるべき事項です。

補助記憶装置の性能計算

ディスクのフラグメンテーション(fragmentation)

 ハードディスクで、データの書込み・消去・再書込みを繰り返すと、書き込まれたデータがツギハギ状になった領域が生じます。これがディスクの断片化(フラグメンテーションと呼ばれる状態です。ディスクが断片化してしまってもファイルの読み書きそのものは可能ですが、ディスクアクセスの効率が落ちてしまい、ひいてはPC全体として処理が遅くなります。

 断片化を解消するためには、デフラグツール(Windowsに標準で入っている“ディスクデフラグ”と呼ばれるユーティリティツールなど)を用いて再編成を行うのが一般的ですが、データを一度別のメディアにコピーした上でハードディスクを初期化後、データを元のように書き込んでも同様の効果があります。

【例題】

初級シスアド平成14年午前問9

使用しているパソコンの処理能力が低下してきたので調査したところ,磁気ディスク装置の入出力時間が増大してきたことが分かった。この状況を改善するためにユーティリティを導入し,シーク動作を減少させて効率よくアクセスできるようにしたい。このとき,ユーティリティが行うべき適切な処理はどれか。ここで,利用する磁気ディスク装置は1台とする。

大きなサイズのファイルを同一のディレクトリ(フォルダ)に格納する。
各ファイルを磁気ディスク装置内の複数の領域に分散化する。
参照頻度の高いファイルを磁気ディスク装置内の連続した領域に格納する。
参照頻度の高いファイルを同一のディレクトリ(フォルダ)に格納する。


【考え方】

 シーク動作とは、ハードディスク内部の磁気ヘッドが動く時のカラカラ音のことです。このカラカラができるだけ少なくなる(平均シーク時間の短縮)ようにするためには、ウのようにディスク上の連続した領域にデータが書き込まれている形が理想です。


【コラム】デフラグツールあれこれ

 Windowsに標準で入っている「ディスクデフラグ」も悪くないのですが、シマンテック社「ノートン・システムワークス」に入っているデフラグツールが、Windows PC用のデフラグツールとしては最強のように思います。

 いずれの場合でも、デフラグを実行させる際は動作している他のソフトウェアは全て終了させた上で、寝る前に開始して朝に終わらせるのがコツです。


入出力アーキテクチャと装置

入出力インタフェースについて

 コンピュータと周辺機器や、周辺機器同士を電気的につなぐ際、お互いの接点になる部分を「インタフェース(interface)」と呼びます。インタフェースには様々な規格があり、コネクタの形状から通信スピード、信号の際の電圧などのプロトコルも規定されています。

バス(bus)

 データが流れる道のことを、「バス」と呼ぶことがあります。これは、乗合バスにデータを乗せて行き来するイメージからついた名前です。

 大きく分けて、シリアルバスとパラレルバスに分かれます。

シリアルバス(serial bus)
データを、1本の信号線をオン/オフさせることでビットを送るイメージです。USBや、RS-232C、イーサネットのツイストペアケーブルは、シリアルでデータを送り届けています。
パラレルバス(pararell bus)
シリアルバスが複数本あって、平行して一度にデータを送るイメージです。PC基板とハードディスクを接続するためのATAやSCSIなどは、パラレルでデータを送り届けています。


PC基板に、拡張ボードを接続するためのバス

PCIバス
今日のPCに一般的に採用されている規格です。
AGPバス
主にビデオコントローラとの接続を目的とした高速なバスです。
PCI Expressバス
PCIを基にした、ビデオコントローラを接続する際に有利なバスです。
ISAバス
いまさら出題されないですが、5年ほど前までのPCに一般に採用されていたバスで、今日では主流の座をPCIバスに譲りました。


PC基板と、内蔵ハードディスクとを接続するためのバス

シリアルATA
今日の新しいPCの主流です。従来のATAに比べて細い(扱いやすい)ケーブルで接続でき、高速な伝送に対応しています。
ATA(またはIDE(Integrated Drive Electronics))
PCの基板と、内蔵ハードディスクやCD-ROMドライブを接続するインタフェースです。ほとんどのPCに標準で搭載されています。パラレル伝送のため、幅広のケーブル(リボンケーブル)を用いて接続します。
SCSI(Small Computer Standard Interface)
スカジーと発音します。IDEに比べて高速な伝送に向くため、主に業務用サーバなどハイエンドな用途で用いられています。パラレル伝送で、デイジーチェーン接続と呼ばれる数珠つなぎ式で機器を増設できます。


PC本体と、周辺機器とを接続するインタフェース

USB(Universal Serial Bus)
USBは、PCと周辺機器を接続する際に一般に用いられるシリアルインタフェースで、USBハブを介して最大127台までの周辺機器をつなげることができます。
IEEE1394
動画像など、高速な伝送をしたい時に使います。ソニーのハンディカムからPCに動画像を取り込む時のインタフェース(i.Link端子)も、正式な呼び名はIEEE1394です。
IrDA(Infrared Data Association)
赤外線を使ったデータ通信の規格です。数mまでの距離をワイヤレスで通信でき、多くのノートPCや、一部の携帯電話が対応しています。
Bluetooth
2.4GHz帯の周波数を使ったデータ通信の規格です。10m程度の距離をワイヤレス通信でき、通信速度は1Mビット/秒です。一部のノートPCや、一部の携帯電話が対応しています。
RS-232C
主にPCとTA(ターミナルアダプタ)、PCとアナログモデムなど、比較的低速な機器の接続に使う、歴史あるシリアルインタフェースです。f:id:isumiakira:20050603011058:image

 最近のPCでは、RS-232CやISAバスなど、古くからあるインタフェースがPC基板設計上のネックとなることが多いため、RS-232CにかわってUSBやIEEE1394などの新しいインタフェースに絞った設計、いわゆる「レガシーフリー」と呼ばれる設計のPCが一般的です。

【コラム】パラレル伝送よりもシリアル伝送の方が速い?

 実は、世のトレンドは、シリアル伝送です。

 一昔前までは、どう見てもパラレル伝送の方が(データをまとめて送ることができるため)高速とされてきましたが、最近ではパラレル伝送にも限界があることが知られてきました。

 特に、複数本の信号線の間で同期をとるタイミングをとりにくい問題や、あまり信号帯域を高くとると各信号線が電波を受発信するアンテナのように振舞ってしまい、近くの信号線に混信してしまうという問題(近傍漏話)があります。

 そのため、パラレル伝送にこだわるよりもシリアル伝送で回路も単純化した方が、結果として速いというのが、最近のトレンドです。

 近いうちにSCSIのシリアル版も策定される見通しです。また、LVDS(Low Voltage Differential Signaling)と呼ばれるシリアル伝送技術(TIA/EIA-644)は、600Mビット/秒以上の伝送速度を手軽に扱えることから、今後の普及が期待されます。


入出力装置の種類と特徴

キーボード、ポインティングデバイス

 ポインティングデバイスとは、マウスなどGUI画面上の位置を指し示すための装置です。ここでは特に説明しません。


OCR(Optical Character Reader)

 活字印刷や手書きの文字を、コンピュータにデータとして取り込む仕組みの総称です。たとえば郵便番号を読み取って自動的に仕分ける装置や、「読んde!ココ」などスキャナから活字を読み取るソフトウェアが、これにあたります。

 なお、マークシートを読み取るものはOMR(Optical Mark Reader)と呼びます。


ディスプレイの種類

TFT液晶
今日の液晶ディスプレイの、主流となっている方式です。なお液晶ディスプレイは自分では発光せず、バックライトと呼ばれる光で後ろから照らしてやる必要があります。同じ画面サイズのCRTより、消費電力を低く抑えられます。
PDP(プラズマディスプレイパネル)
薄型テレビの方式の一つとして、TFT液晶とシェアを争っています。液晶ディスプレイとの決定的な違いは、画素自体が光るため、バックライトを使わなくても色がわかる点です。
有機EL
これも画素自体が光ります。一部の携帯電話で、液晶ディスプレイの置き換えとして採用されています。
CRT
ブラウン管を使ったディスプレイです。古くからあり値段も安いですが、消費電力や重さの点で、液晶ディスプレイに劣ります。
STN液晶
最近は中古でも見かけなくなったタイプです。TFT液晶よりも低コストで作れるのがメリットですが、画質や視野角の点でTFT液晶に劣ります。


プリンタ

 プリンタについての出題は、dpi(Dot Per Inch)という単位を覚えて下さい。これはプリンタの性能を表す単位で、1インチの長さに何ドットを印刷できるかを表す値です。

 たとえば100dpiのプリンタだと、1インチ(約2.54cm)の長さに100ドット印刷できるため、1インチ四方だと10,000ドットの印刷できるという意味です。もちろん、dpiの数字が大きいほど、より細かく印刷できることを表します。


オペレーティングシステム(OS:Operating System)

 WindowsやMacOSなどのOSは、人間の目にはきれいなGUIの部分しか見えませんが、OSの本当の値打ちは、GUIの裏で働いてくれているプログラム(ファイル管理、プロセス管理、メモリ管理など)の良し悪しで決まります。ここの出来が良いOSは、簡単に言えば「アプリケーションソフトの動作中に、原因不明で止まってしまう」ことが少なくて済みます。

 OS選定、特に業務で使うPCのOS選定は、ぜひ「止まりにくい」かどうかを基準にして下さい。


オペレーティングシステム(OS:Operating System)とは

 PCなどでアプリケーションソフトを実行する時は、コンピュータの資源(リソース)をうまく活用して、特にCPUやメモリをムダなく効率的に使いながら実行する必要があります。そのための制御をしてくれるものが、OSです。OSの実体はプログラムの一種です。


OSの種類(UNIXLinux、Windows、MacOS

 情報処理技術者試験では、各社・各団体が作るこれらOSの種類や特徴を問わせる問題は出題されません。出題ポイントは、OSによって特殊文字が文字化けすることと、UNIXおよびLinux上でウィンドウシステムを実現させるための仕組み(X Window System)の名称です。


文字化け

 WindowsとMacOSでは、同じ文字コードに全く別の文字が定義されていることがあり、それが元での文字化け、または〓(ゲタ文字)が表示されることがあります。

 詳しくは、下記のサイト「Webマスターのための文字化け講座」の「Windowsでは表示されるが、Macでは文字化けする文字」をご参照下さい。

http://www.shtml.jp/mojibake/machine.html

 特に午前問題では、よく「丸囲み数字」「全角ローマ数字」は、文字化けするという知識問題が出題されます。

【コラム】UNIX系OSでのGUIX Window System

 UNIXの世界では、「GUIなんて邪道だ」という考えが一部に残っています。たとえばコンピュータをサーバ専用に使う場合には、GUIはメモリやCPUパワーを食うだけだからムダだ、というわけです。

 ですがコンピュータをクライアントとして使う場合には、Windowsの使いやすさが羨ましかったりもします。そこで今日のUNIXクライアントでは、X Window SystemにWebブラウザやメール管理、MS-Officeに似たソフトなどを加えた「統合デスクトップ環境」であるKDEhttp://www.kde.org/)やGNOMEhttp://www.gnome.org/)をインストールする人が増えています。

X Window Systemの例(KDEの画面)

f:id:isumiakira:20050603021300:image


仮想記憶とスラッシング

 あるソフトウェアを動作させるために必要なメモリとして「96Mバイト以上を推奨」と書かれているソフトを、実際には64Mバイトの主記憶メモリしか積んでいないPCにインストールし実行させようとすると、どうなるでしょうか?

 これは大抵の場合、ソフトは起動し、ほとんどの機能が動作するのが普通です。ただし、時には使い物にならないまでに動作が遅くなる(「動作が重い」と感じる)ことが多いです。


 ここに、2つの疑問点があります。

  1. 主記憶メモリの絶対量が足りないのにソフトを起動できたのは、なぜか?
  2. 動作が極端に重くなったのは、なぜか?


  1. の答は、OSが持つ「仮想記憶」と呼ばれる仕組みが働いたためです。
  2. の答は、仮想記憶が働く際には、ハードディスクへのアクセスが頻発するからです。


 では、これらについて詳しくお話していきましょう。


搭載メモリよりも大きいデータを扱える 〜仮想記憶〜

 仮想記憶とは、今日のほとんどのOSが持つ機能の名前です。これはOSが、アプリケーションソフトなどの実行中に「メモリが足りない」と判断した時、現在メモリ上にあるデータを一旦ハードディスクに書き出した(退避させた)上で、必要な別のデータをメモリ上に持ってきて、処理を続行する機能を指します。

 これが、実際には64Mバイトしかメモリがないのに、96Mバイトのデータでも扱えた理由です。ソフトウェアの視点ら見れば、コンピュータ上にはありもしない96Mバイトのメモリがあるかのように見えることから、「仮想記憶」という名がつけられています。


動作が遅くなる 〜スラッシング〜

 次に、動作が極端に重くなった理由を考えましょう。

 メモリ上のデータをハードディスクに書き出し、必要な時にはまた元のメモリに戻す入れ替えサ行のことを、「スワッピング」と呼びます。そしてスワッピングが頻発し、動作が極端に重くなることを「スラッシング」と呼びます

 初級シスアド試験では、このスラッシングが頻発する際の対処方法を問わせる問題がよく出題されます。最も効果的な対処方法は「PCに搭載するメモリを増やす」、または「とりあえず使っていない他のアプリケーションソフトを終了させて、現在使用中のソフトに主記憶領域を譲る」です


OSが持つ「ファイル管理機能」

 OSが担う役割の中で、身近なものの一つに「ファイル管理機能」があります。ほとんどのOSでは、ファイルを「階層ディレクトリ構造」と呼ばれる形式で管理します。これはWindowsでいえば、丁度「フォルダ」の考え方と同じです。とりあえず「ディレクトリ=フォルダ」と覚えておいて下さい。


親ディレクトリの“../”表記について

 たとえばHTMLで、別のディレクトリにある画像ファイルの場所を指定する記述にも、この知識が必要です(なお、日本語環境のWindowsのコマンドプロンプトで同じことを行う場合は、“/(スラッシュ)”を“\(円記号)”に読み替えて下さい)。

[homepage]
    |-----------------+
[gazou]          [source]
  aPicture.gif      index.html

 sourceディレクトリにあるHTMLファイル(index.html)から、gazouディレクトリにあるaPicture.gifというファイル名を指定する際の書き方は、以下のようになります。

<img src="../gazou/aPicture.gif">


ファイル・レコード・フィールドの関係について

 情報処理、特に古くからある帳票処理に用いられる(主にCOBOL言語で扱うデータの)ファイルは、多くの場合このような形式で保存されています。

0001井上陽助    055東京都新宿区高層ビル町1−2−3    [改行]
0002宇多山光    021大阪府吹田市太陽の塔2−3−4     [改行]
0003真田まさし   050静岡市清水区次郎町5−1        [改行]
0004松山千秋    048札幌市中央区時計台3−3        [改行]
0005吉田拓太郎   054福岡市博多区辛子明太町1−23     [改行]

 このファイルでは、左から順に、

4バイト
会員番号
16バイト
氏名
3バイト
年齢
40バイト
住所
[改行]コード
1行分(1件分)のデータの終了を示す

 を表してみました。

  • レコードとは、今回のファイルでいえば1行分(1人分・1件分)のデータのことで、関係データベースで言う「タプル」に相当します。
  • フィールドとは、各データ項目(社員番号・氏名・年齢・住所)のことで、関係データベースで言う「属性」に相当します。

 1つのファイルの中には個々のレコードがあり、1つのレコードの中には個々のフィールドがあるという、以下の図式が成り立ちます。この図式は、午前試験でたまに問われます。

ファイル > レコード > フィールド


OSが持つその他の機能

マルチタスク(マルチプログラミング)

 マルチタスク(マルチプログラミング)とは、OSが同時に複数の仕事をこなすことができるという意味です。これも今日のPC用OSでは当たり前のことですが、たとえばWebサイトからファイルをダウンロードしながら、その間に文書を編集するといった処理が同時進行でできるよう作られたOSを「マルチタスクOS」と呼びます。


リアルタイム処理

 リアルタイム処理とは、入力した処理の結果がすぐに返ってくるという意味です。マルチタスクOSが当たり前となった今日では、リアルタイム処理が当たり前のことではありますが、特に「バッチ処理(処理させたいデータをある程度ためてから、頃合をみて処理す方式)」の反対語として用いられることが多い言葉です。


排他制御(はいたせいぎょ)

 排他とは、いわば「お前、あっち行け」と言った、のけものにすることを指す言葉です。

 OSにおける排他制御の例ですが、たとえばLAN上のファイルサーバで共有されたWordのファイルを、誰かが編集しているとします。その途中で後から来た別の人が、同一のWordファイルを開こうとしたら、後の人のPCではそのファイルを編集させてはくれない仕組みが働きます。これが、OSが持つ排他制御の例です。


デッドロック

 排他制御は便利な仕組みですが、排他制御には「デッドロック」と呼ばれる困った現象が起こる可能性がついてまわります。デッドロックとは、マージャンにたとえると「持ち持ち」の状態を表します。

【コラム】マージャンにおける「持ち持ち」とは?

「Aさんが和了(あが)るために必要な牌Xを、Bさんが手離すのを待っている(Aさんは牌Yを抱えていて離さない)」

「Bさんが和了るために必要な牌Yを、Aさんが手離すのを待っている(Bさんは牌Xを抱えていて離さない)」

 お互いに抱え込んでいるため、お互いに和了ることができない状態を指します。

 排他制御のおかげで、マルチタスクで同時実行されている2つ以上のプロセス(プログラム)が、お互いにリソース(コンピュータ資源)の開放を待つ状態が延々と続くことがあります。これをデッドロックと呼びます。これは特に、マルチタスクを利用したソフトウェアやデータベースの設計時に、十分に考慮しないといけない問題です。


ヒューマンインタフェースの設計

 インタフェース(interface)とは、日本語でいえば「接点」のことです。ヒューマンインタフェースとは、人間とコンピュータの接点、具体的にはコンピュータにとっての「外ヅラ」だととらえて下さい。


CUIGUI

 1990年代前半のPC、特にMS-DOSと呼ばれるOSを搭載していたPCでは、今日のWindowsでいうアイコンをクリックするかわりに、起動したいプログラム名をキーボードから打ち込んでEnterキーを押すことでプログラムを起動させていました。このように、コマンド(の文字列)をキーボードから入力しながら処理を進める形態を、CUI(Character User Interface)と呼びます(和製英語だそうです)。なお、ここでいうキャラクタとは「文字」という意味です。


 ですが今日、PCというと、WindowsやMacOSなど、きれいな画面で操作できるPCが一般でしょう。統一感あるデザインの画面上で、やらせたい作業のアイコン(絵文字)をクリックすることで、ソフトウェアを起動したり必要なファイルを編集したりする、あれです。CUIが素っ気無い文字ベースのやり取りなのに対し、これらはカラフルなグラフィックスなので、GUI(Graphical User Interface)と呼ばれます(こちらは外人にも通用する英語です)。


GUIコンポーネント

 この分野の出題ポイントは、GUIを構成する部品(GUIコンポーネント)の名前を問わせる問題です。具体的には、ボタン、チェックボックス、ラジオボタン、テキストボックス、プルダウンメニューの名称を覚えて下さい。他には、「画面遷移図(その実体は、状態遷移図)」を読ませる問題が、午前・午後ともに出題されることが多いです。詳しくは「状態遷移図」の項目をご覧下さい。


チェックボックスとラジオボタン
チェックボックスとラジオボタンの決定的な違いは、チェックボックスは複数個(0個から全部まで)選択できるのに対し、ラジオボタンは1個だけしか選べない(これを「排他的に選択」と呼びます)、という違いがあります。
テキストボックスとテキストエリア
2ちゃんねる等の掲示板システムには必須のものです。いわゆる「カキコミ」など、文字列を入力するための空欄のことです。テキストボックスが1行だけ入力できるのに対し、テキストエリアは複数行の文字列を入力できます。
プルダウンメニューとプルアップメニュー
Windowsでいう、ウィンドウの上部に「 ファイル(F) 編集(E) 表示(V) 挿入(I) お気に入り(A) ツール(T) ヘルプ(H) 」と表示され、マウスでクリックすると下向きに伸びて表示されるメニュー項目が、プルダウンメニューです。対して、Windows画面の左下にあるスタートボタンのように、上向きに伸びて表示されるメニュー項目を、プルアップメニューと呼びます。


エンベデッドOS

 エンベデッドOS(組み込みOS、とも訳されます)とは、PCほど大きくはないけど、立派にCPUを積んでいる装置(たとえば携帯電話やPDA、ちょっと複雑な家電製品など)に使われるOSです。有名なものではITRONや、WindowsCEなどがあります。

デバイスドライバ

 PCなどのOSが、周辺装置を制御する際に使うソフトウェアのことです。今日では、制御用のソフトウェアはOSにほとんど組み込まれており、その組み込まれたソフトウェアに指示を与えるための詳細な設定項目一覧のことをデバイスドライバと呼びます。普通、周辺装置(特にPCIバスやPCカードといった、PCのハードウェアにベッタリと接続する装置)を買ってくると、その装置専用のデバイスドライバが、フロッピーディスクなどの形で同梱されています。


ミドルウェア

 OSとアプリケーションソフトの中間に位置するソフトウェアを、ミドルウェアと呼びます。ミドルウェアは、さまざまな利用分野で共通に使える、基本的な処理機能を提供します。ミドルウェアに分類されるソフトウェアには、このようなものがあります。

DBMS(DataBase Management System)
Microsoft SQL Serverなど、データベースの管理やSQLの実行環境を提供するソフトウェア
通信管理システム(ネットワークモニタ)
MRTGなど、ネットワークの混雑状況や装置の稼動状況を表示するソフトウェア
ソフトウェア開発支援ツール
ソフトウェア開発の手助けをするCASEツール(Computer Aided Software Engineering)など


(本日はここまで。続きはこのリンクをクリックして下さい)