================================================= Assignment #02 - Fundamental Computer Terminology ================================================= - Ian! D. Allen - idallen@idallen.ca - www.idallen.com 1. Are hardware and software equivalent? Can you really do anything in hardware that you can do in software, and vice-versa? Examples? A toothbrush is hardware. Can you do that in software? 2. What are the three basic-level pieces of a digital computer? 1- processor to interpret and execute programs 2- memory to store both data and programs 3- mechanism for transferring data to and from the outside world. 3. Which of these measurements are powers of two, and which are powers of ten? a) amount of hard disk capacity? b) amount of CDROM capacity? c) computer memory size? d) processor speed (clock frequency)? e) processor bus speed (e.g. PCI bus or front side bus or memory bus)? f) network card speed? g) dial-up modem speed? h) ADSL modem speed? i) Distances in kilometres? Computer memory is powers-of-two. All the rest are powers-of-ten. 4. Give two reasons why you can't store 12GB of system memory on a hard drive with an advertised capacity of 12GB. 1. 12 GB of system memory is measured in powers-of-two GiB that is larger than powers-of-ten 12 GB of hard drive storage. 2. The operating system needs to store name and directory information on the disk, as well as the data. 5. What is the difference between writing KB (kilobyte) and KiB (kibibyte) and MB (megabyte) and MiB (mebibyte)? a. KB (Kilobyte)=1000 bytes b. KiB (Kibibyte)=1024 bytes c. MB (megabyte)=1000*1000 byte=1000,000 bytes d. MiB(mebibyte)=1024*1024 byte=1,048,576 bytes 6. What is the prefix used for a thousand Terabytes? Peta(bytes) 7. What is the "random access memory wall"? Processors are becoming much faster than memory. The memory is very slow compared to the CPU, and memory access slows down the CPU. 8. Why is the abbreviated name of the standards body "ISO" deliberately chosen not to be an acronym? The name would have different acronyms in different languages. They chose the name "ISO", which is the same name in all languages. 9. Find out the specifications for the best machine you own and answer these questions about its hardware: a) How much main memory (in MB or GB)? b) How much accessible local disk space (in GB or TB)? c) How many processors? d) How fast is each processor (in MHz or GHz)? e) How fast is the fastest network card (in Mbits/second)? 8 GB, 5.5 TB, 4 CPU, 3.4 GhZ, 1 Gbit/sec 10. If a memory has an access time of 50ns, how many accesses can you make in one second (give the answer in GHz)? 50 ns = 50 * 10**(-9) 1 / 50 ns = 1/50 * 10**9 = 0.02 * 10**9 = 0.02 GHz 11. If a CPU has a clock frequency of 3.2 GHz, how long (in ns) does one access cycle take? 3.2 GHz = 3.2 * 10**9 1 / 3.2 GHz = 1/3.2 * 10**(-9) = 0.3125 * 10**(-9) = 0.3125 ns 12. Cache memory is faster than main memory. Why not make all the memory in the computer cache memory? Cache has to fit on the CPU die. That increases the die size and reduces chip yield, driving up prices. It's too expensive. 13. Why isn't a disk that rotates at 10,000 RPM exactly twice as fast as a disk that rotates at 5,000 RPM? What else is involved? You also have to move the disk arm containing the heads. 14. What is the most noticeable physical difference between a cable carrying a serial signal and a cable carrying a parallel signal? Serial cables have fewer wires; they are usually much thinner. 15. Display monitor refresh rates used to be an important factor in choosing a clear display. Why are these refresh rates less important now? LCD displays don't need to be refreshed multiple times per second to remain clear. 16. What is the standards group responsible for the Internet standards? Give the full name and the 4-letter acronym. Internet Engineering Task Force (IETF) 17. In the world of Internet standards, what do the letters "RFC" stand for? Request For Comment - Internet standards 18. What is the modern version of Moore's Law? "the density of silicon chips doubles every 18 months" 19. Why can't Moore's law continue indefinitely? At some point the wires and components get close to the size of molecules and stop working. 20. Put these terms in order, from most general (high level) to most specific (low level): Java or C++ Language Microprocessor Assembly Language CPU Instruction Set Architecture (ISA) CPU microcode Logic gates 21. Why do computer programmers always start counting with zero (0), and not with one (1)? Arrays start at zero. The first element of an array is element zero. 22. Whose name is attached to the idea of a computer that can store its programs and instructions in memory (a stored-program computer)? John Mauchley and/or J Presper Eckert and/or John von Neumann 23. What is the "von Neumann bottleneck"? "The limited throughput (data transfer rate) between the CPU and memory compared to the amount of memory. In most modern computers, throughput is much smaller than the rate at which the CPU can work. This seriously limits the effective processing speed when the CPU is required to perform minimal processing on large amounts of data. The CPU is continuously forced to wait for needed data to be transferred to or from memory. Since CPU speed and memory size have increased much faster than the throughput between them, the bottleneck has become more of a problem, a problem whose severity increases with every newer generation of CPU." 24. What are some ways to work around the "von Neumann bottleneck"? Use on-chip registers and cache memory, separate paths for instructions and data, multiple processors. 25. Describe briefly the three steps of the cycle that computers use to run programs. - fetch the instruction from memory at the location given by the program counter (and increment the program counter) - decode the instruction - execute the instruction (possibly fetching from and storing into memory) ( repeat ) 26. What is the closest power of two to 1000 (i.e. closest to 10**3)? 1 K = 1000 (power of ten) 1 Ki = 1024 (power of two) 27. How many ns (nanoseconds) are in a ms (millisecond)? 1 ns = 1 * 10**(-9) 1 ms = 1 * 10**(-3) 1 ms / 1 ns = 10**(-3) / 10**(-9) = 10**6 = 1,000,000 = a million 28. How may KiB are in a GiB? 1 Ki = 2**10 1 Gi = 2**30 1 Gi / 1 Ki = 2**30 / 2**10 = 2**20 = 1,048,576 = Mi (power of two) 29. What is 2**16 in decimal? 65,536, a famous number in computer science 30. A computer has a 32-bit word size. What is the largest size memory it can address, in GiBi? 2**32 = 2**2 * 2**30 = 4 GiB 31. By what order of magnitude (power of 10) is something that runs in nanoseconds (e.g. a CPU) faster than something that runs in milliseconds (e.g. a hard disk)? millisec / nanosec = 10**(-3) / 10**(-9) = 10**6 = six orders of magnitude 32. You have a program that takes 10 minutes to finish, running entirely in the computer's memory. With a bigger data set, you need to change the program to access the hard disk instead of memory. You change the program so that *all* accesses are via the slower hard disk. Roughly how long (in years) will it now take your "10-minute" program to finish? (10)*(10**6)/(60*24*365) = about 19 years to finish! 33. Exactly how many bytes (in decimal) are in 4GiB of memory? 4 GiB = 4 * 1024 * 1024 * 1024 = 4,294,967,296 bytes 34. Exactly how many bytes (in decimal) are on an advertised 4GB hard disk? 4 GB = 4 * 1000 * 1000 * 1000 = 4,000,000,000 bytes 35. How many power-of-two TiB are on an advertised 1.5TB hard disk? 1.5*(10**12)/(2**40) = 1.364 TiB (not 1.5 TiB!) 36. By what percentage is a power-of-two TiB larger than a power-of-ten TB? TiB = 2**40 = 1099511627776 TB = 10**12 = 1000000000000 TiB/TB = 1.099511627776, so about 9.95% bigger -- | Ian! D. Allen - idallen@idallen.ca - Ottawa, Ontario, Canada | Home Page: http://idallen.com/ Contact Improv: http://contactimprov.ca/ | College professor (Free/Libre GNU+Linux) at: http://teaching.idallen.com/ | Defend digital freedom: http://eff.org/ and have fun: http://fools.ca/