CS101 Midterm Exam #1 Topics
The midterm exam is closed book and closed notes.
Calculators are allowed although you should be able to complete
the problems without one.
There
will be a number of problems to work through (no multiple
choice) that are similar to the homework. Consequently, the best
way to study for the test is to understand your homework questions and be
able to answer the questions at the end of the
chapters in the book.
Computer Science Overview
-
What an algorithm is and the role of algorithms in
computer science
-
Transition of computers based on physical switches to
vacuum tubes to transistors to integrated circuits
-
Clock speed and computer performance
-
Moore's Law
-
Scale of components that are on an integrated
circuit
Data Representation
- Concept that data can represent many things (sound, instruction, number,
picture, text)
- How text is stored (ASCII, UNICODE)
- Be able to represent and convert between decimal, unsigned
binary, hex, two's complement, and sign magnitude
- Negative number representation using sign magnitude and two's complement
- Be able to convert a floating point number from decimal to the format defined in class and
vice versa
Computer Arithmetic
- Know how to add and subtract numbers using two's complement representation
- Concepts of carry (final carry is ignored) and overflow
Computer Architecture
- Basic components of a computer (e.g. disk, primary memory, secondary
memory, input units, output units)
- Memory and memory addressing
- Concept of the bus
- Components of the CPU
- Registers (special registers like the PC and IR)
- ALU
- Control Unit
- Instruction Cycle, what it is
- Increasing performance: Caching, Pipeline, faster clock rates, parallelism
Machine Language
- Given a hypothetical machine language, such as that given in
the textbook, you should be able to:
- Write a simple program
- If given a program, be able to describe what it will do
Operating Systems
-
How today's modern OS evolved from batch processing
systems
-
Difference between Application, System
software
-
Role of the kernel and the
shell
-
What happens when you turn the computer on to boot the
system
-
Major roles of the
kernel
-
Concept behind virtual memory
-
How multi-tasking works to give time slices to each
process; tasks the OS needs to do to switch between different
processes
-
Problems that can arise with
multiprogramming/multitasking
-
Race
conditions
-
Deadlock
-
Three conditions for deadlock to occur and how to break one to avoid
deadlock
-
Competition for nonsharable
resource
-
Resources requested are allocated on a partial
basis
-
Allocated resource can't be
retrieved
-
Common security problems with operating
systems