Based on Theory course
Course Catalogue
Review of Binary number system, Boolean algebra, Simplification of Boolean Functions, Logic gates, Combinational Logic, Arithmetic and Comparator Circuits, Encoders and Decoders, Multiplexers and Demultiplexers, Flip-Flops, Sequential Logic, Registers, Counters, Programmable Logic devices. The course includes lab works based on theory taught.
Based on object oriented programming.
Introduction, Growth of Functions, Techniques for analysis of algorithms; Methods for the design of efficient algorithms: divide and conquer, greedy method, dynamic programming, back tracking, branch and bound; basic search and traversal techniques; topological sorting; connected components, spanning trees, shortest paths; Flow algorithms; Approximation algorithms; Parallel algorithms, Lower bound theory; NP-completeness, NP-hard and NP-complete problems.
Based on theory course.
Information representation; Measuring performance; Instructions and data access methods: operations and operands of computer hardware, representing instruction, addressing styles; Arithmetic Logic Unit (ALU) operations, floating point operations, designing ALU; Processor design: datapaths - single cycle and multicycle implementations; Control Unit design - hardwired and microprogrammed; Hazards; Exceptions; Pipeline: pipelined datapath and control, superscalar and dynamic pipelining; Memory organization: cache, virtual memory, channels; Concepts of DMA and Interrupts; Buses: overview of computer BUS standards; Multiprocessors: types of multiprocessors, performance, single bus multiprocessors, multiprocessors connected by network, clusters.
Concepts of database systems; Data Models: Entity-Relationship model, Relational model; Query Languages: Relational algebra, SQL; Constraints and triggers; Functional dependencies and normalization; File organization and data storage; Indexing: primary and secondary indexes, B+ trees, hash tables; Query optimization; Transaction management; Recovery; Concurrency control; Access control and security; Semi-structured database: XML, XPath, XQuery; Object oriented and object relational databases.
Based on theory course.
Introduction to Automata and Theory of Computation. Finite State Machines. Regular Expressions. Context Free Grammar. Push Down Automata. Turing Machine. Decidable and Undecidable Language.
Introduction: What is operating system? History of operating system, Operating system concepts, Operating system structure, Processes and Threads, Interprocess communication, Scheduling, Classical IPC problems, Memory Management, No memory abstraction, Virtual memory, Page replacement algorithms, Design issues for paging systems, Implementation issues, File Systems, Files, Directories, File system management, Input / Output, Principles of I/O hardware, Principles of I/O software, I/O software layers, Disks, Clocks, Thin clients, Deadlocks, Resources Detection, Recovery, Avoidance, Prevention, Virtualization and Cloud.