optional · CSS study notes
CSS Computer Science Notes & Solved Past Papers
Study CSS Computer Science with 372 free notes, solved past papers. Browse topic-wise resources for FPSC exam preparation.
CSS Computer Science (Optional) — 200 Marks. This is the index. Each topic below has its own sub-page with full notes, MCQ traps, and self-test questions. Past-paper coverage is under audit: some topic pages contain year-wise questions and model answers, but complete coverage of both Paper-I and Paper-II, all written subparts and MCQs for 2016–2026 has not yet been verified. Refer to the dedicated Paper-I and Paper-II coverage audit below for an explicit checklist of questions still requiring verification and, where necessary, exam-ready answers.
Past Paper for 11 years https://claude.ai/code/artifact/f7849394-0d63-40be-afbe-39092596b191
Quick Outline
Paper-I (100 Marks)
Section-A (50 Marks)
Section-B (50 Marks)
Paper-II (100 Marks)
Section-A (50 Marks)
Section-B (50 Marks)
Suggested Readings
| # | Title | Author |
|---|---|---|
| 1 | C++ How to Program | Harvey M. Deitel and Paul J. Deitel |
| 2 | Compilers: Principles, Techniques, and Tools | Alfred V. Aho, Ravi Sethi, and Jeffrey D. Ullman |
| 3 | Operating System Concepts | Silberschatz, Galvin, and Gagne |
| 4 | Operating Systems | William Stallings |
| 5 | Computer Organization & Architecture | William Stallings |
| 6 | Computer System Architecture | M. Morris Mano |
| 7 | Computer Organization and Design: The Hardware/Software Interface | David A. Patterson and John L. Hennessy |
| 8 | Software Engineering | Ian Sommerville |
| 9 | Software Engineering: A Practitioner's Approach | Roger S. Pressman |
| 10 | Data Structures and Algorithm Analysis in C++ | Mark Allen Weiss |
| 11 | Computer Networking: A Top Down Approach Featuring the Internet | James F. Kurose and Keith W. Ross |
| 12 | Data and Computer Communications | William Stallings |
| 13 | Computer Networks | Andrew Tanenbaum |
| 14 | Fundamentals of Database Systems | Ramez Elmasri and S. B. Navathe |
| 15 | Database Systems Concepts | Silberschatz, Abraham & Korth, Sudarshan |
| 16 | Web Services: Principles and Technology | Michael Papazoglu |
| 17 | Electronic Commerce: The Second Wave, Ninth Edition | Gary P. Schneider |
| 18 | Electronic-Commerce — A Managerial Perspective | Turban, Lee, King, Chung |
| 19 | Web Engineering | Kappel, G., Proll, B., Reich, S. & Retschitzegger |
| 20 | Styling Web Pages with CSS | Tom Negrino and Dori Smith |
| 21 | PHP: The Good Parts | Peter B. MacIntyre |
| 22 | Learn JavaScript | Chuck Easttom |
| 23 | ADTs, Data Structures, and Problem Solving with C++ | Larry R. Nyhoff |
| 24 | Digital Image Processing | Gonzalez and Woods |
Paper-I and Paper-II answer-coverage audit
The audit separates Paper-I/Paper-II and Sections A/B; includes 2024–2026 Paper-II question checklists and identifies the still-incomplete verification of 2016–2023.
Past papers
Full past-paper PDFs (2009–2026): The CSS Point.
For Section-A, see ⭐ Most Repeated Questions — Paper-I, Section-A — the highest-frequency questions from 2016–2024, each with a full model solution. For Section-B, see ⭐ Most Repeated Questions — Paper-I, Section-B — extracted from the 2026 paper, the first Section-B past paper reviewed so far.
Revision checklist
- Paper-I Section-A (Intro, Programming Fundamentals, OOP)
- Paper-I Section-B (Algorithms & DS, Software Engineering, Compiler Construction)
- Paper-II Section-A (Computer Architecture, Networks, OS)
- Paper-II Section-B (Databases, Digital Image Processing, Web Engineering)
Continue studying
Computer Science solved past papers & analysis
16 available resources, organised by topic.
- 🔎 Past-Paper Coverage Audit — Paper I & II (2016–2026)
- FPSC CSS Computer Science — Past Paper Solutions (2016–2026)
- 1. Programming Fundamentals (C/C++)
- 2. Object-Oriented Programming
- 3. Data Structures & Algorithms
- 4. Computer Organization & Architecture
- 5. Operating Systems
- 6. Database Systems
- 7. Computer Networks
- 8. Software Engineering
- 9. Theory of Automata & Compiler Construction
- 10. Digital Image Processing
- 11. Web Engineering
- 12. Artificial Intelligence
- 13. Number Systems & Digital Logic
- 14. General Computer Science / Computer Basics
All Computer Science notes
372 available resources, organised by topic.
- P-I.I. Introduction to Computing
- I.1 Introduction to Information Technology and Computers
- I.10 Volatile vs Non-volatile Memory
- I.11 Types of Hardware
- I.12 Types of Computers
- I.13 Types of Software
- I.14 Types of Programming Languages
- I.15 Information Representation & Number Systems
- I.16 User Interfaces
- I.17 Application Program Interface (API)
- I.18 Major Software Issues
- I.19 Working With Computer Documents
- I.2 History of Computing — Generations
- I.20 Usage of Word Processors
- I.21 Spreadsheets
- I.22 PowerPoint
- I.23 Electronic Mail (E-mail)
- I.24 Search Engines
- I.25 Web Browsers
- I.26 Messengers
- I.27 Internet
- I.28 Computers & Society
- I.28.1 Impact of Computers on Society — Benefits, Evolution & Beneficiaries
- I.29 Information Security / Privacy
- I.3 Computer Hardware and Software
- I.30 Computer Crimes
- I.31 Cyber Crime and the Internet Era
- I.32 Ethical Issues
- I.33 Viruses
- I.34 Plagiarism
- I.35 Intellectual Property Rights
- I.36 Difference Between IT and CS (Computing Disciplines)
- I.37 Software Engineering (as a Discipline)
- I.38 Computer Engineering
- I.39 Information Systems
- I.4 Computer System Components and Communication System
- I.40 Bioinformatics
- I.41 IEEE / ACM Code of Ethics and Computing Disciplines
- I.5 Components of a Computer System
- I.6 Input & Output Devices and Their Types
- I.7 Input Devices
- I.8 Output Devices
- I.9 Storage Media and Their Types
- Question Bank · Chapter I (2016–2026)
- 🗄️ OLD — Computer Hardware & System Components (consolidated)
- 🗄️ OLD — Computers & Society — Security, Ethics, Law (consolidated)
- 🗄️ OLD — Difference Between Related Disciplines (consolidated)
- 🗄️ OLD — Office & Productivity Tools, Internet (consolidated)
- 🗄️ OLD — Software Types & Programming Languages (consolidated)
- 🗄️ OLD — User Interfaces & Major Software Issues (consolidated)
- P-I.II. Programming Fundamentals
- II.1 Basic Programming Elements and Concepts
- II.10 Standard I/O and Statements
- II.11 Control Structures
- II.12 Functions & Parameter Passing
- II.13 Standard Library Functions
- II.14 Arrays, Pointers, and Strings
- II.15 Structures, Unions, and Bit Manipulation
- II.2 Problem Solving & Program Design
- II.3 Systematic Approach to Defining a Problem
- II.4 Components of a Programming Language
- II.5 Types of Programming Languages (2017)
- II.6 Program Development and Execution
- II.7 Source to Exe File Conversion Process (2016)
- II.8 Program Structure & Data Types
- II.9 Global, Local and Shared Variables (2017)
- Question Bank · Chapter II (2016–2026)
- P-I.III. Object Oriented Paradigm
- 1. Object Oriented Programming Concepts
- 10. Protected Members
- 11. Method Over-Riding
- 12. Polymorphism
- 13. Virtual Function
- 14. Pure-Virtual Functions
- 15. Abstract Class
- 16. Abstract Super Class
- 17. Standard Template Library (STL)
- 18. Files & Streams
- 19. Sequential Access Files
- 2. Main Characteristic of Object-Oriented Paradigm
- 20. Random Access Files
- 21. File Processing
- 22. Exception Handling
- 3. Objects and Classes
- 4. Data Members of Class
- 5. Member Functions
- 6. Classes Advanced (friend, static, composition, this, const)
- 7. Operator Overloading
- 8. Inheritance
- 9. Forms of Inheritance
- Classes Advanced (extended)
- Classes and Objects — Exam Practice (University Records System, Student Registration System)
- Core OOP Concepts (extended)
- Files, Streams, and Exception Handling (extended, incl. Random Access Files)
- Inheritance (extended, incl. Forms of Inheritance + diamond problem)
- Operator Overloading (extended)
- Polymorphism (extended, incl. Abstract Super Class distinction)
- Standard Template Library (extended)
- UML — Class Diagram Notation for OOP
- P-I.IV. Algorithms & Data Structures
- AVL Tree
- Algorithms Analysis (2016)
- Asymptotic Notations
- Binary Search (2017)
- Binary Search (BST Search)
- Binary Trees
- Bubble Sort
- Criteria for an Algorithm
- Encryption Algorithms (DES, RSA)
- Fundamental Concepts of Algorithms (2017)
- Graphs
- Greedy Algorithms
- Hashing
- Heap Sort (2016)
- Heuristic Search & Genetic Algorithms
- Lists (2016)
- Master Theorem
- Merge Sort
- Optimization Problems & P vs NP
- Properties of an Algorithm (2017)
- Pseudo Code (2016)
- Queues
- Quick Sort
- Recurrence Relations
- Recursion
- Red-Black Trees
- Searching & Sorting (2017)
- Stacks
- Trees
- P-I.V. Software Engineering
- Agile Software Development (2017)
- Analysis Modeling (2016)
- Architectural Design
- Aspect-Oriented Software Engineering (AOSE)
- Difference Among QA, QC & Testing
- Difference between Software Validation and Verification (2017)
- Distributed Software Engineering
- Evolutionary Model (2017)
- Incremental Model (2017)
- Introduction to Proofs of Correctness (LNO)
- Joint Application Development (JAD) (2017)
- Rapid Application Development (RAD) (2017)
- Requirements Sign-off (2017)
- Software Design Strategies
- Software Documentation (2016)
- Software Engineering
- Software Evolution
- Software Implementation
- Software Paradigms
- Software Process
- Software Process Improvement (SPI)
- Software Process Models (2017)
- Software Project Management
- Software Quality Assurance
- Software Re-Engineering
- Software Testing (2016-17)
- System Delivery and Maintenance
- The Design Process
- 🗄️ OLD — Design Concepts and Architecture (consolidated)
- 🗄️ OLD — Distributed and Aspect-Oriented Software Engineering (consolidated)
- 🗄️ OLD — Formal Specification and Proofs of Correctness (consolidated)
- 🗄️ OLD — Project Management and Process Improvement (consolidated)
- 🗄️ OLD — Requirements Engineering and Analysis Modeling (consolidated)
- 🗄️ OLD — Software Processes and Process Models (consolidated)
- 🗄️ OLD — Software Quality Assurance (SQA) (consolidated)
- 🗄️ OLD — Software Testing (consolidated)
- 🗄️ OLD — System Delivery, Maintenance, and Evolution (consolidated)
- P-I · VI. Compiler Construction
- Classification of Compilers
- Code Generation
- Code Optimization
- Context-Free Grammars & Classification
- FIRST and FOLLOW Sets
- Finite Automata & Kleene's Theorem
- Intermediate Code Generation
- LL(k) vs LR(k) Grammars
- Lexical Analysis — Input Buffering & Token Specification
- Loop Optimization
- Parsing Techniques
- Phases of a Compiler
- Predictive Parsing Using LL(1) Grammars
- Regular Expressions
- Semantic Analysis
- Syntax Error Handling & Recovery
- Syntax-Directed Translation
- Top-Down vs Bottom-Up Parsers
- Translators — Compiler vs Interpreter vs Assembler
- 🗄️ Archived — Old Stub Pages (superseded)
- Code Optimization
- Intermediate Code and Code Generation
- Lexical Analysis
- Phases of a Compiler
- Semantic Analysis
- Syntax Analysis (Parsing)
- Syntax-Directed Translation
- Translators — Key Differences
- P-II.I. Computer Organization & Architecture
- Arithmetic Microprocessor
- BUS
- CISC vs RISC
- CPU Architecture
- Cache Memory
- Computer Function and Interconnections
- Control Unit and Instruction Processing
- Data Representation
- Evolution & Performance Languages
- External Memory
- Fundamental Concepts (Architecture)
- Harvard and Non-Neumann Architecture (2017)
- I/O Types
- Input/Output System
- Instruction Execution Cycle
- Instruction-Level Parallelism & Superscalar Processors
- Machine Instructions
- Memory Hierarchy
- Memory Organization
- Multi-Processor and Multi-core Systems
- Overview of a Computer System
- Parallel Computer Architecture (2017)
- Parallel Processing
- Performance Metrics
- Processor Types
- Processor Types and Performance (overview)
- RAID
- System Level Architecture
- Virtual Machines
- 🧮 Formula & Numerical Reference — CPU, Cache, Memory, Bus, RAID
- P-II.II. Computer Communications & Networks
- ARP (Address Resolution Protocol)
- Archive — Old Grouped Notes (condensed revision)
- Application Layer
- Basic Concepts and Network Classification
- Layered Models: OSI and TCP/IP
- Network Layer
- Physical & Data Link Layer
- Special Topics (Security, Overlay Networks, CDN, DHT)
- Transport Layer
- Asynchronous Transfer Mode (ATM)
- Automatic Repeat Request (ARQ)
- Classification of Network
- Congestion Avoidance
- Connectionless Transport with UDP (2017)
- Content Distribution Networks
- DNS (Domain Name System)
- Distributed Hash Tables (DHT)
- Email — SMTP, POP3 & IMAP
- Error Detection & Control
- FTP (File Transfer Protocol)
- Frame Relay
- HTTP (HyperText Transfer Protocol)
- IPv6
- Internet Control Message Protocol (ICMP)
- Internet Routing Protocols and Algorithms
- LAN Technologies
- Multi Protocol Label Switching (MPLS)
- Multiple Access Protocols
- Multiplexing In UDP and TCP
- Network Address Translation (NAT)
- Network Application Architectures
- Network Attacks
- Network Devices
- Network Layer
- Network Topologies
- OSI Model
- Overview of Networking
- Peer To Peer Systems
- Physical Layer Functionalities
- Protecting IP Rights in the Digital Domain (2017)
- Reliable Data Transfer and TCP
- Security Overlay Networks
- Servers, Server Types & Protocol Stack
- Session Initiation Protocol (SIP) (2017)
- Seven Common Network Attack Types
- Switching
- Transmission Media (2016)
- Transport Layer
- X.25
- P-II.III. Operating Systems Concepts
- Classification of Operating Systems
- Computing Environments
- Deadlocks
- Deadlocks — Solved Numericals
- Design and Components of OS
- File Systems
- I/O Management
- MLQ vs MLFQ CPU Scheduling Algorithms
- Memory Management
- Memory Allocation Algorithms — Deep Dive & Solved Numericals
- Memory Management — Solved Numericals
- OS Structures and Operations
- Process Management
- CPU Scheduling Algorithms — Deep Dive & Solved Numericals
- Process Management — Solved Numericals
- Process Synchronization
- Role and Evolution of Operating Systems
- Threading
- Virtual Memory Management
- Page Replacement Algorithms — Deep Dive & Solved Numericals
- Virtual Memory Management — Solved Numericals
- P-II.IV. Database Systems
- Database Security & Access Control
- ER Model and ER-to-Relational Mapping
- Functional Dependencies
- Functional Dependencies and Normalization
- Introduction to Database Systems
- Object-Oriented and Distributed Databases
- PL/SQL Stored Procedures & Triggers
- Query Processing, Optimization, and Transaction Processing
- Relational Algebra & Calculus
- Relational Data Model
- SQL (Structured Query Language)
- Storage & Indexing
- XML Documents & Web Services
- P-II.V. Digital Image Processing
- DIP — Solved Numericals & Formula Sheet
- Grayscale, Color Images, and Color Models
- Image Compression
- Image Histogram and Enhancement
- Image Restoration and Noise Models
- Image Sampling and Quantization
- Image Segmentation
- Image Sensing, Acquisition, and Representation
- Image Storage and Operations
- Image Transformations
- Morphological Operators
- Optical Character Recognition (OCR)
- Point, Line, Edge and Boundary Detection
- Relation to Related Fields (Graphics, Vision, AI)
- P-II · VI. Web Engineering & Technologies
- 1. Introduction to Web Engineering
- 10. Integration Architecture
- 11. Data Aspect Architectures
- 12. CSS (Cascading Style Sheets) & CSS Properties
- 13. JavaScript (Functionalities, Events, Variables, Operators)
- 14. DOM (Document Object Model)
- 15. XML (eXtensible Markup Language)
- 16. RSS (Really Simple Syndication)
- 17. API (Application Programming Interface)
- 18. Client-Side Programming (HTML, XHTML, XML, JavaScript, CSS)
- 19. Server-Side Programming using PHP
- 2. Modeling Techniques for Web Applications
- 20. Web Development Process
- 21. Web Application Development Methodologies
- 22. Website Promotion and Deployment
- 23. Web Application Issues — Accessibility
- 24. Web Application Issues — Testing
- 25. Web Application Issues — Performance
- 26. Web Application Issues — Operation and Maintenance
- 27. Web Application Issues — Security
- 3. Requirement Engineering & Types of Requirements
- 4. Requirement Engineering Process
- 5. HTML (HyperText Markup Language)
- 6. Software Architecture, Styles, Patterns & Frameworks
- 7. Components of Web Architecture
- 8. Classifications of Web Architecture
- 9. Web Application Layered Architecture (Client-Server, n-Layered, JSP Model, Struts, OOHDM)
- 🗄️ OLD — Client-Side Technologies (HTML, CSS, JavaScript, DOM)
- 🗄️ OLD — Introduction to Web Engineering and Requirements
- 🗄️ OLD — Modeling Techniques for Web Applications
- 🗄️ OLD — Server-Side Programming (PHP)
- 🗄️ OLD — Software Architecture, Styles, and Patterns
- 🗄️ OLD — Web Application Architecture
- 🗄️ OLD — Web Application Issues (Accessibility, Testing, Security)
- 🗄️ OLD — Web Development Process and Methodologies
- ⭐ Most Repeated Questions — Paper-I, Section-A
- 🔥 Most Repeated — Introduction to Computing
- 🔥 Most Repeated — Object Oriented Paradigm
- 🔥 Most Repeated — Programming Fundamentals
- ⭐ Most Repeated Questions — Paper-I, Section-B
- 🔥 Most Repeated — Algorithms & Data Structures
- 🔥 Most Repeated — Compiler Construction
- 🔥 Most Repeated — Software Engineering