# CS GRE: Difference between revisions

From dankwiki

No edit summary |
No edit summary |
||

Line 73: | Line 73: | ||

|colspan=2|'''COMPUTER ORGANIZATION AND [[Architecture|ARCHITECTURE]] - 15%''' | |colspan=2|'''COMPUTER ORGANIZATION AND [[Architecture|ARCHITECTURE]] - 15%''' | ||

|- | |- | ||

|colspan=2| Digital logic design | |colspan=2| '''Digital logic design''' | ||

|- | |- | ||

| Implementation of combinational and sequential circuits | | Implementation of combinational and sequential circuits | ||

Line 81: | Line 81: | ||

| | | | ||

|- | |- | ||

|colspan=2| Processors and control units | |colspan=2| '''Processors and control units''' | ||

|- | |- | ||

| Instruction sets | | Instruction sets | ||

Line 95: | Line 95: | ||

| | | | ||

|- | |- | ||

|colspan=2| Memories and their hierarchies | |colspan=2| '''Memories and their hierarchies''' | ||

|- | |- | ||

| Performance, implementation, and management | | Performance, implementation, and management | ||

Line 106: | Line 106: | ||

| | | | ||

|- | |- | ||

|colspan=2| Networking and communications | |colspan=2| '''Networking and communications''' | ||

|- | |- | ||

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

Line 117: | Line 117: | ||

| | | | ||

|- | |- | ||

|colspan=2| High-performance architectures | |colspan=2| '''High-performance architectures''' | ||

|- | |- | ||

| Pipelining superscalar and out-of-order execution processors | | Pipelining superscalar and out-of-order execution processors | ||

Line 127: | Line 127: | ||

|colspan=2|'''THEORY AND MATHEMATICAL BACKGROUND - 40%''' | |colspan=2|'''THEORY AND MATHEMATICAL BACKGROUND - 40%''' | ||

|- | |- | ||

|colspan=2| Algorithms and complexity | |colspan=2| '''Algorithms and complexity''' | ||

|- | |- | ||

| Exact and asymptotic analysis of specific algorithms | | Exact and asymptotic analysis of specific algorithms | ||

Line 141: | Line 141: | ||

| | | | ||

|- | |- | ||

|colspan=2| Automata and language theory | |colspan=2| '''Automata and language theory''' | ||

|- | |- | ||

| Models of computation (finite automata, Turing machines) | | Models of computation (finite automata, Turing machines) | ||

Line 152: | Line 152: | ||

| | | | ||

|- | |- | ||

|colspan=2| Discrete structures | |colspan=2| '''Discrete structures''' | ||

|- | |- | ||

| Mathematical logic | | Mathematical logic |

## Revision as of 16:51, 1 August 2009

Anything above a 800 (it's on a 200-990-point scale) seems pretty good. It appears that quality single-volume preparation materials cannot be had at any price. Perhaps one ought be written?

- ETS Practice Booklet (PDF), from the Computer Science Exam page

(This second link is pretty dubiously-formed; YMMV. Go to the GRE page, click on Subject Info details, click on Computer Science Dank 14:58, 30 July 2009 (UTC))

## Subject Material

Area (outline taken from the ETS CS GRE page, 2009-07-30 1500 UTC) | References |
---|---|

SOFTWARE SYSTEMS AND METHODOLOGY - 40%
| |

Data Organization
| |

Data types | |

Data structures and implementation techniques | |

Program control and structure
| |

Iteration and recursion | |

Procedures, functions, methods, and exception handlers | |

Concurrency, communication, and synchronization | |

Programming languages and notation
| |

Constructs for data organization and program control | |

Scope, binding, and parameter passing | |

Expression evaluation | |

Software engineering
| |

Formal specifications and assertions | |

Verification techniques | |

Software development models, patterns, and tools | |

Systems
| |

Compilers, interpreters, and run-time systems | |

Operating systems, including resource management and protection/security | |

Networking, Internet, and distributed systems | |

Databases | |

System analysis and development tools | |

COMPUTER ORGANIZATION AND ARCHITECTURE - 15%
| |

Digital logic design
| |

Implementation of combinational and sequential circuits | |

Optimization and analysis | |

Processors and control units
| |

Instruction sets | |

Computer arithmetic and number representation | |

Register and ALU organization | |

Data paths and control sequencing | |

Memories and their hierarchies
| |

Performance, implementation, and management | |

Cache, main, and secondary storage | |

Virtual memory, paging, and segmentation | |

Networking and communications
| |

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

I/O systems and protocols | |

Synchronization | |

High-performance architectures
| |

Pipelining superscalar and out-of-order execution processors | |

Parallel and distributed architectures | |

THEORY AND MATHEMATICAL BACKGROUND - 40%
| |

Algorithms and complexity
| |

Exact and asymptotic analysis of specific algorithms | |

Algorithmic design techniques (e.g. greedy, dynamic programming, divide and conquer) | |

Upper and lower bounds on the complexity of specific problems | |

Computational complexity, including NP-completeness | |

Automata and language theory
| |

Models of computation (finite automata, Turing machines) | |

Formal languages and grammars (regular and context free) | |

Decidability | |

Discrete structures
| |

Mathematical logic | |

Elementary combinatorics and graph theory | |

Discrete probability, recurrence relations, and number theory | |

OTHER TOPICS - 5%
| |

Example areas include numerical analysis, artificial intelligence, computer graphics, cryptography, security, and social issues. |

## Books used to prepare

- Software Systems and Methodology
- Peter Van Roy and Seif Haridi,
*Concepts, Techniques, and Models of Computer Programming, 1st Edition* - Harold Abelson and Gerald Jay Sussman,
*Structure and Interpretation of Computer Programs, 2nd Edition*

- Peter Van Roy and Seif Haridi,
- Computer Organization and Architecture
- John Hennessy and David Patterson,
*Computer Architecture: A Quantitative Approach, 4th Edition*

- John Hennessy and David Patterson,
- Theory and Mathematical Background
- Thomas Cormen, Charles Leiserson and Ron Rivest,
*Introduction to Algorithms, 1st Edition* - Michael Sipser,
*Introduction to the Theory of Computation, 1st Edition*

- Thomas Cormen, Charles Leiserson and Ron Rivest,