ログイン

計算機工学4
18問 • 1年前
  • K
  • 通報

    問題一覧

  • 1

    スレッドプール

    複数のタスクを処理するために用意されたスレッドの集合のこと。

  • 2

    演算装置・主記憶装置・補助記憶装置それぞれの役割

    ●演算装置(Arithmetic Logic Unit, ALU) : プログラムの実行に必要な計算を行うために、 算術演算(加算、減算、乗算、除算など)と論理演算(AND、OR、NOT、XORなど)を行う。 ●主記憶装置(Main Memory) :コンピュータが直接アクセスできる記憶領域で、現在実行中のプログラムとそのデータとを一時的に保存する。主記憶装置は揮発性であり、電源が切れるとその内容は失われます。主記憶装置の速度は非常に高く、CPUが直接アクセスできる唯一の大容量記憶装置です。主記憶装置はRAM(ランダムアクセスメモリ)と呼ばれることもあります。 ●補助記憶装置(Secondary Storage) :データを長期間保存するための装置である。補助記憶装置は非揮発性であり、電源が切れてもデータは保持されます。補助記憶装置は主記憶装置よりも大容量で、一般的には速度は遅いですが、データの永続的な保存が可能です。ハードディスクドライブ(HDD)、ソリッドステートドライブ(SSD)、光ディスク(CD、DVD、Blu-ray)、テープドライブなどがあります。

  • 3

    ソースコード・バイトコード・ネイティブコード

    ●ソースコード :人間が理解・記述しやすい言語やデータ形式を用いて書き記されたコンピュータプログラム。PythonやJavaなどの言語で書かれたコード。 ●バイトコード :特定の仮想マシン(例: JVM, CLR)上で実行される中間言語。異なるプラットフォーム上で同じバイトコードを実行できる。ソースコードよりも高速に解釈・実行できる一方、特定のCPUの仕様や実装からは独立しており、様々な環境に容易に適応させることができる。すなわち、「ソースコード」と「ネイティブコード」の中間的な性質を持つ。 ●ネイティブコード(オブジェクトコード、マシンコード) :特定のCPUに向けて作られた機械語。

  • 4

    JITコンパイラ(実行時コンパイラ)

    プログラムの実行時に、「ソースコード」や「バイトコード」などの中間コードを、「ネイティブ(マシン)コード」に変換する。 「ソースコード」や「バイトコード」などの中間コードのうち、頻繁に実行される部分(ホットスポット)のみをコンパイルすることで、実行速度を向上させることができる。

  • 5

    スーパーバイザ モード

    CPUの実行モードの一つで、すべての命令を制限なく実行できるモード。OSの中核部(カーネル)が動作するモード。

  • 6

    動的アドレス変換機構(Dynamic Address Translation: DAT)

    仮想記憶管理の一部として、プログラムが使う仮想アドレスを物理メモリの実アドレスに変換するハードウェア機構。これにより、大規模なプログラムを実行したり、複数のプログラムを同時に実行したりすることが可能にする。具体的には、メモリ変換ユニット(Memory Management Unit:MMU)というハードウェアによって物理アドレスに変換される。

  • 7

    コンパイラ

    人間に分かりやすく複雑な機能や構文を持つ高水準プログラミング言語で書かれたコンピュータプログラム(ソースコード)を、コンピュータが直に実行可能な機械語や、それに相当する中間言語などで記述された「オブジェクトコード」に変換するソフトウェア。コンピュータが解釈・実行できる形式にする。

  • 8

    リンカ(linker)

    機械語(マシン語)で記述されたプログラム(オブジェクトコード)を連結、編集して実行可能ファイルを作成するソフトウェア。

  • 9

    ローダ(loader)

    ストレージ(外部記憶装置)上のファイルに記録された内容をメインメモリ(RAM)に読み出したり、ネットワークを通じて他のコンピュータからデータを受信するソフトウェア。

  • 10

    動的リンク(dynamic link)

    プログラムの実行に必要なライブラリやモジュールなどを、実行時にリンク(連結)して起動すること。 開発時にはライブラリなどの呼び出し側コードのみを実行ファイルに含め、実行時に呼び出される側のコード本体を含むライブラリなどを連結する。ライブラリ部分だけ更新・修正することも可能となる。

  • 11

    構文解析(syntax analysis)

    コンピュータ言語で書かれた文の内容を解析し、その構成要素がどのような関係にあるかを明らかにして、データ構造に変換する操作のこと。 ※コンパイラによるソースプログラムからオブジェクトプログラムの生成手順 ①「字句解析」:コンピュータ言語で書かれたソースコードを、言語仕様上意味を成す字句の最小単位であるトークンの列に置き換える。 ②「構文解析」:トークン間の関係性を解析し、構文木などのデータ構造として表す。 ③「意味解析」:属性間(例えば、整数型と変数型など)に矛盾が生じていないかどうかを検査する。 ④「コード生成」

  • 12

    字句解析(lexical analysis)

    ある言語で書かれた文について、文字の並びを解析し、言語的に意味のある最小の単位(トークン)に分解する処理のこと。 ※コンパイラによるソースプログラムからオブジェクトプログラムの生成手順 ①「字句解析」:コンピュータ言語で書かれたソースコードを、言語仕様上意味を成す字句の最小単位であるトークンの列に置き換える。 ②「構文解析」:トークン間の関係性を解析し、構文木などのデータ構造として表す。 ③「意味解析」:属性間(例えば、整数型と変数型など)に矛盾が生じていないかどうかを検査する。

  • 13

    意味解析

    属性間(例えば、整数型と変数型など)に矛盾が生じていないかどうかを検査する処理のこと。 ※コンパイラによるソースプログラムからオブジェクトプログラムの生成手順 ①「字句解析」:コンピュータ言語で書かれたソースコードを、言語仕様上意味を成す字句の最小単位であるトークンの列に置き換える。 ②「構文解析」:トークン間の関係性を解析し、構文木などのデータ構造として表す。 ③「意味解析」:属性間(例えば、整数型と変数型など)に矛盾が生じていないかどうかを検査する。

  • 14

    デバッグ(debug)

    テストなどによって発見された誤作動・不具合について、その原因やソースコード上での位置を探索・特定し、意図した通りに動作するように修正する作業のこと。

  • 15

    シンボル情報

    関数名、変数名、ソースコード上の位置情報などが含まれる情報。シンボル情報は、デバッグ時にプログラムの動作を理解し、問題を特定するのに役立つ。 オブジェクトコードに付加されている。

  • 16

     デバッガ(debugger)

    プログラミングの際に用いる開発ツールの一つで、プログラムの欠陥(バグ)を発見・修正するデバッグ(debug)作業を支援するソフトウェア。自動的にデバッグしてくれるソフトウェアではない。 デバッガはプログラムの実行状態に介入したり、実行中のある瞬間におけるコード中の変数やメモリの特定の番地、CPU内部のレジスタなどの値を表示することができ、どこで誤りが生じているのか探し出すのを手助けしてくれる。 ブレークポイント(breakpoint)機能はプログラマがコード中の任意の箇所を指定し、実行時にその場所に差し掛かったら強制的に実行を一時停止してその時点での変数などの状態を確認することができる。 ステップ実行(step by step execution)あるいはシングルステップ実行(single stepping)は、ブレークポイントなどで一時停止後、プログラムを一ステップ(一行、一命令など)ごとに実行する機能で、各ステップで実際にどのような処理が行われたかを確認しながら実行を進めることができる。 ステップ実行中に関数呼び出しなどに出くわした場合に、その内部へ移動してさらにステップ実行するステップイン、ステップインした関数等の終了までを一気に実行(呼び出し元に戻った時点で一時停止)するステップアウト、関数等の呼び出しなどをスキップするステップオーバーなどの機能が利用できる場合もある。

  • 17

    サブルーチン(subroutine)

    コンピュータプログラムの中で特定の機能や処理をひとまとまりの集合として定義し、他の箇所から呼び出して実行できるようにしたもの。その処理を何度も繰り返し記述・複製する必要がなくなり、コード量の削減や開発効率の向上、記述ミスなどによる誤り(バグ)の減少などが期待できる。

  • 18

    スタックオーバーフロー(stack overflow)

    関数などの呼び出し時にデータの一時的な保管に用いられるスタックが満杯になり、呼び出しに失敗すること。 プログラムが実行される際、メインメモリから一定の容量が「コールスタック」(call stack)と呼ばれる制御用のデータ保管領域として確保される。関数などの呼び出しが行われると、呼び出し側の実行状態をスタックに一時保管し、呼び出しが終了すると保管された内容を取り出して呼び出し前の状態が復元される。 スタックには呼び出した関数などの終了時に戻るべきメモリ上の実行位置(リターンアドレス)や、呼び出し側が保持していたレジスタなどの情報が記録される。スタックへの保管は末尾へのデータの追加(プッシュ操作)により行われ、取り出し時は末尾にあるものから取り出される(ポップ操作)。 呼び出し先の関数などがさらに別の関数などを呼び出すと、スタックの末尾に追加で制御情報がプッシュされていく。スタックの容量には限りがあるため、何重にも次々に関数を呼び出していくと容量を使い果たしてそれ以上データを追加できなくなる。スタックが満杯の状態で呼び出しが行われるとスタックオーバーフローとなりプログラムは異常終了する。

  • 1. 国際出願

    1. 国際出願

    K · 62問 · 1年前

    1. 国際出願

    1. 国際出願

    62問 • 1年前
    K

    2. 国際調査

    2. 国際調査

    K · 44問 · 1年前

    2. 国際調査

    2. 国際調査

    44問 • 1年前
    K

    3. 国際公開

    3. 国際公開

    K · 11問 · 1年前

    3. 国際公開

    3. 国際公開

    11問 • 1年前
    K

    4. 国際予備審査

    4. 国際予備審査

    K · 14回閲覧 · 43問 · 1年前

    4. 国際予備審査

    4. 国際予備審査

    14回閲覧 • 43問 • 1年前
    K

    5. 国内移行手続及び国内段階

    5. 国内移行手続及び国内段階

    K · 12問 · 1年前

    5. 国内移行手続及び国内段階

    5. 国内移行手続及び国内段階

    12問 • 1年前
    K

    特実 趣旨

    特実 趣旨

    K · 60問 · 1年前

    特実 趣旨

    特実 趣旨

    60問 • 1年前
    K

    意匠 趣旨

    意匠 趣旨

    K · 35問 · 1年前

    意匠 趣旨

    意匠 趣旨

    35問 • 1年前
    K

    商標 趣旨

    商標 趣旨

    K · 64問 · 1年前

    商標 趣旨

    商標 趣旨

    64問 • 1年前
    K

    商標 判例

    商標 判例

    K · 17問 · 1年前

    商標 判例

    商標 判例

    17問 • 1年前
    K

    計算機工学

    計算機工学

    K · 590問 · 1年前

    計算機工学

    計算機工学

    590問 • 1年前
    K

    計算機工学2

    計算機工学2

    K · 100問 · 1年前

    計算機工学2

    計算機工学2

    100問 • 1年前
    K

    計算機工学3

    計算機工学3

    K · 83問 · 1年前

    計算機工学3

    計算機工学3

    83問 • 1年前
    K

    問題一覧

  • 1

    スレッドプール

    複数のタスクを処理するために用意されたスレッドの集合のこと。

  • 2

    演算装置・主記憶装置・補助記憶装置それぞれの役割

    ●演算装置(Arithmetic Logic Unit, ALU) : プログラムの実行に必要な計算を行うために、 算術演算(加算、減算、乗算、除算など)と論理演算(AND、OR、NOT、XORなど)を行う。 ●主記憶装置(Main Memory) :コンピュータが直接アクセスできる記憶領域で、現在実行中のプログラムとそのデータとを一時的に保存する。主記憶装置は揮発性であり、電源が切れるとその内容は失われます。主記憶装置の速度は非常に高く、CPUが直接アクセスできる唯一の大容量記憶装置です。主記憶装置はRAM(ランダムアクセスメモリ)と呼ばれることもあります。 ●補助記憶装置(Secondary Storage) :データを長期間保存するための装置である。補助記憶装置は非揮発性であり、電源が切れてもデータは保持されます。補助記憶装置は主記憶装置よりも大容量で、一般的には速度は遅いですが、データの永続的な保存が可能です。ハードディスクドライブ(HDD)、ソリッドステートドライブ(SSD)、光ディスク(CD、DVD、Blu-ray)、テープドライブなどがあります。

  • 3

    ソースコード・バイトコード・ネイティブコード

    ●ソースコード :人間が理解・記述しやすい言語やデータ形式を用いて書き記されたコンピュータプログラム。PythonやJavaなどの言語で書かれたコード。 ●バイトコード :特定の仮想マシン(例: JVM, CLR)上で実行される中間言語。異なるプラットフォーム上で同じバイトコードを実行できる。ソースコードよりも高速に解釈・実行できる一方、特定のCPUの仕様や実装からは独立しており、様々な環境に容易に適応させることができる。すなわち、「ソースコード」と「ネイティブコード」の中間的な性質を持つ。 ●ネイティブコード(オブジェクトコード、マシンコード) :特定のCPUに向けて作られた機械語。

  • 4

    JITコンパイラ(実行時コンパイラ)

    プログラムの実行時に、「ソースコード」や「バイトコード」などの中間コードを、「ネイティブ(マシン)コード」に変換する。 「ソースコード」や「バイトコード」などの中間コードのうち、頻繁に実行される部分(ホットスポット)のみをコンパイルすることで、実行速度を向上させることができる。

  • 5

    スーパーバイザ モード

    CPUの実行モードの一つで、すべての命令を制限なく実行できるモード。OSの中核部(カーネル)が動作するモード。

  • 6

    動的アドレス変換機構(Dynamic Address Translation: DAT)

    仮想記憶管理の一部として、プログラムが使う仮想アドレスを物理メモリの実アドレスに変換するハードウェア機構。これにより、大規模なプログラムを実行したり、複数のプログラムを同時に実行したりすることが可能にする。具体的には、メモリ変換ユニット(Memory Management Unit:MMU)というハードウェアによって物理アドレスに変換される。

  • 7

    コンパイラ

    人間に分かりやすく複雑な機能や構文を持つ高水準プログラミング言語で書かれたコンピュータプログラム(ソースコード)を、コンピュータが直に実行可能な機械語や、それに相当する中間言語などで記述された「オブジェクトコード」に変換するソフトウェア。コンピュータが解釈・実行できる形式にする。

  • 8

    リンカ(linker)

    機械語(マシン語)で記述されたプログラム(オブジェクトコード)を連結、編集して実行可能ファイルを作成するソフトウェア。

  • 9

    ローダ(loader)

    ストレージ(外部記憶装置)上のファイルに記録された内容をメインメモリ(RAM)に読み出したり、ネットワークを通じて他のコンピュータからデータを受信するソフトウェア。

  • 10

    動的リンク(dynamic link)

    プログラムの実行に必要なライブラリやモジュールなどを、実行時にリンク(連結)して起動すること。 開発時にはライブラリなどの呼び出し側コードのみを実行ファイルに含め、実行時に呼び出される側のコード本体を含むライブラリなどを連結する。ライブラリ部分だけ更新・修正することも可能となる。

  • 11

    構文解析(syntax analysis)

    コンピュータ言語で書かれた文の内容を解析し、その構成要素がどのような関係にあるかを明らかにして、データ構造に変換する操作のこと。 ※コンパイラによるソースプログラムからオブジェクトプログラムの生成手順 ①「字句解析」:コンピュータ言語で書かれたソースコードを、言語仕様上意味を成す字句の最小単位であるトークンの列に置き換える。 ②「構文解析」:トークン間の関係性を解析し、構文木などのデータ構造として表す。 ③「意味解析」:属性間(例えば、整数型と変数型など)に矛盾が生じていないかどうかを検査する。 ④「コード生成」

  • 12

    字句解析(lexical analysis)

    ある言語で書かれた文について、文字の並びを解析し、言語的に意味のある最小の単位(トークン)に分解する処理のこと。 ※コンパイラによるソースプログラムからオブジェクトプログラムの生成手順 ①「字句解析」:コンピュータ言語で書かれたソースコードを、言語仕様上意味を成す字句の最小単位であるトークンの列に置き換える。 ②「構文解析」:トークン間の関係性を解析し、構文木などのデータ構造として表す。 ③「意味解析」:属性間(例えば、整数型と変数型など)に矛盾が生じていないかどうかを検査する。

  • 13

    意味解析

    属性間(例えば、整数型と変数型など)に矛盾が生じていないかどうかを検査する処理のこと。 ※コンパイラによるソースプログラムからオブジェクトプログラムの生成手順 ①「字句解析」:コンピュータ言語で書かれたソースコードを、言語仕様上意味を成す字句の最小単位であるトークンの列に置き換える。 ②「構文解析」:トークン間の関係性を解析し、構文木などのデータ構造として表す。 ③「意味解析」:属性間(例えば、整数型と変数型など)に矛盾が生じていないかどうかを検査する。

  • 14

    デバッグ(debug)

    テストなどによって発見された誤作動・不具合について、その原因やソースコード上での位置を探索・特定し、意図した通りに動作するように修正する作業のこと。

  • 15

    シンボル情報

    関数名、変数名、ソースコード上の位置情報などが含まれる情報。シンボル情報は、デバッグ時にプログラムの動作を理解し、問題を特定するのに役立つ。 オブジェクトコードに付加されている。

  • 16

     デバッガ(debugger)

    プログラミングの際に用いる開発ツールの一つで、プログラムの欠陥(バグ)を発見・修正するデバッグ(debug)作業を支援するソフトウェア。自動的にデバッグしてくれるソフトウェアではない。 デバッガはプログラムの実行状態に介入したり、実行中のある瞬間におけるコード中の変数やメモリの特定の番地、CPU内部のレジスタなどの値を表示することができ、どこで誤りが生じているのか探し出すのを手助けしてくれる。 ブレークポイント(breakpoint)機能はプログラマがコード中の任意の箇所を指定し、実行時にその場所に差し掛かったら強制的に実行を一時停止してその時点での変数などの状態を確認することができる。 ステップ実行(step by step execution)あるいはシングルステップ実行(single stepping)は、ブレークポイントなどで一時停止後、プログラムを一ステップ(一行、一命令など)ごとに実行する機能で、各ステップで実際にどのような処理が行われたかを確認しながら実行を進めることができる。 ステップ実行中に関数呼び出しなどに出くわした場合に、その内部へ移動してさらにステップ実行するステップイン、ステップインした関数等の終了までを一気に実行(呼び出し元に戻った時点で一時停止)するステップアウト、関数等の呼び出しなどをスキップするステップオーバーなどの機能が利用できる場合もある。

  • 17

    サブルーチン(subroutine)

    コンピュータプログラムの中で特定の機能や処理をひとまとまりの集合として定義し、他の箇所から呼び出して実行できるようにしたもの。その処理を何度も繰り返し記述・複製する必要がなくなり、コード量の削減や開発効率の向上、記述ミスなどによる誤り(バグ)の減少などが期待できる。

  • 18

    スタックオーバーフロー(stack overflow)

    関数などの呼び出し時にデータの一時的な保管に用いられるスタックが満杯になり、呼び出しに失敗すること。 プログラムが実行される際、メインメモリから一定の容量が「コールスタック」(call stack)と呼ばれる制御用のデータ保管領域として確保される。関数などの呼び出しが行われると、呼び出し側の実行状態をスタックに一時保管し、呼び出しが終了すると保管された内容を取り出して呼び出し前の状態が復元される。 スタックには呼び出した関数などの終了時に戻るべきメモリ上の実行位置(リターンアドレス)や、呼び出し側が保持していたレジスタなどの情報が記録される。スタックへの保管は末尾へのデータの追加(プッシュ操作)により行われ、取り出し時は末尾にあるものから取り出される(ポップ操作)。 呼び出し先の関数などがさらに別の関数などを呼び出すと、スタックの末尾に追加で制御情報がプッシュされていく。スタックの容量には限りがあるため、何重にも次々に関数を呼び出していくと容量を使い果たしてそれ以上データを追加できなくなる。スタックが満杯の状態で呼び出しが行われるとスタックオーバーフローとなりプログラムは異常終了する。