1. COMPUTER SYSTEMS ARCHITECTURE
S P SHARMA CLASSES
DSSSB TGT/PGT Computer Science Syllabus
Duration: 05 Months, Fee: Rs. 20000
Computer Components, Computer function, Interconnection Structures, Bus Interconnection, PCI.
Computer Memory System Overview, Semiconductor Main Memory, Cache Memory, Advanced DRAM Organization.
External Devices, I/O Modules, Programmed I/O, Interrupt- Driven I/O, Direct Memory Access, I/O Channels and Producers, The External Interface.
2. OPERATING SYSTEM OVERVIEW
The Arithmetic and Logic Unit (ALU), Integer Arithmetic, Floating-Point Representation, Floating-Point Arithmetic.
Characteristics and Function, Machine Instruction Characteristics, Types of Operands, Types of Operation, Addressing Modes and Formats, Register Organization, The Instruction Cycle, Instruction Pipelining.
3. OPERATING SYSTEMS
System software, resource abstraction, OS strategies; multiprogramming, batch, time-sharing, personal computers and workstation, process control & real-time systems, processes & threads using FORK, JOIN, QUIT.
Operating System Organization:
Factors in operating system design, basic OS function, implementation consideration: process models, kernels, methods of requesting system services, device drivers.
Service management approaches, buffering, device drivers, performance tuning.
System view of the process and resources, initiating The OS, process address space, process abstraction, resource abstraction, process hierarchy.
Scheduling Mechanisms, Strategy selection, non-pre-emptive and pre-emptive strategies.
Interactive processes, critical section, deadlock, coordinating processes, semaphores, spread memory, multiprocessors, events, monitors and the inter-process communication.
System deadlock model, prevention strategies, hold and wait, circular wait, allowing pre-emption, Banker’s Algorithm, serially reusable resources, consumable resources, general resources system recovery.
Mapping address space to memory space, memory allocation strategies, fixed partition, variable partition, segmentation.
Directory structure, basic file operations and their implementation. Protection and Security: Policy mechanism, authentication, internal access authorization.
4. DIGITAL ELECTRONICS
Digital signal, NAND, NOR and Exclusive-OR operation, Boolean Algebra, Basic Digital Circuits.
Number system and Codes:
Primary, Octal, Hexadecimal, Signed Numbers Codes, hamming codes.
Combinational Logic Design:
K-map representation of logical functions and simplification using K-map of 4 and 5 variables, Quine- McCluskey’s method. Multiplexers, Demultiplexers, Adders and Subtracters, multipliers, Comparators, Parity generators and checkers, Code converters, Priority Encoders, Decoders. Races, hazards, and asynchronous behaviour
Clocked RS flip-flop, D-type flip-flop, Excitation table of a flip-flop, Edge triggered flip-flop, Clocked flip flop design.
Sequential Logic Designs:
Registers, Shift registers, Asynchronous counters, synchronous counters, RAM, ROM.
5. PROGRAMMING FUNDAMENTALS
Basic Computer Organization:
Functional Units, basic I/O devices and storage devices; Representation of integers, real (fixed and floating point), characters (ASCII and Unicode); Basic operations of a programming environment.
Problem Solving Approaches Notion of an algorithm:
problem-solving using top-down design and decomposition into subproblems, stepwise methodology of developing an algorithm, methodology of developing an algorithmic solution from a mathematical specification of the problem, use of recursion for problems with inductive characterization.
Programming using a modern programming language such as Java:
emphasizing the following notions: Building blocks: arithmetic and logical expression, variables, assignment; Specifying the input-output interface (type); control structures including sequencing, conditionals, loops,procedural abstractions (procedures, methods); basic data structures-integers, reals, strings and arrays and internal representation of scalar and vector data; data abstraction and encapsulation-objects, classes and packages; input/output of data. Numerical and non-numerical applications using above concepts.
7. DATA STRUCTURES
Introduction to the object-based and object-oriental programming paradigms; records, abstract data types and objects, data abstraction and internal representation; programming-in-the-large issues: modularity and code reusability, classes and packages; graphical user interfaces; command-line arguments; interfacing with libraries and separate compilation; language support and OOP: Sub-typing, Inheritance, classes and subclasses,
header files, function templates, overloading.
Programming with Data structures: Stacks, queues, lists, trees and balanced binary trees, the specification of exception conditions and exception handling, the notion of an efficient algorithmic solution, efficient representations of data structures (e.g.sparse arrays), algorithms for searching and sorting.
8. PROGRAMMING IN C++
Object Oriented Programming: Concept of Object Oriented Programming-
Data hiding, Data encapsulation, Class and Object, Abstract class and Concrete class, Polymorphism (Implementation of polymorphism using Function overloading as an example in C++); Inheritance, Advantages of Object Oriented Programming over earlier programming methodologies.
Implementation of Object Oriented Programming concepts in C++:
Definition of a class, Members of a class-Data Members AND Member Functions (methods), Using Private and Public visibility modes, default visibility mode (private); Member function definition: inside class definition and outside class definition using scope resolution operator (::); Declaration of objects as instances of a class; accessing members from object (s), Array of type class, Objects as function arguments pass by value and pass by reference; Constructor and Destructor: Constructor: Special Characteristics, Declaration and Definition of a constructor, Default Constructor, Overloaded Constructors, Copy Constructor, Constructor with definition of destructor; Destructor: Special Characteristics, Declaration and definition of destructor; Inheritance (Extending Class): Concept of Inheritance, Base Class, Derived Class, Defining derived classes, protected visibility mode; Single level inheritance, Multilevel inheritance and Multiple inheritance, Privately derived, Publicly derived and Protectedly derived class,
accessibility of members from objects and within derived class (es);
Data File Handling:
Need for a data file, Types of data files-Text file and Binary file; Basic file operations on text file: Creating/ Writing text into file, Reading and Manipulation of text from an already existing text File (accessing sequentially); Binary File: Creation of file, Writing data into file, Searching for required data from file, Appending data to a file, Insertion of data in sorted filed, Deletion of data from file, Modification of data in a file; Implementation of above mentioned data file handling in C++; Components of C++ to be used with file handling:
Declaration and Initialization of Pointers: Dynamic memory allocation/ deallocation operators: new, delete; Pointers and Arrays: Array of Pointers, Pointer to an array (1-dimensional array), Function returning a pointer. Reference variables and use of alias; Function call by reference. Pointer to structures: Difference operator: *,->; self-referential structures;
9. RELATIONAL DATABASE MANAGEMENT SYSTEM
Database Management System:
Introduction to database concepts: Relation/ Table, attribute, Tuple/ Rows, fields, Data, Concept of String, Number and Date values, Data type and Data Integrity (Domain and Referential Integrity). Candidate key, Alternate key, Primary Key, Foreign Keys; Data Normalization-first, second, third, BCNF normal form; Examples of Commercially available Database Management System’s (Back-End) – Oracle, MS-SQL Server, DB2, MySQL, Sybase, INGRES. Examples of Front End Software’s: Oracle Developer, Visual Basic, Visual C++, Power Builder, Delphi;
RDBMS Tools (Oracle):
Introduction, Version, Two Tier and Three Tier support; Interface with oracle, Login Screen, Entering Name and Password; Classification of SQL Statements: DML (SELECT, INSERT, UPDATE, DELETE), DDL (CREATE, DROP, ALTER, RENAME, TRUNCATE), DCL (GRANT, REVOKE), TCL (COMMIT, ROLLBACK);
SQL SELECT Statement:
SQL SELECT statement, Selecting All the Columns, Selecting Specific Column, Column Heading Default, Using Arithmetic Operators, Operator Precedence, Significance of NULL value, NULL values in Arithmetic Expressions, Defining and using Column Alias, Concatenation Operator (ll), Duplicate rows and their Elimination (DISTINCT keyword), Role of SQL and SQL*Plus in interacting with RDBMS, Displaying Table Structure (DESC command);
SELECT Statement Continued:
Limiting Rows during selection (using WHERE clause), Working with Character Strings and Dates, Using Comparison operators, BETWEEN Operator, IN Operator, LIKE Operator, is null comparison, Logical Operators, Use of Logical Operators (AND/OR/NOT Operators), Logical Operator Precedence, ORDER BY Clause, Sorting in Ascending/Descending Order, Sorting By Column Alias Name, Sorting On multiple Columns;
SQL Functions, Types of SQL Function (Single Row/ Multiple Row), Single Row SQL Functions, Character Functions (Case Conversion/ Character Manipulation), Case Conversion Functions [lower (), InitCap (), UPPER ()] Character Manipulation Function [CONCAT (), INSTR (), LENGTH (), TRIM (), SUBSTR (), LPAD () ], Number Functions (ROUND (), TRUNC (), MOD() ), Working with Dates [LAST_DAY(), MONTHS_BETWEEN(), NEXT_DAY(), ADD_MONTHS(), ROUND(), TRUNC() ] Arithmetic Operation on Dates, Date Functions and their Usage, Datatype Conversion Functions, Implicit and Explicit Conversion, TO_CHAR Function with Dates, TO_CHAR Function For Numbers, TO_NUMBER and TO_DATE Functions, NVL Function and its Usage, DECODE Function and its Usage; Grouping Records: Concept of Grouping Records and Nested Grouping, Nested Grouping of records, Group Functions, Types of group functions [MAX (), MIN (), AVG (), SUM (), COUNT ()], using AVG and SUM Functions, Using MIN and MAX Functions, Using the COUNT Function, using COUNT(*), DISTINCT clause with Count, Group Functions and Null Values, Using NVL Function with Group Functions, Grouping Records: Group By Clause, Grouping By More than One Column, Illegal Queries with Group By Clause, Excluding Group Results: Having Clause, Nesting Group Functions.
Concept of Sub-Query, Sub Query to solve a Problem, Guidelines for Using Sub Queries, Types of Sub-Queries (Single Row and Multiple Row) and (Single Column and Multiple Column); Single Row Sub-Query and its Execution; Displaying Data From Multiple Tables: Concept of Join, Result of Join, Cartesian Product and Generating Cartesian Production example using Mathematical Set), Types of Joins (EQUL, SELF, NON-EQUI, OUTER (LEFT and RIGHT)), Equi-join, Additional Search Conditions using AND operator, Short Naming Convention for Tables (Table Aliases), Non Equi join and its Implementation, Outer-Join and Its Usage, Self-Join (Joining a table to Itself);
Manipulating Data of A Table /Relation:
Concept of DML (Data Manipulation Language), INSERT Statement, Inserting New Rows, Inserting New Rows, with Null Values, Inserting Date Values, Use OF substitution Variable to Insert Values, Copying Rows From Another Table, Update Statement to Change Existing Data of a Table, Updating Rows In A Table, Updating Rows Based on Another Table, Delete statement/ Removing Row/ Rows from a Table, Deleting, Rows Based on condition from another Table; Making Data Manipulation Permanent (COMMIT). Undo Data Manipulation Changes (ROLLBACK)
View, Table, Sequence, Index, and Synonyms, DDL (Data Definition Language), Naming Convention, Creating Views, Creating Synonyms, Simple Views and Complex Views, Retrieving Data From a View, Querying a View, Modifying a view. Including Constraints: Constraints, Concept of using Constraints, Constraint Guidelines, Defining Constraints, NOT NULL, UNIQUE KEY, PRIMARY KEY, FOREIGN KEY, FOREIGN KEY Constraint Keywords, CHECK, Adding a constraint, Dropping a Constraint, Disabling Constraints, Enabling Constraints, Viewing Constraints, Viewing The Columns, Associated with Constraints.
Creation of a Table/ Relation:
CREATE TABLE Statement, Data types, the DEFAULT option, Creating Tables, Referencing Another User’s Tables, Querying the Database Dictionary to view all tables in the Oracle Database, Creating a Table by Using a Sub-Query; Managing Existing Tables and other Database Objects: The ALTER TABLE Statement, Adding a New Column in a Table, Modifying Existing Column, Dropping a Column, Renaming an Object, Truncating a Table, Adding Comments to a Table, Dropping Views, Dropping Synonyms, Dropping Tables; giving permission to other users to work on Created Tables and Revoking it (GRANT and REVOKE statement).
10. BUSINESS COMPUTING
User interfaces (front End), Underlying Database (back End), Integration of User Interface and Database; More application areas of Databases: Inventory control, Financial Accounting, Pay-Accounting System, Invoicing Management System, Personal Management System/ hard system, Fees Management System, Result Analysis System, Admission Management System, Income Tax Management System.
Advance Program Development Methodology:
System Development Life Cycle, Relational Database Concept, Relational Database, Management System, Data Models (Entity Relationship Model), Entity and Entity Set, Attributes (Single, Composite and Multi-Valued), Relationship (One-to-One, One-to-Many and Many-to-Many), Entity Relationship Modeling Conventions, Communicating with an RDBMS using SQL, Relational Database Management System, SQL Statements, About programming language in SQL.
Data Warehousing & Data Mining:
Data Dictionary, Meta Data; Object Modelling: Introduction to object-oriented modelling using Unified Modeling Language (Concepts only). Client Server Computing: Concept of Client Server Computing.
11. WEB DEVELOPMENT
2. Web Page Authoring Using HTML
3. Document Object Model
4. Cascading Style Sheets (CSS)
7. Active Server Pages (ASP)
12. COMMUNICATION AND NETWORK CONCEPTS
Evolution of Networking:
ARPANET, Internet, Interspace; Different ways of sending data across the network with reference to switching techniques;
Data Communication terminologies:
Concept of Channel, Baud, Bandwidth (Hz, KHz, MHz) and Data transfer rate (bps, kbps, Mbps, Gbps, Tbps); Transmission media: Twisted pair cable, coaxial cable, optical fibre, infrared, radio link, microwave link and satellite link.
Modem, RJ45 connector, Ethernet Card, Hub, Switch, Router, Gateway; Different Topologies- Bus, Star, Tree; Concepts of LAN, WAN, MAN; Protocol: TCP/IP, File Transfer Protocol (FTP), PPP, Level-Remote Login (telnet), Internet, Wireless/ Mobile Communication, GSM, CDMA, WLL, 3G, SMS, Voice mail, Electronic Mail, Chat, Video Conferencing;
Network Security Concepts:
Cyber Law, Firewall, Cookies, Hackers and Crackers; WebPages; Hyper TEXT markup Language (HTML), extensible Markup Language (EML); Hyper Text Transfer Protocol (HTTP); Domain Names; URL; Protocol Address; Website, Web Browser, Web Servers; Web Hosting.
13. UNIX/LINUX OVERVIEW
14. COMPUTER GRAPHICS