While there is variation in the way CPUs, memory, and caches are implemented, there is even more variation
in the ways in which I/O is implemented. First of all, there are many different I/O devices. Some are for interacting
with humans, such as keyboards, mice, touch screens, and displays. Others are for use by the computer directly,
such as disk drives, tape drives, and network interfaces.
I/O devices also vary enormously in speed, and they??™re all much slower than the CPU and main memory. A
typist working at 40 words per minute is going pretty fast, and striking about 200 keys a minute, or one key every
.3 seconds. Let??™s compute how many instructions a 1 GHz personal computer might execute during that .3 seconds.
Some instructions execute on one clock cycle, but many require more than one. Let??™s assume that an average
instruction requires 3 cycles. If that??™s the case, then the 1 GHz computer executes 330 million instructions per
second, or 99 million instructions in the time it takes to type one letter.
To get a feel for the difference in speed between the keyboard and the CPU, imagine that the typist walks
one foot in the time it takes to type one letter, and imagine also that the computer travels one foot in the time it
takes to execute an instruction.
Pages:
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117