Computer Science GRE Study Guide, Networking and communications

Table of Contents

II.    Computer Organization and Architecture – 15%

D.    Networking and communications

1.      Interconnect structures (e.g. buses, switches, routers)

a.       Caveat: I do not have time to put any information in this section. According to people that took the test in November 2003, there are networking questions on the test.

2.      I/O systems and protocols

a.       Caveat: I do not have time to put any information in this section. According to people that took the test in November 2003, there are networking questions on the test.

3.      Synchronization

a.       Caveat: I do not have time to put any information in this section. According to people that took the test in November 2003, there are networking questions on the test.

E.     High-performance architectures

1.      Pipelining superscalar and out-of-order execution processors

a.       Definition: If tasks must be executed in a specific order, then we say they are scalar. However, when trying to complete the same task multiple times, it may be possible to perform one step from each of the iterations at the same time.

b.      Most modern processors use pipelining – performing multiple instructions at the same time.

2.      Parallel and distributed architectures

a.       Definition: Many programs lend themselves to multiple calculations being performed simultaneously. If we have multiple processors accessing the same main memory, then we tend to say they are parallel. If each processor has its own main memory, then we tend to say the system is distributed.

b.      It is possible and often beneficial to have multiple processors in the same computer. This parallel processing often improves throughput but it does not affect the speed of computing a single instruction. Furthermore, because certain instructions are dependent on other instructions, many functions do not benefit from the additional processors.

c.       Throughput is the measure of how much work is done in a certain time. We use execution time (or response time) to measure how long it takes to perform a specific instruction or set of instructions. The contrast is subtle. Think of a public laundry. The execution time measures how long it takes to get your dirty clothes clean and folded. The throughput is the measure of how many loads of dirty clothes were cleaned and folded in a given time.

d.      In a computer, designing the processor to handle multiple instructions simultaneously requires the processor to spend instruction cycles organizing the parallel processing; we call this overhead.

⇒ Next section

Liked it? Take a second to support Hunter Hogan on Patreon!
Become a patron at Patreon!