COMPUTER SCIENCE SYLLABUS
(These syllabus may change from time to time. Please check with the relevant Public Service Commission website for any changes in the syllabus)
1. Computer Organization and Architecture: Number representation and computer arithmetic (fixed and floating point). Logic functions, Minimization, Design and synthesis of combinational and sequential circuits; Machine instructions and addressing modes, ALU and data-path, CPU and control design, Memory interface, I/O interface (Interrupt and DMA mode), Instruction pipelining, Cache and main memory, Secondary storage.
2. Computer Programming: Programming in C: Functions, Recursion, Parameter passing, Scope, Binding; Abstract data types, Arrays, Stacks, Queues, Linked Lists, Trees, Binary search trees, Binary heaps, File handling. Object oriented programming: Class, Object, inheritance, polymorphism and overriding, constructors & destructors, overloading, exception handling.
3. Software Engineering: Software development Life Cycle and different models, Information gathering, requirement and feasibility analysis, data flow diagrams, process specifications, input/output design, process life cycle, planning and managing the project, design, coding, testing, implementation, maintenance.
4. Operating System: Main functions and different types of OS. Processes, Threads, Inter-process communication, Concurrency, Synchronization, Deadlock, CPU scheduling, Memory management and virtual memory, File systems. The Unix system: file systems, process Management, Bourne shell, shell variable, command line programming, filters and Unix commands, system calls.
5. Computer Networks: LAN, MAN, WAN, Transmission Media: Guided and unguided, Multiplexing (TDM, FDM, SDM & WDM) and switching techniques, Routing algorithms, Network reference models: OSI Model, TCP/IP Model, TCP/UDP and Sockets, IPv4 / IPv6, DNS , Network Security: Symmetric & Asymmetric Cryptography, Message Digest, Block and Stream Ciphers, One time pad, IP Security, E-Mail Security: PGP, IDS, Firewall.
1. Discrete Mathematical Structures: Counting principles, linear recurrence, mathematical induction, relations and functions, predicate and propositional logic. Graph: Definition and properties, connected graph, cycles & circuits, Tree: rooted tree, spanning trees. Models of Computability: Regular Expressions and Finite Automata. Context free grammars and Push down Automata. Regular and Context free languages, pumping lemma. Turing Machines and undecidability.
2. Data Structures and Algorithms: Analysis, Asymptotic notation, Notions of space and time complexity, Best,Worst and average case analysis; Design: Greedy approach, Dynamic programming, Divide-and conquer; Tree and graph traversals, Spanning tree algorithms, Shortest paths; Hashing, Sorting, Searching. Basic concepts of complexity classes P, NP, NP-hard, NP-complete.
3. Database Management System: ER-model, Relational model (relational algebra, tuple calculus), Database design (integrity constraints, normalization-1NF, 2NF, 3NF, BCNF and 4NF), Structured Query languages (SQL), File structures (sequential files, indexing, B and B+ trees), Transactions and concurrency control.
4. System Software: Assemblers: one pass & two pass assemblers design, Macros & Macro processors, loaders & linkers, Text editors & debuggers, Program generators, Compiler & Interpreter, Different phases of compilation process.
5. Emerging Trends and Technologies: Concept of Parallel Computing (Parallel Virtual Machine and Message passing Interface) , Mobile Computing: Cellular system, Handoff, Location Management, Pervasive Computing, WLAN, ETechnologies: E-commerce framework and applications, Business models, electronic payment System: Digital Token, Smart Cards, Credit Cards, risks in epayment systems. Data Warehousing and Data Mining
1. Testing Practitioner Handbook
by Renu Rajani
2. Mcqs in Computer Science by Williams
3. Introduction to Computer Science, 2/Ed by ITL