きゅー
キュー
先入れ先出しのルールでデータを処理する管理手法です。最初に入ったデータが最初に処理されるため、順序を守った実行が必要な印刷待ちやタスク管理に不可欠です。
詳しい説明
先入れ先出し(FIFO: First-In First-Out)というルールでデータを管理するデータ構造です。列に並んだ順に処理される仕組みであり、コンピュータ内部で処理待ちのタスクや通信データの一時保存などに欠かせない役割を果たしています。最初に入ったデータが最初に出ていくという単純なルールにより、順序を維持した効率的な処理が可能です。
具体的には、プリンタの印刷待ちや、OSのタスクスケジューラでの処理実行待ちなどで利用されます。データを入れる操作をエンキュー、取り出す操作をデキューと呼びます。メモリ上で領域を確保し、先頭と末尾のポインタを管理することで、データの追加や削除を高速に行えるようになっています。
混同しやすいのは、後入れ先出し(LIFO)の「スタック」です。スタックは一番最後に入れたものが最初に出てくるため、プログラムの関数呼び出しの戻り先管理などに使われます。試験では、このキューとスタックの違い、およびFIFOとLIFOという性質が問われます。また、順序を守るべきか、最新を優先すべきかという観点での選定が重要になります。
試験で問われること
ITパスポート試験
- 先入れ先出し(FIFO)という基本的なルールを押さえる。
- 処理待ちの列としてメモリ上で使われる役割を理解する。
- OSのタスク管理などの具体的な利用場面と結びつける。
基本情報技術者試験
- スタック(LIFO)との動作の違いを正しく区別する。
- アルゴリズムやデータ構造の文脈で処理順序を問われる。
- エンキューとデキューの操作概念を理解する。