プリンキピア

第5章アルゴリズムのハードウェアによる実現:コンピューターシステム設計

Chapter Review章の復習

Key Terms重要用語

abstraction
抽象化
removal of unimportant elements of a program or computer code that distract from its process
プログラムやコンピューターのコードから、その処理の理解を妨げる重要でない要素を取り除くこと。
addressing mode
アドレッシングモード
location in the memory that contains the required data
必要なデータが格納されているメモリ内の場所。
American Standard Code for Information Interchange (ASCII)
情報交換用米国標準コード(ASCII)
unit code or unique binary number
個別のコード、すなわち固有の2進数。
arithmetic logic unit (ALU)
算術論理演算装置(ALU)
piece of hardware inside the CPU that performs computations and logical operations such as comparisons
計算や比較などの論理演算を行う、CPU内部のハードウェア。
assembler
アセンブラ
takes the assembly program that takes I/O that contains the equivalent of an assembly program
アセンブリプログラムに等価な内容を含む入出力を扱う、アセンブリプログラムを受け取るもの。
assembly language
アセンブリ言語
low-level language that is designed to be computer friendly
コンピューターにとって扱いやすいように設計された低水準言語。
bit
ビット
binary digit made up of 1 or 0
1または0からなる2進数字。
block
ブロック
group of pages in flash memory
フラッシュメモリにおけるページの集まり。
bus
バス
data pathway
データの通り道。
byte
バイト
8 bits
8ビット。
cache hit
キャッシュヒット
data found in the cache needed by the processor
プロセッサが必要とするデータが、キャッシュで見つかること。
cache memory
キャッシュメモリ
memory that allows for high-speed retrieval of data
データを高速に取り出せるメモリ。
cache miss
キャッシュミス
when the cache is empty so it does not have the needed data
キャッシュが空で、必要なデータがないこと。
capacitor
コンデンサー
very small electrical component that stores an electric charge
電荷を蓄える、非常に小さな電気部品。
complex instruction set computer (CISC)
複雑命令セットコンピューター(CISC)
complex architecture structure that assists in executing such operations as mathematical computations and memory storage
数学的な計算やメモリへの保存などの操作を実行するのに役立つ、複雑なアーキテクチャー構造。
disk
ディスク
storage mechanism for data
データを保存する仕組み。
dual in-line memory module (DIMM)
デュアルインラインメモリモジュール(DIMM)
small memory board that contains several memory banks
複数のメモリバンクを含む小さなメモリ基板。
dynamic library
動的ライブラリ
collection of libraries that may be linked during execution or while the program is running
実行時やプログラムの動作中に結合できるライブラリの集まり。
dynamic random access memory (DRAM)
ダイナミックランダムアクセスメモリ(DRAM)
consists of a large number of capacitors
多数のコンデンサーで構成されるメモリ。
executable
実行可能プログラム
program stored inside a computer
コンピューター内部に保存されたプログラム。
flag
フラグ
tells a program if a condition has been met
条件が満たされたかどうかをプログラムに伝えるもの。
flash memory
フラッシュメモリ
type of nonvolatile storage that can be electronically erased and reprogrammed is called
電子的に消去して再書き込みできる、不揮発性ストレージの一種。
floating point number (also, real number)
浮動小数点数(実数ともいう)
one with a decimal point in the middle
途中に小数点を持つ数。
hard disk drive (HDD)
ハードディスクドライブ(HDD)
stores data on rotating platter, has a very large capacity, and uses a small motor to rotate platters to get the data
回転する円盤にデータを保存する。容量が非常に大きく、小型モーターで円盤を回してデータを取得する。
heap
ヒープ
stores dynamically allocated data
動的に割り当てられたデータを保存する領域。
heterogeneous
異種混在
design feature where CPUs are different in speed, power, or efficiency
CPUが速度、電力、効率の点で異なるという設計上の特徴。
high-level language (HLL)
高水準言語(HLL)
most evolved method by which a human can direct a computer on how to perform tasks and applications
人間がコンピューターにタスクやアプリケーションの実行方法を指示する、最も進化した方法。
hit rate
ヒット率
number, usually a percentage, of times the cache was used to retrieve data
データの取得にキャッシュが使われた回数を、通常は百分率で表したもの。
homogeneous
同種
when CPUs are copies of each other in design
CPUどうしが設計上、互いの複製であること。
IEEE 754
IEEE 754
standard format used by computers that support floating points with very few exceptions
浮動小数点に対応するコンピューターが、ごくわずかな例外を除いて使う標準形式。
input/output (I/O)
入出力(I/O)
interface that helps the CPU talk to other I/O devices such as a keyboard or mouse
CPUがキーボードやマウスなどの入出力機器と通信するためのインターフェース。
instruction set architecture (ISA)
命令セットアーキテクチャー(ISA)
set of instructions recognized by each processor family
各プロセッサファミリーが認識する命令の集合。
label
ラベル
variable name that we give to an assembly instruction
アセンブリ命令に付ける変数名。
library
ライブラリ
collection of files, functions, or scripts that are cited within a program’s code
プログラムのコード内から参照されるファイル、関数、スクリプトの集まり。
loader
ローダー
puts the executable into memory and arranges its content in a specific way to make it ready for execution by the processor
実行可能プログラムをメモリに置き、プロセッサが実行できるように、その内容を所定の形に配置するもの。
locality
局所性
when a processor repeatedly visits the same memory locales
プロセッサが同じメモリの場所を繰り返し訪れること。
logic gate
論理ゲート
main building block that forms the processor
プロセッサを構成する主要な基本要素。
memory hierarchy
メモリ階層
arrangement of storage available on a computer system usually in the form of a triangle
コンピューターシステムで利用できる記憶装置を、通常は三角形の形に配置したもの。
microarchitecture
マイクロアーキテクチャー
architecture, or design, of the processor or microprocessor
プロセッサ、すなわちマイクロプロセッサのアーキテクチャー、つまり設計。
NAND gate
NANDゲート
type of logic gate used to store bits in flash memory
フラッシュメモリでビットを保存するために使う論理ゲートの一種。
neuromorphic computer
ニューロモーフィックコンピューター
nontraditional computer built to act like a simplified version of the brain
脳を単純化したもののように動作するよう作られた、従来とは異なるコンピューター。
object code
オブジェクトコード
designates output of the assembler
アセンブラの出力を指す。
one’s complement
1の補数
obtained by flipping each 1 in the original binary number to 0 and each 0 to 1
元の2進数の1をすべて0に、0をすべて1に反転して得られるもの。
operand
オペランド
value used as an input for an operator
演算子への入力として使う値。
operating system (OS)
オペレーティングシステム(OS)
only piece of software that can directly access the hardware
ハードウェアに直接アクセスできる唯一のソフトウェア。
pipelining
パイプライン処理
technique where each piece of the process does the work needed by the following piece
処理の各部分が、次の部分で必要になる仕事を行う技法。
processor
プロセッサ
another name for the CPU
CPUの別名。
program counter (PC)
プログラムカウンター(PC)
register that keeps track of instructions to be executed
実行する命令を把握するレジスタ。
pseudo-assembly
擬似アセンブリ
assembly instruction that does not have a counterpart in the machine code
機械語コードに対応するものがないアセンブリ命令。
random access memory (RAM)
ランダムアクセスメモリ(RAM)
allows the process to access any part of the memory in any order
プロセスがメモリのどの場所にも、任意の順序でアクセスできるメモリ。
reduced instruction set computer (RISC)
縮小命令セットコンピューター(RISC)
simple instructions
単純な命令。
refresh cycle
リフレッシュサイクル
regular operation that DRAM memory does by adding charges to memory cells in order to lose the data stored as charges
電荷として保存されたデータを失うために、DRAMがメモリセルに電荷を加える、定期的な操作。
register
レジスタ
memory unit that functions at a very high speed
非常に高速に動作する記憶装置。
register file
レジスタファイル
group of registers
レジスタの集まり。
scheduling
スケジューリング
when the OS manages which program to use with what part of the hardware at any given time
ある時点で、どのプログラムにハードウェアのどの部分を使わせるかを、OSが管理すること。
signed integer
符号付き整数
integer that can be negative or positive (sign of + or –)
負にも正にもなれる整数(+または−の符号を持つ)。
simultaneous multithreading (SMT)
同時マルチスレッディング(SMT)
when two or more programs execute on the processor at the same time
二つ以上のプログラムが、同じプロセッサで同時に実行されること。
solid-state drive (SSD)
ソリッドステートドライブ(SSD)
stores data on a chip and is two to three orders of magnitude faster than HDD
チップにデータを保存し、HDDより2〜3桁高速な装置。
spatial locality
空間的局所性
idea that if a program accesses data in a consecutive manner, it gets better performance
プログラムが連続した順序でデータにアクセスすれば、性能がよくなるという考え方。
spatial parallelism
空間的並列性
type of parallelism capability
並列処理能力の一種。
stack
スタック
used to store local variables
ローカル変数の保存に使う領域。
static random access memory (SRAM)
スタティックランダムアクセスメモリ(SRAM)
keeps data in the computer’s memory as long as the machine is powered on
電源が入っている間、コンピューターのメモリにデータを保持するもの。
superscalar capability
スーパースカラー能力
execution unit that allows several instructions to be executed at the same time using spatial parallelism
空間的並列性を使って、複数の命令を同時に実行できる実行ユニット。
temporal locality
時間的局所性
reuses cached data to get better performance
キャッシュ内のデータを再利用して、性能を高めること。
temporal parallelism
時間的並列性
allows for different pipeline phases to work on different instructions
パイプラインの異なるフェーズが、異なる命令を処理できること。
transistor
トランジスタ
lets an electric current pass (on state) or blocks it (off state)
電流を通す(オン状態)か、遮断する(オフ状態)もの。
translation layer
変換層
circuitry that controls the flash memory
フラッシュメモリを制御する回路。
two’s complement
2の補数
one’s complement with 1 added
1の補数に1を加えたもの。
unsigned integer
符号なし整数
non-negative integer that starts from 0
0から始まる非負の整数。
vector instructions
ベクトル命令
another set of instructions and another set of registers for floating points
浮動小数点のための、別の命令群とレジスタ群。
virtual memory
仮想記憶
technique the OS uses to isolate different programs from each other so they do not overwrite each other’s data or corrupt each other’s files
プログラムどうしがデータを上書きしたり、ファイルを破損させたりしないように、OSが異なるプログラムを分離する技法。