Part D - Computers

Memory, Processing, and Networking

Describe the different types of computer memory
Describe the different speeds for different types of processing
Describe the different types of networking capabilities available

Memory | Processing | Networking | Design Considerations | Exercises

Like the human senses, the human nervous system, and human memory, the internal components of computers and the transmission rates between their components limit the capabilities and the performance of the devices attached to those computers.  Network technology limits the communication between computers.  The important aspects from an HCI standpoint are:

  • memory capacity
  • processing time
  • networking capabilities

In this chapter, we survey the different types of memory in modern computers, the throughput of their processing units, and the transfer rate across the various components and across networks between different computers. 


There are three distinct categories of computer memory:

  • primary
  • secondary
  • tertiary

The components that use each type of memory are shown below.

memory types

Memory Types


Primary memory is memory that is directly accessible by the Central Processing Unit (CPU) or the Graphics Processing Unit (GPU).  It includes CPU register memory, cache memory, random access memory (RAM), GPU register memory, and video memory. 

Primary memory provides temporary storage and has limited capacity.  There are very few registers in the CPU and cache memory is quite limited (< ~1MB).  Random access memory is one order of magnitude greater in capacity (< ~1GB). 

Information transfers between the CPU and RAM across two buses: an address bus and a data bus.  The amount of information that can be transferred into RAM depends upon the data transfer capacity of the memory component and the memory clock rate.  DDR2 SDRAM has a maximum transfer rate of 3200 MB/s for a clock rate of 100 MHz.  DDR3 SDRAM has a maximum transfer rate of 6400 MB/s. 

primary memory
DDR2 RAM in Socket (source: Fir0002/Flagstaffotos Wikipedia 2006 GFDL)

Typically, primary memory has been volatile, but this trend is changing.  With PDAs, some primary memory is non-volatile. 


Secondary memory is memory not directly accessible by the processing units and is used for long term storage.  It has massive capacity and is non-volatile.  Secondary memory is quite slow in comparison to primary memory. 

The processor accesses information in secondary memory through input/output channels.  The amount of information that can be transferred to/from a hard disk depends upon the seek time and the latency time.  The seek time is the time needed to find the track that holds the information and the latency time is the time for the disk to rotate to the position of the track where the information is stored.  The seek time is in the order of 10 ms.  The transfer rate itself is very high, in the order of hundreds of kilobytes per second.

secondary memory
IBM 60Gb IDE Drive (source: Dave Indech Wikipedia 2006 CC-BY-SA)


Tertiary memory is memory external to the computer system.  It can be accessed using robotic machinery and mounted and dismounted as required.  Compared to secondary memory, tertiary memory is extremely slow. 

tertiary memory
NSA Museum's StorageTek Tape Library (source: Austin Mills Wikipedia 2005 CC-BY-SA)

Processing Time

Processing time varies considerably with the process.  There are three processes to consider:

  • computations
  • storage transfers
  • graphics transfers

The hardware that implements each type of process sets its own time limitations.


The time limit for computational processes is the limit set by the CPU.  A PC processor can execute about 100 Million Instructions Per Second (MIPS). 

At such speeds, a user dragging the mouse may easily overshoot their target if the pointer does not keep up.  If input is buffered, the user may enter it twice if the computer does not appear to have received the initial input.

Storage Transfers

Transfers of large amounts of information from a storage device through the CPU can leave it idle for much of the transfer time.  This idleness is due to the much slower transfer rates of secondary memory. 

Graphics Transfers

Access to the video memory is a bottleneck in image manipulation, gaming, and 3-d simulation software.  We can improve performance by recoding with faster algorithms or using application programming interfaces to bypass the CPU and access the graphics hardware directly.  We can also install faster graphics cards that perform operations more rapidly or in parallel. 

Networking Capabilities

Network speeds limit the amount of information that computers can transfer between themselves.  Networks determine the nature and the quality of the information transferred.  Network technologies are of three types:

  • wireless
  • wired LAN
  • wired WAN

We measure network speed in terms of bandwidth or throughput bit rate (bits per second - b/s).  Network bound transfers of data introduce bottlenecks that the user perceives directly. 

Wireless Technologies

Technologies that support communications over wireless local area networks (LAN) include:

  • Wi-Fi
  • Bluetooth
  • DECT
  • Wireless USB


Wi-Fi technology was developed as the wireless alternative to Ethernet and is based upon the IEEE 802.11 standard.  Expected throughput under this standard is:

  • WLAN - b - 5 Mb/s (1999) [38m 140m]
  • WLAN - g - 22 Mb/s (2003) [38m 140m]
  • WLAN - n - 144 Mb/s (2009) [70m 250m]

Distances in brackets describe indoor and outdoor ranges respectively.


Bluetooth technology was developed as the wireless alternative to RS232 cables.  It uses radio frequencies and doesn't require line of sight access.  It applies over quite short ranges, which vary by class with power consumption (class 1 - 100mW -> 100m, class 2 - 2.5mW -> 10m, class 3 - 1mW -> 5m) and.  The data rates under the different version are:

  • 1.2 - 1 Mb/s (1999)
  • 2.0 - 3 Mb/s (2007)
  • 3.0 - 24 Mb/s (2009)
  • 4.0 - 24 Mb/s (2010)


DECT (Digital Enhanced Cordless Telecommunications) technology is the ECIT (European Telecommunications Standards Institute) standard for digital cordless telephones.  Australia and most countries in Asia and South America have adopted DECT.  North American adoption forced the development of a variation. 

DECT provides a transfer rate of about 32 Kb/s. 

Wireless USB

WUSB (Wireless USB technology) is short range, high bandwidth technology designed to replace cables from PC peripherals.  It is used with game controllers, printers, scanners, digital cameras, MP3 players, hard disks and flash drives. 

WUSB provides 480 Mb/s up to 3 meters and 110 Mb/s up to 10 meters. 

Wired LAN Technologies

Technologies that support communications over wired local area networks (LAN) include:

  • Ethernet
  • Home PNA


Ethernet is the oldest of the wired LAN technologies.  It started with twisted pair wiring and now includes optical wiring.  The Ethernet standard (IEEE 802.3) defines the Physical Layer and Data Link Layer's media access control (MAC) sublayer.  The physical layer describes connections between nodes and/or infrastructure devices such as hubs, switches, and routers.  The wiring can be copper or fiber optic cable. 

Expected throughput for Ethernet is:

  • Original - 10 Mb/s 1980
  • Fast - 100 Mb/s 1995
  • Gigabit - 1 Gb/s 1999
  • 10 Gigabit - 10 Gb/s 2002
  • 40/100 Gigabit - 40/100 Gb/s 2010

Home PNA

Home PNA uses existing cables and phone lines within the home.  The most recent standard under the International Telecommunications Unit - Terminals for Telematic Services (ITU-T) is 3.1, which was released in January 2007. 

ITU-T 3.1 offers rates of up to 320 Mb/s. is the next generation technology being developed under the ITU to include power lines alongside cable and phone lines within the home. received consent in December 2008.  With, the code rate depends upon the cleanliness of the media.  The code rate is the proportion of the total amount of information that is useful. supports networking over power lines, phone lines, and coaxial cables. provides data rates up to 1 Gb/s. 

Wired WAN Technologies

The technologies that supports communications over wired wide area networks (WAN) include:

  • PON - Passive Optical Network
  • DOCSIS - coaxial
  • Dial-up, ISDN, DSL - phone lines
    • Dial-up
    • ISDN
    • DSL
  • BPL - power line


PON (Passive optical network) is a point to network architecture that was originally based upon asynchronous transfer mode (ATM) technology developed in the 1980s.  PON evolved to include broadband under the ITU-T G.983 standard. 

PON typically provides 622 Mb/s of downstream bandwidth and 155 Mb/s of upstream bandwidth. 


DOCSIS (Data Over Cable Service Interface Specification) has been used by cable operators to provide Internet access since 1997.  DOCSIS uses a cable modem at the client end and a cable modem termination system at the hub or service providers end. 

DOCSIS version 3.0 provides 343 Mb/s of downstream bandwidth and 122 Mb/s of upstream bandwidth. 


Dail-up is the simplest and oldest form of Internet access.  It requires no infrastructure other than an ordinary telephone line.  About 10% of Americans still use dail-up. 

Dail-up provides a transfer rate of up to 56 Kb/s. 


ISDN (Integrated services digital network) is the technology that integrated voice and data over the same telephone lines.  The term 'integrated services' refers to the ability to deliver at minimum two simultaneous connections: voice, data, fax, and video. 

ISDN provides a maximum of 128 Kb/s in both directions. 


DSL (Digitial Subscriber Loop/Line) is a technology that can be used alongside regular telephone technology on the same line to provide access to the Internet. 

DSL provides a transfer rate between 256 Kb/s and 24 Mb/s.  Upload speed is typically lower than download speed. 

dail-up and dsl

Dail-Up versus DSL


BPL (Broadband over Power Lines) is a technology that sends information signals over power lines.  In modems at a PC, the rate is 256 Kb/s to 2.7 Mb/s.  In a meter room the speed is up to 45 Mb/s.  At medium voltage stations, the speed is up to 135 Mb/s.

Design Considerations


Users expect simple operations to perform quickly and long operations to perform slower.  Users' impatience grows while their computers are working on long operations.  Quite often, we wonder if the machine has crashed and may even interrupt it. 

If an operation will take longer than expected, we should provide feedback in some way.  For instance, we can

  • change the cursor to a watch
  • show a progress bar

Differing Transfer Rates

We can accommodate disparities between CPU and storage transfer rates by:

  • avoiding to fetch data until it is actually needed
  • if excess processing power is available
    • compressing data in storage to reduce the amount transferred and use the CPU to decompress the data
    • using the CPU to recalculate data rather than to store and to retrieve data


As users, we remain comfortable whenever our predictions are met.  We observe operations and expect the same or similar operations to take the same amount of time each and every time.  When we encounter any irregularity with respect to our predictions, we feel frustrated or anxious. 

To reduce users' anxiety and frustration, we improve their predictability by designing:

  • data structures that give the same performance for every query
  • notifications that certain queries will take longer than expected
  • progress bars for operations that will take more than 1 second to complete

Network Bottlenecks

We can circumvent some bottlenecks by switching network-access technology.  With other bottlenecks, we are forced to reduce the amount of data transmitted: 

  • lower audio quality
  • lower resolution or frame rate for video
  • monitor network speed to inform the user if delays are expected