クイズ問題: コンピューターを動作させる手順や命令を記述したプログラムのことを、「ハードウェア」に対して何という?
答え: ソフトウェア

関連するWikipedia記事の抜粋:
title: ロード (コンピュータ)
text: ロード(load)とは、コンピュータのプログラムにおいて、記憶媒体にセーブされたデータ(セーブデータ)から作業内容や各種データを復元すること。ロードするもの、という意味で「ローダ」という語がある。
title: リフレクション (情報工学)
text: 情報工学においてリフレクション (reflection) とは、プログラムの実行過程でプログラム自身の構造を読み取ったり書き換えたりする技術のことを指す。
title: ファームウェア
text: ファームウェア (英: firmware) とは、電子機器に組み込まれたコンピュータシステム(ハードウェア)を制御するためのソフトウェアで、ソフトウェアをROM等の集積回路にあらかじめ書き込まれた状態で、機器に組み込んだもの。また、ソフトウェアではなく、プログラマブルロジックデバイスで利用する回路情報も広義のファームウェアと呼ぶことがある。
title: ジュエルポッド
text: In-System Programming (インシステム プログラミング、ISP) とは、ある種のPLDやマイクロコントローラやその他プログラム可能な電子部品において、事前にプログラムを書き込んでからシステムに組み込むのではなく、組み込み済みの状態でプログラムを書き込むことである。
title: ファイル (コンピュータ)
text: コンピュータにおけるファイル(英: file)は、コンピュータでデータを扱いやすくするための仕組み。場合によってはデータセット(英: data set)とも呼ばれる。
title: プログラム (コンピュータ)
text: コンピュータプログラム(英:computer program)とは、コンピュータに対する命令(処理)を記述したものである。プログラム内蔵方式のコンピュータのCPUには、CPUで実行するプログラムの命令が必要である。
title: セーブ (コンピュータ)
text: セーブ(save)とは、コンピュータのプログラムにおいて、作業内容や各種データを記憶媒体に保存すること。
title: インタプリタ
text: インタプリタ(英: interpreter、日: 解釈系)とは、プログラミング言語で書かれたソースコードないし中間表現を逐次解釈しながら実行(英語版)するプログラムのこと。「インタープリタ」「インタープリター」などと表記することもある。
title: プログラム (コンピュータ)
text: プログラムは、実現する機能によって、コンピュータ自体の動作を制御するオペレーティングシステムなどのシステムプログラムと、表計算ソフトなど使用者が目的とする作業そのものを行うアプリケーションプログラムに大別される。
title: エミュレータ (コンピュータ)
text: エミュレータ(英: Emulator)とは、コンピューターを含む機械装置の動作・機能を模倣する事をエミュレート(動詞)またはエミュレーション(名詞)といい、エミュレート/エミュレーションする装置、あるいはソフトウェアのことをいう。本項では、コンピュータに関連したエミュレータについて解説する。
title: データ
text: コンピュータの場合には、データはプログラム以外のものをさし、その形態は、文書、映像、音声など様々である。直接スイッチなどを使ってメモリ上に書き込む場合も有るが、大抵はプログラムによって出力され、他のプログラムなどで読み込み使われる。コンパイラなどの処理ではプログラムをインタプリタやコンパイラのデータとして扱う場合もある。またデータの中にプログラムを含むことも可能。x86などではプログラムとデータは同一のメモリー空間に配置され、設計者の意図によって区別される。
title: コンテキストスイッチ
text: コンテキストスイッチ (context switch) とは、複数のプロセスが1つのCPUを共有できるように、CPUの状態(コンテキスト (情報工学))を保存したり復元したりする過程のことである。コンテキストスイッチはマルチタスクオペレーティングシステムに不可欠な機能である。通常コンテキストスイッチは多くの計算機処理を必要とするため、オペレーティングシステムの設計においてはコンテキストスイッチを最適化することが重要である。
title: PROM
text: PROM (Programmable ROM) は、コンピュータシステムで使用されるROMの一種で、通常時はデータを読み出すだけで書き込む事ができないが、特定の手順で書き込みが可能なもののこと。およびその特徴を持ったROMの総称。
title: Direct Memory Access
text: Direct Memory Access(DMA)とは、プログラムされた機械語の命令群の実行によってアキュムレータなどを介する方法によらず、メモリとメモリまたはメモリとI/Oデバイスの間で直接データを転送することである。
title: インストール
text: すなわちインストールとは、オペレーティングシステム (OS) やアプリケーションなどが格納されているCD-ROMなどの記憶媒体や圧縮ファイルなどからファイルを展開し、コンピュータでこれらを利用可能にし実行できる状態にすることを指す。
title: データセット (IBMメインフレーム)
text: データセット (data set, dataset) という言葉は、IBMメインフレームコンピュータで扱うファイルについて言及するときに使われる言葉である。
title: プラットフォーム (コンピューティング)
text: コンピュータにおけるプラットフォーム (英: platform) とは、主に、オペレーティングシステム (OS) やハードウェアといった基礎部分を指す。コンピューティングプラットフォーム (英: computing platform) と呼ばれることもある。
title: パイプ (コンピュータ)
text: Unix系オペレーティングシステムのパイプ(pipe)、もしくはパイプライン (pipeline) とは、複数のプログラムの入出力をつなぐための仕組み(プロセス間通信)の一つである。独立した複数のプログラムを組み合わせる事で、多様かつ複雑なデータ処理を効率よく柔軟に実行できる利点がある。また、現有のソフトウエア資産の再利用が可能になるため、プログラム生産性の面でも利点もある。その利便性からUnix系以外のOSでも同様の実装や、擬似的に同様の機能を実現しているものもある。
title: ソフトウェア
text: コンピュータのハードウェアを管理・制御するなど、コンピュータの稼動自体に必要となるソフトウェアである。 典型的なシステムソフトウェアとして、オペレーティングシステム (OS) があり、様々なソフトウェア処理のプロセスに対し、CPUやメモリの割り当てを管理したり、記憶装置にデータファイルを正しく読み書きできるようにするなど、さまざまな処理を行っている。キーボードやマウスなどの入力機器からの信号を、後述のアプリケーションソフトウェアに通知したり、アプリケーションソフトウェアの要求に応じて、画面への図形や文字の表示を行うのも、オペレーティングシステムの機能である。
title: ファームウェア
text: ファームウェアとは、家電製品や、パソコン、周辺機器、携帯電話などのように、コンピュータシステムを組み込んだ電子機器本体(組み込みシステム)に所望の動作をさせるためのソフトウェアであり、ハードウェアに密接に結びついていて、むやみに書き換えることのない媒体に書き込まれた物を言う。一般的なソフトウェアよりハードウェア寄りのソフトウェアということで、ファーム(堅い、固定した)という呼び方をしている。
title: ファイルシステム
text: ファイルシステムは、コンピュータのリソースを操作するための、オペレーティングシステム (OS) が持つ機能の一つ。ファイルとは、主に補助記憶装置に格納されたデータを指すが、デバイスやプロセス、カーネル内の情報といったものもファイルとして提供するファイルシステムもある。
title: ホライズン・ニュークリア・パワー
text: データ構造(データこうぞう、英: data structure)は、計算機科学において、データの集まりをコンピュータの中で効果的に扱うため、一定の形式に系統立てて格納するときの形式のことである。
title: ペイロード (コンピュータ)
text: コンピューティングや情報通信において、ペイロード(英語: payload)とは、送信データのうち、実際に意図されたメッセージの部分のことである。ペイロードに、その送信・伝送を可能にするためのヘッダやメタデータが付加されて、送信データとして送信される。
title: ブート
text: ブート(英: boot)またはブートストラップ(英: bootstrap)は、コンピュータシステムの電源投入時、あるいはシステムのリセット後、モニタやOSなどなんらかの基本的なシステムソフトウェアを主記憶に展開し、ユーザプログラムを実行できるようにするまでの処理の流れをいう。ブートローダ(英: boot loader)は、以上のプロセスで使われるローダ、すなわち不揮発性の補助記憶にある目的のプログラムを読み出し、揮発性の主記憶に書き込むプログラムのことである。
title: Read only memory
text: ROMは読み出し専用メモリであり、ROMに記録されている内容は本来の意味では書き換えできない。しかし、「RAM」が基本的にランダムアクセスで読み書きできるものを指すのに対し、それの対義語のように使われているため、EPROMの類など、何らかの条件の元一時的に書きこみできるものもROMと呼ばれるが通常は読み出し専用である。
title: ユーザインタフェース
text: コンピュータプログラムのユーザインタフェースとは、プログラムがユーザーに提示するグラフィカルな情報、テキストによる情報、音声による情報と、ユーザーがプログラムを操作 (operate) するときに使う制御シーケンス(キーボードによるキー押下、マウスの動き、タッチパネルにおける選択など)を指す。以下ではプログラム(ソフトウェア)についての他、デバイス(ハードウェア)等についても触れる。
title: Read only memory
text: Read only memory(リードオンリーメモリ、ROM: ロム)は、記録されている情報を読み出すことのみ可能なメモリである。読み出し専用メモリともいう。
title: ソースコード
text: 設計から実装へ、というプログラミングの過程(詳細は「プログラミング (コンピュータ) 」の記事を参照)で、ソースコードを記述することを特に指してコーディングという。
title: アプリケーションソフトウェア
text: 近年では一般に、アプリケーションソフトウェアは統合開発環境(IDE)を使って制作(開発)されている。IDEというのは、プログラマがソースコードを記述する「エディタ」、ソースコードから実行プログラムを生成する「コンパイラ」、コードの不具合を発見・修正するための「デバッガ」など、プログラム開発のためのソフトウェア群(ツール群)をひとまとめにしたもののことである。
title: ソフトウェア
text: ソフトウェア(英: software)は、コンピューター分野でハードウェア(物理的な機械)と対比される用語で、何らかの処理を行うコンピュータ・プログラムや、更には関連する文書などを指す。ソフトウェアは、一般的にはワープロソフトなど特定の作業や業務を目的としたアプリケーションソフトウェア(応用ソフトウェア、アプリ)と、ハードウェアの管理や基本的な処理をアプリケーションソフトウェアやユーザーに提供するオペレーティングシステム (OS) などのシステムソフトウェアに分類される。
title: プログラム (コンピュータ)
text: プログラムを作ることをプログラミングと言い、プログラミングをする人をプログラマという。プログラミングには一般に、プログラミング言語と呼ばれている形式言語である人工言語がもっぱら使われる。プログラミング言語が対応できないような特殊機能などを使う場合などにはアセンブリ言語により機械語を使ったり、直接、プロセッサを制御する機械語バイナリコードを作成することもある。プログラミング言語で書かれたプログラム(コード)をソースコードと呼ぶ。ソースコードのことを、「プログラムの設計図」と「わかりやすく」呼ぶ一部マスコミなどがあるが、例えば3Dプリンタ等が設計図をそのまま解釈して物を造ってくれることは無いように、設計図とは本質的に違うものである。
title: アクセス制御
text: アクセス制御(アクセスせいぎょ、Access Control)は、対象へのアクセスを制御すること、また制御する仕組みである。
title: プリプロセッサ
text: プログラミング言語処理系においては、ソースコードに対して、それらがインタプリタやコンパイラなどの本体に渡される前に、前処理を施すプログラムがプリプロセッサと呼ばれている。
title: 設定ファイル
text: 設定ファイル(せっていふぁいる)とは、コンピュータにおいて、動作するプログラムや、オペレーティングシステム (OS) 等の、様々な設定上の条件を記述したファイルである。
title: QEMU
text: QEMUは機械全体をエミュレーションするシステムエミュレーションと呼ばれる環境と、Linuxのユーザーランドをエミュレーションするユーザーエミュレーションと呼ばれる環境がある。
title: ソフトウェアディストリビューション
text: ソフトウェアディストリビューション (英: software distribution, distro)は、(1) コンパイル済みで設定済みのソフトウェアの集まりという意味と、(2) エンドユーザーにソフトウェアを配信するプロセス (ソフトウェア配布) という意味と、2つの意味がある。単にディストリビューションと略される場合もある。(2) の意味で、自動化ツールのことをソフトウェア配布ツール、ソフトウェアディストリビューションツールという。
title: デバイスドライバ
text: デバイスドライバ(略称:ドライバ、ドライバー)とは、ディスプレイモニター、プリンターやイーサネットボード、拡張カードやその他周辺機器など、パソコンに接続されているハードウェアなどをOSによって制御可能にするために用意されたソフトウェアである。
title: コンストラクタ
text: コンストラクタ(英: constructor)は、オブジェクト指向のプログラミング言語で新たなオブジェクトを生成する際に呼び出されて内容の初期化などを行なう関数あるいはメソッドのことである。対義語はデストラクタ。
title: ミドルウェア
text: ミドルウェア(英: Middleware)は、コンピュータの分野で、コンピュータの基本的な制御を行うオペレーティングシステム(OS)と、各業務処理を行うアプリケーションソフトウェアとの中間に入るソフトウェアのこと。
title: リンケージエディタ
text: リンケージエディタ(英: linkage editor、連係編集プログラムとも)またはリンカ(英: linker)とは、機械語のプログラムの断片を結合し実行可能なプログラムを作成するプログラムのことである。例として、C言語では、ソースファイルをコンパイルするとオブジェクトファイルが生成される。それに他のオブジェクトファイルやライブラリを結合して1つのプログラムが完成する。この結合(リンク)の際リンケージエディタが使われる。
title: キャッシュ (コンピュータシステム)
text: キャッシュ (英: cache) は、CPUのバスやネットワークなど様々な情報伝達経路において、ある領域から他の領域へ情報を転送する際、その転送遅延を極力隠蔽し転送効率を向上するために考案された記憶階層の実現手段である。実装するシステムに応じてハードウェア・ソフトウェア双方の形態がある(今後コンピュータのプログラムなども含め全ての転送すべき情報をデータと表す)。
title: 仮想記憶
text: 仮想記憶(かそうきおく、英語: Virtual Memory、バーチャルメモリ)とは、コンピュータ分野におけるメモリ管理の仮想化技法の一種であり、オペレーティングシステムなどが物理的なメモリを、アプリケーション・ソフトウェア(プロセスなど)に対して、専用の連続した主記憶装置に見えるように提供する。
title: プログラミングツール
text: プログラマブルなコンピュータの登場と同時に、プログラミングを支援するコンピュータ・プログラムというものも作られ始めた。コンパイラやインタプリタといった、プログラミング言語処理系などもツールに含めることもある(言語処理系以外の、専ら支援するツールのみを指すこともある)。ごく原始的なものの例としては、紙テープやパンチカードなどを2組用意し、それぞれの内容が同じであることを確認することで、入力ミスがないかどうかチェックする、といったようなものがあった(これはごく単純なため、ハードウェアによるものもあった)。
title: データ構造アライメント
text: データ構造アライメント(データこうぞうアライメント、英語: data structure alignment)は、コンピュータのメモリ(主記憶装置)内のデータにアクセス(読み書き)する際に、メモリ上の位置の調整を行うことである。
title: 実行ファイル
text: 実行ファイル(じっこうファイル、Executable、Executable file)とは、コンピュータがタスクを実行するための解釈可能な命令を含むファイルである。実行可能ファイル、実行可能プログラム、実行形式ファイル、あるいは単に実行形式とも呼ばれる。これと対になるのがデータファイルであり、これは実行ファイルにより解析されることで初めてコンピュータにとって意味があるものとなる。
title: ポインタ (プログラミング)
text: ポインタ (英: pointer) とは、コンピュータプログラミングにおいて、変数や関数などが置かれたメインメモリ上の番地(メモリアドレス)などを格納する特殊な変数のこと。あるオブジェクトがなんらかの論理的位置情報に基づいてアクセスできるとき、それを参照する(指し示す)ものである。一般的な意味での「ポインタ」は「何かの位置を指し示すための仕組みや道具」のことであり、転じてコンピュータプログラミングの分野でも利用されるようになった。
title: 入出力
text: 入出力(にゅうしゅつりょく、英: input/output)は、データなどの「ものごと」の流れにおける出入りのことで、入力と出力の2つを総称した概念のことである。input/outputの頭文字をとってI/Oと略される。
title: イベント (プログラミング)
text: プログラミングにおけるイベント (英: event) は、プログラム内で発生した動作・出来事、またそれらを表現する信号である。メッセージあるいはアクション(動作)とも呼ばれる。
title: デバッガ
text: デバッガの原理は、デバッグ対象のプロセスにアタッチして、プロセスの実行状況に関する情報の双方向通信を行なうことである。オペレーティングシステムにはデバッガの実装に利用可能なAPIが用意されていることもある。コンパイルすると、(人間には理解しにくい)機械語や中間表現になるプログラミング言語であっても、デバッグ用にコンパイル&ビルドする際に、ソースコードに関するメタデータである「プログラムデータベース」(program database; pdb) と呼ばれる追加情報を生成し、デバッグ実行時にこのシンボル情報を参照することで、デバッガは現在実行中のプログラムステップ位置などを特定することができる。
title: ローダ
text: ローダ (loader) は、プログラムやデータなどを、外部(他のコンピュータや外部記憶装置)からインタフェースなどを通して受け取り、主記憶装置やワークエリアに置く(ロードする)プログラムである。なお、それに加えてプログラムを起動できる状態にし、それを実行するというスタートアップなどと呼ばれる機能まで混同している者も多い。以下は、もっぱらその混同に関する説明である。
title: コンパイラ
text: プログラミング言語(人間が理解しやすい言語や数式でプログラムを記述可能な人工言語)で書かれたプログラムを、コンピュータのプロセッサが直接的に実行できる機械語(バイナリコード)、あるいは元のプログラムよりも低いレベルのコード(例えばバイトコードなどの仮想機械向け中間言語あるいは中間表現)に変換することを、英語の動詞で\"compile\"(コンパイル)と呼ぶ。コンパイラとは、コンパイルを行なうコンピュータプログラムのことである。インタプリタとよく対比される。
title: ブートストラップ
text: コンピューターの分野で(単にブートと呼ばれることも多い)この用語は、電源投入後あるいはリセットの後に、コンピューター上のメモリーに基本的なソフトウェアを読み込むことを指す。特に、必要に応じて他のソフトを読み込む役目を持つオペレーティングシステム自体をロードすることを指す。コンピュータの起動に関しては詳細はブートの記事を参照。
title: データフロー
text: データフロー(英: dataflow)は、情報工学において使われる用語であり、様々な意味を持つ。特にメッセージパッシングと関連が深い。
title: 参照 (情報工学)
text: 参照(さんしょう、英: reference、リファレンス)は、他の場所にあるデータを指している情報を含む小さなオブジェクトであり、それ自身の中に(指している)データ自体を含まない。参照の指す値を取り出すことをデリファレンス (dereference) と呼ぶ(間接参照も参照)。参照は様々なデータ構造を構成する基本要素であり、プログラム内の各部で情報をやり取りするための基本でもある。
title: コマンド (コンピュータ)
text: コンピュータシステムにおけるコマンド(英: command)とは、ジョブなどをコンピュータに実行させるための指示などといった、コマンドラインインタプリタ(シェル)などが解釈し実行する、システムへの指示のことである。
title: カプセル化
text: プログラミングにおけるカプセル化(カプセルか、英: encapsulation)とは、データ(属性)とメソッド(手続き)を一つのオブジェクトにまとめ、その内容を隠蔽することを言う。カプセル化の概念は、D.L.パルナスの情報隠蔽(information hiding)の構成概念の一つとして見ることができる。
title: デバッガ
text: デバッガ(英: debugger)とは、デバッグ作業を支援するコンピュータプログラムのこと。利用者がデバッグ対象プログラムを対話的に動作/一時停止させたり、プログラムが使っている変数の一覧や内容等を表示させたりする機能がある。近年では統合開発環境に含まれていることが多い。また、インサーキット・エミュレータ (ICE) などでは、ハードウェアと連携して動作する。「デバッガー」と表記することもある。また、デバッグを行なう作業者のことをデバッガあるいはデバッガーと呼ぶこともある。
title: ソースコード
text: Linux Information Projectはソースコードを「プレーンテキストの形で1から人間によって書かれたソフトウェア。例えば人が読めるアルファベットの形であったり、人によってコンピュータにタイプされたりするもの」と定義している。すなわちソースコードはプレーンテキスト(人の言葉)で書かれたもので、機械が生成・変換したのではなく人が1から書いてできているソフトウェアの実体を指す。ソース(源)という語が示すように、ソフトウェアはソースコードを変換(コンパイル)して生成した機械語によって動作するため、ソースコードはソフトウェアの源/ソースである。
title: 再生繊維
text: プロシージャ (procedure)とは、プログラミングにおいて複数の処理を一つにまとめたものをいう。手続きとするのが定訳である。一連の処理を意味を持った一まとまりにすることで、再利用性が高まり、プログラム中に繰り返して現れる処理を1ヶ所で記述でき、プログラムの保守、管理を容易にする。
title: ポータブルアプリケーション
text: ポータブルアプリケーション(英: Portable Application)とは、実行するにあたってコンピュータに固定の補助記憶装置にインストールする必要がないソフトウェアであり、CD-ROM、USBメモリ、フロッピーディスクなどの可搬媒体から実行できるものをいう。互換性のある任意のコンピュータシステム上で動作させることができ、一般にオペレーティングシステム (OS) が同じであればよい(例えば、Windows XP以上や、Linuxなど)。この場合の「ポータブル」は「可搬」という意味であり、「移植」という意味ではない(ソースコードのコンパイルによって異なるプラットフォームで動作できるよう設計されているわけではない)。
title: ストリーム (プログラミング)
text: 入力ストリーム (input stream) を利用してデータの読み出しを行ない、出力ストリーム (output stream) を利用してデータの書き込みを行なう。対照的な概念としては、保管・永続化されたデータ形態(ファイル、データベースなど)がある。
title: ハードウェア
text: コンピュータにおいて「ハードウェア」は、電子回路などといったコンピュータの「物理的部分」を指す。また、その上で実行されるコンピュータ・プログラムなどを指す(「論理的部分」とも言える)「ソフトウェア」との対比でもある。
title: リフレクション (情報工学)
text: 一般に、リフレクションとはオブジェクトがそれ自身の構造や計算上の意味を取得することを可能にするものである。リフレクションによるプログラミングパラダイムをリフレクティブプログラミング (reflective programming) という。
title: スーパーバイザー
text: コンピュータで、アプリケーションプログラムの実行を管理するプログラム、すなわちオペレーティングシステム(特にカーネル)を指す語である。
title: Intel HEX
text: Intel HEXはバイナリ情報をASCIIテキスト形式で記載したファイル形式である。マイクロコントローラやEPROMなどのプログラム可能なデバイスのプログラム書き込みのために広く用いられている。典型的な利用用途としてはコンパイラやアセンブラがプログラムのC言語やアセンブリ言語などのソースコードを機械語に変換し、HEXファイルとして出力する。HEXファイルはROMにマシン語のコードを「焼く」ために書き込み機によって読み込まれたり、対象のシステムで読み込んだり実行したりするために転送されたりする。
title: オペレーティングシステム
text: 個人が使用するコンピュータにはユーザインタフェースが必要とされる。ユーザインタフェースは必ずしもOSの一部とは限らない。通常はシェルなどのプログラムが実装しているが、人間とのやりとりが必要なプログラムは基本的にユーザインタフェースを備えている。ユーザインタフェースは、キーボードやマウスやクレジットカード読み取り機といった入力デバイスからのデータを取得するのにOSを介する必要があり、モニターやプリンターといった出力機器にプロンプトやメッセージを出力するのにもOSを介する必要がある。主なユーザインタフェースは、古くからあるキャラクタユーザインタフェース(コマンドラインインタフェース)と視覚的なグラフィカルユーザインタフェースに大別される。
title: コンピュータ
text: コンピュータを動作するためオペレーティングシステムは、ユーザー、もしくは他のプログラムからの要求に応じてプログラム(この意味では、アプリケーションソフトウェアもしくは単にアプリケーションという用語も使用される。ソフトウェアという用語も似た意味合いだが、これはプログラム一般を指すより広い概念である)をメモリー上にロードし、プログラムからの要求に応じていつ、どのリソース(メモリやI/O)をそのプログラムに割り当てるかを決定する。
title: メモリ管理
text: 現在のオペレーティングシステム(OS)においては、メモリ管理の1つとして仮想記憶が代表的である。
title: レコード (計算機科学)
text: レコード (英: record, structure)は構造体、複合データとも呼ばれ、計算機科学では、基本的なデータ構造である。データベースまたはスプレッドシートのレコードは通常、「行」と呼ばれる。
title: ディレクティブ
text: プログラミングにおける指示 (英: directive,ディレクティブ)とは, 特に手続き型プログラムの構成要素の一つを指す用語であり, 〔手続き型プログラムの〕制御部にあって,その性質によって手続き部の起動・終了を従わせる。
title: ストリーム (プログラミング)
text: メモリバッファの入出力を扱うもの、ネットワーク通信を扱うものなどさまざまなものがある。ファイルの入出力(読み書き)に対しては、ストリームとの変換を行う仕組みが用意される。
title: DOSエクステンダ
text: DOSエクステンダ(ドスエクステンダ)とは、MS-DOSなどのオペレーティングシステムを拡張するためのプログラムのことであり、アプリケーションプログラムの操作・実行環境である。
title: 構造化プログラミング
text: 構造化プログラミング(こうぞうかプログラミング、英: structured programming)とは、コンピュータプログラム上での処理の流れを明瞭化かつ平易化するための手法である。一般的には順接、分岐、反復の三つの制御構造(control structures)によって処理の流れを記述することであると認識されている。コードブロックとサブルーチンの仕組みも加えられることがある。制御構造は制御構文、構造化文(structured statement)または制御フロー文(control flow statement)とも呼ばれる。
title: エミュレータ (コンピュータ)
text: ICE (In-Circuit Emulator) やROMエミュレータ等はハードウェアによって実装されたエミュレータである。プログラマブルロジックデバイスに他の集積回路と同等のものを実装したものも一種のハードウェアによるエミュレータである。
title: オンチップ・エミュレータ
text: オンチップ・エミュレータ(英: on-chip emulator)は、基板上にマイクロプロセッサを実装した状態 (on-chip) でプログラムのデバッグを行うことのできる装置の総称で、主に組み込みシステムでのプログラム開発に使用する。ターゲットとなる基板とエミュレータ・ユニットをデバッグ用のインタフェースで接続し、さらにそのユニットとホストとなるパソコンをUSBやイーサネットなどで接続する形態が一般的である。
title: VTOC
text: VTOC (Volume Table of Contents、ブイトック)とは、メインフレームなどで磁気ディスク装置などのボリューム内のデータセットの位置情報などを記録したもの、ないしその領域である。
title: コンテンツ
text: 元々は、コンピュータの分野で、装置自体を「ハードウェア」、プログラムを「ソフトウェア」と呼ぶことから転じて、例えばビデオなどで、ビデオデッキなど機材を指して「ハード」、ビデオグラムなどの「作品」を「ビデオソフト」としていた。
title: スクリーンスクレイピング
text: スクリーンスクレイピング(Screen scraping)とは、あるプログラムが人間に読みやすい形で出力した結果からデータを抽出する技術のこと。
title: 記憶装置
text: 記憶装置(きおくそうち)は、コンピュータが処理すべきデジタルデータをある期間保持するのに使う、部品、装置、電子媒体の総称。「記憶」という語の一般的な意味にも対応する英語としてはメモリ(英: memory)である。記憶装置は「情報の記憶」を行う。他に「記憶装置」に相当する英語としてはストレージ デバイス(英: Storage Device)というものもある。
title: スニペット
text: プログラミングの実践において、「スニペット」とは文字通りエディタープログラムによってファイルに含まれるソースコードの一部を指し、コピー・アンド・ペーストプログラミングの形式である。の具体的な包含は、言語内で抽象化される関数やマクロなどの抽象化メソッドとは対照的である。したがって、スニペットは主に、これらの抽象化が利用できない、または望まれない場合、たとえば抽象化が不足している言語で、または明確さとオーバーヘッドがないために使用される。
title: SIMD
text: single instruction, multiple data(シングルインストラクション・マルチプルデータ、SIMD)とはコンピューターの演算処理に関するフリンの分類のひとつで、1つの命令を同時に複数のデータに適用する並列化の形態を指す。この手法にもとづく演算をベクトル演算 (vector operation) と呼ぶこともある。通例、SIMD命令により同時処理するのに適したデータ構造あるいはデータ型を利用するため、命令実行の前に処理対象のデータ列はいったん結合(パック)され、処理完了後に分解(アンパック)される。結合されたデータはpacked data(パックデータ、パックトデータ)と呼ばれる。
title: 命令セット
text: この他、エミュレータや仮想機械などインタプリタ型のソフトウェアによる実装や、ハードウェア記述言語などでFPGAなどのプログラマブルロジックデバイスのコンフィギュレーションとして記述されたソフトプロセッサがある。
title: オブジェクト指向プログラミング
text: オブジェクト指向プログラミング(オブジェクトしこうプログラミング、英: object-oriented programming、略語:OOP)とは、互いに密接な関連性を持つデータ(変数またはプロパティ)とコード(関数またはメソッド)をひとつにまとめてオブジェクトとし、それぞれ異なる性質と役割を持たせたオブジェクトの様々な定義と、それらオブジェクトを相互に作用させる様々なプロセスの設定を通して、プログラム全体を構築するソフトウェア開発手法である。
title: エミュレータ (コンピュータ)
text: ゲームエミュレータは、いわばゲーム機本体であるといえる。従ってゲームソフトを別に用意する必要がある。ゲームソフトといっても、デジタルデータであり、これが俗称でROMイメージなどと呼ばれる。エミュレータは、このROMイメージの内容をロードして再生することで、初めて動作する。CD-ROMやDVD-ROMといった汎用メディアを採用したソフトウェアである場合は、直接ロード可能な場合もあるが、それ以外の場合は実物のゲームソフトからコピーしてパソコン上にROMイメージを作り出す必要がある。
title: コアダンプ
text: コアダンプ(英語:core dump)は、ある時点の使用中のメモリの内容をそのまま記録したものであり、一般に異常終了したプログラムのデバッグに使われる。最近では、特定のプロセスのメモリイメージ(あるいはその一部)とレジスタの内容などの情報を格納したファイルを指すのが一般的である。しかし、本来は使用中メモリの内容を全てプリントアウトしたものを指した。
title: インタプリタ
text: インタプリタという手法、すなわち、「そのハードウェアが直接解釈するのではないプログラム」を受け取り、「プログラムで実装された抽象的な、あるいは仮想上のコンピュータで解釈実行する」というプログラムの実行法は、コンピュータが登場した時から、ないしそれ以前からある。
title: データフロープログラミング
text: データフロー言語では、データがプログラムの中心的概念となることを促進する。ただし、プログラムは常にデータを入力されそれを処理して結果を出力するものとは限らない。古いプログラムほどそのような前提が真であることが多く、UNIXオペレーティングシステムにおける単機能ツールをパイプで繋いでデータをやり取りするという形態が典型的である。データフロー言語でのプログラムは、コマンド行パラメータなどの入力を起点として、そのデータがどのように使われ、更新されるかを記述する。データは明示的であり、パイプや線で情報の流れが物理的に描かれることも多い。
title: マイクロカーネル
text: プロセス間通信 (IPC) とは、プロセス間の通信を可能にする何らかの機構であり、メッセージ送信がよく使われる。共有メモリも厳密にはプロセス間通信機構の一種だが、マイクロカーネルでIPCといえば一般にメッセージを指す。IPCにより、OSをサーバといういくつかの小さなプログラムで構築することができ、IPCを使ってサーバを他から呼び出すことができる。周辺ハードウェアのサポートもそのように実装でき、サーバにはデバイスドライバ、ネットワークのプロトコルスタック、ファイルシステム、グラフィックスなど様々なものがある。
title: プロパティ
text: Microsoft Windowsにおけるプロパティは、コンピュータ、ファイル、アプリケーションの各種設定などの情報を保持した属性のことである。
title: 共有メモリ
text: 情報処理において共有メモリ(きょうゆうメモリ)とは、複数のプログラムが同時並行的にアクセスするメモリである。
title: エミュレータ
text: エミュレータ(英: Emulator)とは、コンピュータや機械の模倣装置あるいは模倣ソフトウェアのことである。
title: データ
text: データの流れは、データフローと呼ばれ、データフローダイアグラムなどを用いて記述される。
title: ストリーミング
text: ストリーミング(英語: Streaming)とは、主に音声や動画などのマルチメディアファイルを転送・再生するダウンロード方式の一種である。
title: Sed (コンピュータ)
text: sed(セド)は、入力ストリーム(ファイルまたはパイプラインからの入力)に対してテキスト変換などのデータ処理をおこなうために使用されるプログラムである。名称「sed」は「ストリームエディタ」を意味する英語「stream editor」に由来する。
title: トレイト
text: トレイト (英: trait) とはコンピュータープログラミングにおける概念で、構造的にオブジェクト指向プログラミングを行うための簡素な概念モデルとして使われるメソッド群の集まりである。
title: メモリデバッガ
text: メモリデバッガ(英: memory debugger)とは、動的メモリの確保や開放により生じるメモリリークやバッファオーバーランなどのバグを探し出すためのプログラミングツールである。マネージコードなどのガベージコレクションを備えた言語で記述されたプログラムでも、たとえばコレクションに格納されたままのリファレンスによるメモリリークといった問題が存在するためメモリデバッガが必要な場合がある。
title: プラグアンドプレイ
text: プラグアンドプレイ (Plug and Play, PnP) は、パーソナルコンピュータ(パソコン)に周辺機器や拡張カード等を接続した際にハードウェアとファームウェア、ドライバ、オペレーティングシステム、およびアプリケーション間が自動的に協調し、機器の組み込みと設定を自動的に行う仕組みのことである。パソコンのユーザビリティ(使い勝手)を向上させる技術の1つ。ドライバの自動インストール機能 とも呼ばれる。
title: データバインディング
text: 明示的なUIの操作・更新を用いてデータをUIへ反映するのではなく、その操作を抽象化することでデータの変更が自動的にUI変更へ反映されるようにする。XMLなどのデータソースとアプリケーションやウェブページ(ウェブアプリケーション)のユーザインタフェースを結合する際にしばしば用いられる。データバインディングを基礎とするプログラミングスタイルをリアクティブプログラミング(英語版)と呼ぶ。。
title: リダイレクト (CLI)
text: コンピューティングにおいて、リダイレクト(英語: Redirect)とはリダイレクションを行うこと。リダイレクションとは、様々なシェルを含むほとんどのコマンドラインインタプリタに共通の機能であり、標準ストリームをユーザで指定した位置に変更する機能のこと。
title: レジスタファイル
text: レジスタファイル(英: Register file)は、コンピュータの中央演算装置(CPU)にレジスタを多数集積したものである。