Print Out
Print Out
.
Unit - 3 : Programming Languages and Computer Graphics
Topic Explanation Example
Basic ideas and
Programming structures that
In Python, print("Hello, World!") uses the
Language define a
concept of a function to display text.
Concepts programming
language.
Different styles
Paradigms and and approaches Object-oriented programming in Java uses
Models to classes and objects.
programming.
Tools and
Programming settings used to Visual Studio Code is a popular programming
Environments develop environment for various languages.
software.
Simulated
Virtual computers and
Java Virtual Machine (JVM) allows Java
Computers and when variables
programs to run on different hardware.
Binding Times are assigned
values.
Rules that
Programming define the
In Python, if x > 5: is a syntax for a conditional
Language structure of
statement.
Syntax code in a
language.
Steps involved
in converting
Stages in Compiling, linking, and running are stages in
code to
Translation translating C code.
executable
programs.
Mathematical
Formal models
Finite State Machines model the behavior of
Transition describing how
regular expressions.
Models program states
change.
Topic Explanation Example
Characteristics
Properties of
of data types An integer in Python can hold whole numbers
Types and
and their like 3, 4, and 5.
Objects
instances.
Basic single-
Scalar and value types and
An integer is scalar, while a list in Python is
Composite Data complex types
composite.
Types made of
multiple values.
Basic building
Keywords like int, float, and symbols like +, - in
Tokens blocks of a
C.
program.
Names used to
identify
Identifiers int age; declares an identifier age in C.
variables,
functions, etc.
Types of data a
Data Types language int, float, and char are data types in C.
supports.
Control the
Sequence order of if, else, while, and for are control statements in
Control execution of C.
statements.
Mechanisms to
Subprogram
define and call void functionName() {} defines a function in C.
Control
functions.
Collection of
Arrays elements of the int arr[10]; declares an array of integers in C.
same type.
Custom data
types that struct { int id; char name[20]; } defines a
Structures
group different structure in C.
types of data.
A data type that
can hold
Union union { int i; float f; } defines a union in C.
different types
of data, but
Topic Explanation Example
only one at a
time.
Sequence of
String char str[] = "Hello"; declares a string in C.
characters.
Variables that
Pointers store memory int *ptr; declares a pointer to an integer in C.
addresses.
Blocks of code
int add(int a, int b) { return a + b; } defines a
Functions that perform
function in C.
specific tasks.
Reading from
FILE *fp = fopen("[Link]", "r"); opens a file for
File Handling and writing to
reading in C.
files.
Inputs passed
Command Line to a program int main(int argc, char *argv[]) in C allows
Arguments when it is handling command line arguments.
executed.
Directives for
the compiler to
#include <stdio.h> includes standard input-
Preprocessors process before
output header in C.
actual
compilation.
Blueprint for
Class creating objects class Car { } in C++.
in OOP.
Instance of a Car myCar; creates an object of the Car class in
Object
class. C++.
Creating an
Instantiation object from a Car myCar = new Car(); in C++.
class.
Mechanism for
a new class to
Inheritance use properties class ElectricCar : public Car { } in C++.
of an existing
class.
Topic Explanation Example
Wrapping data
and methods Private variables and public methods in a C++
Encapsulation
into a single class.
unit (class).
A class that
cannot be
Abstract Class instantiated and class Shape { virtual void draw() = 0; } in C++.
is meant to be
subclassed.
Ability to use a
Overloading functions or using virtual functions
Polymorphism function in
in C++.
different ways.
Basic elements
of a program
such as
Tokens int, float, return in C++.
keywords,
operators, and
identifiers.
Names given to
Identifiers variables, int age; where age is an identifier in C++.
functions, etc.
Storage
locations that
hold values
Variables and
which can int x = 5; const int y = 10; in C++.
Constants
change
(variables) or
not (constants).
Symbols that
perform
Operators operations on +, -, *, / in C++.
variables and
values.
Statements that
Control
control the flow if, else, while, for in C++.
Statements
of execution.
Topic Explanation Example
Functions Methods of
Parameter giving input to void func(int a, int b); in C++.
Passing functions.
Functions in a
base class that
Virtual
can be virtual void display(); in a C++ class.
Functions
overridden in
derived classes.
Special
functions for
Constructors
initializing and Car() { } and ~Car() { } in a C++ class.
and Destructors
cleaning up
objects.
Defining
multiple
functions with
Overloading void func(int a); void func(double a); in C++.
the same name
but different
parameters.
Writing generic
template <class T> class MyClass { T var; } in
Templates and reusable
C++.
code.
Managing
errors and
Exception and
unusual events try { } catch (exception e) { } in C++.
Event Handling
during program
execution.
Reading from
Streams and
and writing to ifstream inFile; ofstream outFile; in C++.
Files
files.
Programs that
Multifile Using #include to include headers and separate
are split into
Programs implementation files in C++.
multiple files.
Markup
language for <html><body>Hello, World!</body></html>
HTML
creating web creates a simple webpage.
pages.
Topic Explanation Example
Dynamic
HTML, allows
Using JavaScript with HTML and CSS to create
DHTML interactive and
animations.
animated
websites.
Markup
language for
<note><to>Tove</to><from>Jani</from></note
XML storing and
> represents a note.
transporting
data.
Writing scripts
to automate
Scripting JavaScript code to validate a web form.
tasks on the
web.
Programming
public class HelloWorld { public static void
language for
Java main(String[] args) { [Link]("Hello,
building web
World!"); } } in Java.
applications.
Java programs
that run on a
A servlet handling form data submission in a
Servlets server and
web application.
handle web
requests.
Small Java
programs that A Java applet displaying an animation on a
Applets
run in a web webpage.
browser.
Hardware for
Video-Display
displaying Monitors, projectors, and VR headsets.
Devices
graphics.
Techniques for
Raster-Scan
rendering Raster-scan uses pixels (like in monitors),
and Random-
images on random-scan uses lines (like in vector displays).
Scan Systems
screens.
Graphics Displays High-resolution monitors used by graphic
Monitors designed for designers.
Topic Explanation Example
high-quality
graphics.
Devices used to
Input Devices interact with Mouse, keyboard, and graphic tablets.
computers.
Basic elements
Points and Drawing a point or a line on a screen using
of computer
Lines coordinates.
graphics.
Methods to
Line Drawing
draw lines on a Bresenham's algorithm for line drawing.
Algorithms
screen.
Mid-Point Methods to
Circle and draw circles
Midpoint circle algorithm to draw a circle.
Ellipse and ellipses on
Algorithms a screen.
Scan Line Technique to
Polygon Fill fill polygons Filling a triangle on the screen with a solid color.
Algorithm with color.
Algorithms to
Boundary-Fill fill areas
Filling a closed area in a drawing program.
and Flood-Fill bounded by a
color or border.
Moving objects
Translation Shifting a shape 10 units to the right.
in graphics.
Changing the
Scaling Doubling the size of a square.
size of objects.
Rotating
Rotation objects around Rotating a triangle 45 degrees clockwise.
a point.
Mirroring
Reflection objects across Reflecting a shape across the x-axis.
an axis.
Shear Slanting the
Transformation shape of an Shearing a rectangle to create a parallelogram.
s object.
Topic Explanation Example
Matrix
Using matrices
Representations
for geometric
and Using a matrix to rotate a point in 2D space.
transformations
Homogeneous
.
Coordinates
Combining
Composite multiple
Applying scaling and rotation together.
Transforms transformations
into one.
Converting
Transformation
points from one
s Between Converting 3D coordinates to 2D screen
coordinate
Coordinate coordinates.
system to
Systems
another.
Steps to create
Viewing
a view of a Transforming 3D objects to 2D for display.
Pipeline
scene.
Coordinate
Viewing
system for
Coordinate
viewing Setting up a camera in 3D space to view objects.
Reference
transformations
Frame
.
Window to Mapping a
View-Port portion of the
Zooming into a specific part of a drawing.
Coordinate scene to the
Transformation display area.
Functions that
Viewing define how a glOrtho() in OpenGL to define orthographic
Functions scene is projection.
viewed.
Line and Methods to cut
Polygon lines and
Cohen-Sutherland line clipping algorithm.
Clipping polygons to fit
Algorithms within a view.
Representing
Polygon
3D objects A 3D model of a cube made of square polygons.
Surfaces
using polygons.
Topic Explanation Example
Surfaces
Quadric defined by Representing a sphere or cylinder in 3D
Surfaces quadratic graphics.
equations.
Curves defined
Spline by
Using Bezier curves to draw smooth curves.
Representation mathematical
functions.
Types of spline
Bezier and B- Drawing a smooth curve with control points
curves used in
Spline Curves using Bezier curves.
graphics.
Smooth
Bezier and B- surfaces
Creating a smooth 3D surface with B-Splines.
Spline Surfaces defined by
spline curves.
Techniques to
Illumination simulate Phong shading model to add realistic lighting to
Models lighting in a 3D scene.
graphics.
Polygon Techniques to
Gouraud shading to smooth colors across a
Rendering draw and shade
polygon.
Methods polygons.
Steps and
Viewing coordinate
Converting 3D coordinates to 2D screen
Pipeline and systems for
coordinates in OpenGL.
Coordinates displaying a 3D
scene.
Techniques to
General project 3D
Projection scenes onto 2D Perspective projection to give a 3D effect on a
Transforms and and remove 2D screen.
Clipping parts outside
the view.
Unit – 4 : Database Management Systems
Concept Explanation Example
Framework for organizing and Relational model organizes data
Data Models
defining data. in tables.
Structure defining a database's A database schema includes
Schemas
organization. tables and relationships.
Actual data stored in the A table row represents a data
Instances
database at a moment. instance.
Separates database into three User sees only the external
Three-Schema
layers: internal, conceptual, schema; not the internal
Architecture
external. storage.
Ability to change schema
Data Adding a column without
without altering the
Independence affecting existing queries.
application.
Database Languages to define, SQL for querying and updating
Languages manipulate, and control data. databases.
Centralized Single server hosts the entire Traditional databases on one
DBMS database. mainframe.
Client/Server Database functions are split Web applications with a
DBMS between clients and servers. database server.
Entity- Visual representation of
Diagram showing customers
Relationship database entities and
and orders relationship.
Diagram relationships.
Data organized in tables with Customer table with columns
Relational Model
rows and columns. for name, address.
Primary key constraint ensures
Constraints Rules enforcing data integrity.
unique IDs.
Relational Mathematical operations on Join operation combines data
Algebra tables. from two tables.
Relational Non-procedural query Query specifying conditions to
Calculus language. retrieve data.
Guidelines for relational Rule: All data must be
Codd Rules
database systems. accessible in table form.
SQL Data SQL statements to define
CREATE TABLE statement.
Definition database structure.
Concept Explanation Example
Defines the type of data stored
Data Types Integer, text, date types.
in each column.
Constraints in
Rules applied to columns. NOT NULL constraint.
SQL
SQL Queries Statements to retrieve data. SELECT * FROM Customers;
INSERT INTO Customers
Insert Statement Adds new records to a table.
(Name) VALUES ('John');
DELETE FROM Customers
Delete Statement Removes records from a table.
WHERE Name = 'John';
UPDATE Customers SET
Update Statement Modifies existing records. Name = 'Jane' WHERE Name =
'John';
CREATE VIEW
Virtual tables representing ActiveCustomers AS SELECT
Views
data. * FROM Customers WHERE
Active = 1;
CREATE PROCEDURE
Stored Predefined SQL code executed
AddCustomer(Name
Procedures as a function.
VARCHAR);
CREATE FUNCTION
Functions SQL code that returns a value. GetCustomerCount()
RETURNS INT;
Database Actions executed in response Trigger on insert to log
Triggers to database events. changes.
Security vulnerability allowing
Input ' OR '1'='1' causes
SQL Injection unauthorized SQL code
unauthorized access.
execution.
Functional Relationship between columns If A determines B, knowing A
Dependencies ensuring consistency. means knowing B.
Process to minimize data Breaking a table into two to
Normalization
redundancy. remove duplicate data.
Steps to execute database Optimizing SELECT
Query Processing
queries efficiently. statements for speed.
Transaction Ensures database operations COMMIT and ROLLBACK
Processing are completed fully. statements.
Concept Explanation Example
Concurrency Manages simultaneous data Locking rows during updates to
Control access. prevent conflicts.
Database Using backup to recover lost
Restores database after failure.
Recovery data.
Store data as objects, like in Object database storing user
Object Databases
OOP. objects.
Object-Relational Combines relational and object PostgreSQL with JSONB data
Databases database features. type.
Protects data from User authentication and access
Database Security
unauthorized access. control.
Temporal Database tracking history of
Handle time-varying data.
Databases changes.
Multimedia Store and manage multimedia Database containing images
Databases data. and videos.
Deductive Apply logical rules to derive Database using rules to infer
Databases data. new facts.
Database managing product
XML Databases Store and query XML data.
catalog in XML format.
Databases for mobile
Mobile Databases SQLite used in mobile apps.
applications.
Geographic
Database with maps and
Information Manage spatial data.
location data.
Systems
Genome Data Databases for genetic Database storing DNA
Management information. sequences.
Distributed Spread across multiple Data replicated across servers
Databases locations. in different regions.
Store and analyze large Central repository for business
Data Warehouses
volumes of data. analytics.
Discover patterns in large Finding customer buying
Data Mining
datasets. trends.
Online analytical processing Summarizing sales data across
OLAP
for data analysis. regions.
Online transaction processing Processing customer orders in
OLTP
for day-to-day operations. real-time.
Concept Explanation Example
Identify relationships between
Association Rules Market basket analysis in retail.
data items.
Categorize data into Classifying emails as spam or
Classification
predefined groups. not.
Group similar data points Customer segmentation based
Clustering
together. on purchase behavior.
Regression Predict a continuous value. Predicting house prices.
Support Vector Supervised learning model for Classifying images of cats and
Machine classification/regression. dogs.
K-Nearest Classify based on the nearest Recommending movies based
Neighbour data points. on user similarity.
Hidden Markov Statistical model for sequential
Speech recognition systems.
Model data.
Condense data into a brief Generating executive
Summarization
summary. summaries from reports.
Dependency Model dependencies between Bayesian networks for
Modeling variables. probabilistic dependencies.
Study relationships in Analyzing social media
Link Analysis
networks. connections.
Sequencing Analyze sequence patterns in
DNA sequencing analysis.
Analysis data.
Social Network Study social structures using Analyzing influence in social
Analysis networks. media.
Big Data Volume, variety, velocity, and Analyzing large sets of social
Characteristics veracity of big data. media data.
Types of Big Structured, unstructured, semi-
Text, images, and logs.
Data structured.
Big Data Framework for processing big
Hadoop ecosystem.
Architecture data.
Processing model for large Counting word frequency in
Map-Reduce
data sets. documents.
Open-source framework for Distributed storage and
Hadoop
big data processing. processing.
Distributed File Manages files across multiple Hadoop Distributed File
System servers. System (HDFS).
Concept Explanation Example
Non-relational databases for MongoDB storing JSON-like
NOSQL
flexible data models. documents.
Querying Methods to retrieve data from
Using MongoDB queries.
NOSQL NoSQL databases.
Managing Administering NoSQL
Indexing data in Couchbase.
NOSQL databases.
Organizing data for fast Creating indexes in
Indexing NOSQL
retrieval. Elasticsearch.
NoSQL databases hosted in
NOSQL in Cloud Amazon DynamoDB.
cloud environments.
Unit – 5 : System Software and Operating System
Concept Explanation Example
Basic code the computer's
Machine Language hardware understands Binary code like 10101011
directly.
Low-level code that's slightly
Assembly Language easier to read than machine MOV AX, 1
language.
Programming languages that
High-Level
are easy for humans to Python, Java
Languages
understand.
Programs that translate high- Turning Python code into
Compilers
level code into machine code. binary code
Programs that execute high- Running JavaScript code in a
Interpreters
level code line by line. web browser
Bringing a program into Loading a game from the
Loading
memory for execution. hard drive
Combining multiple code files Creating a single program
Linking
into a single executable. from various modules
Adjusting program addresses Changing where a program
Relocation
to run in memory. runs in RAM
Shortcuts in code to simplify #define MAX 100 in C
Macros
tasks. programming
Tools to find and fix bugs in Using GDB to find errors in
Debuggers
programs. a program
The organization of an OS,
Operating System Windows has a GUI and
including its components and
Structure command-line interface
interactions.
Tasks and functions an OS
OS Operations and Managing files, running
performs for users and
Services programs
programs.
Requests programs make to
System Calls open() in C to open a file
the OS to perform tasks.
OS Design and The creation and setup of an
Designing Linux kernel
Implementation operating system.
Concept Explanation Example
Starting up the computer and Turning on a PC and loading
System Boot
loading the OS. Windows
Managing the execution order Windows Task Manager
Process Scheduling
of programs. allocating CPU time
Actions taken on running Starting, pausing, or stopping
Process Operations
programs. a program
Interprocess Ways programs talk to each Chat applications sending
Communication other. messages
Web browsers (clients)
Client-Server Programs interacting over a
requesting data from
Systems network.
websites (servers)
Process Ensuring programs run Multiple programs accessing
Synchronization together without conflicts. the same file without errors
Critical-Section Managing access to shared Two bank transactions
Problem resources without conflict. updating the same account
Ensuring two programs don’t
Algorithm for process
Peterson’s Solution access a critical section
synchronization.
simultaneously
Tools to manage resource Traffic lights controlling cars
Semaphores
access among processes. at an intersection
Writing programs to use A video editing software
Multicore
multiple CPU cores using all CPU cores to render
Programming
effectively. faster
Multithreading Patterns for using multiple Web servers handling
Models threads in programs. multiple requests at once
Tools to help implement Using pthreads in C
Thread Libraries
multithreading. programming
Automatically managing
OpenMP automatically
Implicit Threading threads without programmer
parallelizing a loop
intervention.
Problems that arise with using Deadlocks and race
Threading Issues
threads. conditions
Allocating CPU time to Round-robin scheduling in a
CPU Scheduling
different tasks. multitasking OS
Managing the order of thread Scheduling threads in a web
Thread Scheduling
execution. server
Concept Explanation Example
Multiple-Processor Allocating tasks across Load balancing in a multi-
Scheduling multiple CPUs. CPU system
Real-Time CPU Scheduling for tasks that need
Flight control systems
Scheduling precise timing.
Deadlock Understanding situations Two programs waiting on
Characterization where tasks can't proceed. each other indefinitely
Methods to manage and Killing one process to
Handling Deadlocks
resolve deadlocks. resolve a deadlock
Ensuring a program never
Techniques to avoid
Deadlock Prevention holds onto resources
deadlocks from occurring.
indefinitely
Dynamically checking if
Deadlock Avoidance granting a resource will cause Banker's algorithm
a deadlock.
Running a detection
Identifying when a deadlock
Deadlock Detection algorithm when a process
has occurred.
gets stuck
Recovery from Steps to recover from a Restarting one of the stuck
Deadlock deadlock situation. programs
Assigning one continuous
Contiguous Memory Early operating systems like
block of memory to a
Allocation MS-DOS
program.
Moving processes between Loading parts of a program
Swapping
main memory and disk. as needed
Dividing memory into fixed- Modern OS memory
Paging
size pages. management
Dividing memory into Different segments for code,
Segmentation
variable-sized segments. data, and stack
Loading pages into memory
Demand Paging Virtual memory systems
only when needed.
Replacing old pages in LRU (Least Recently Used)
Page Replacement
memory with new ones. algorithm
Assigning physical memory Assigning memory to
Allocation of Frames
to virtual pages. different running programs
Excessive paging causing Constant swapping making
Thrashing
slowdowns. the system unresponsive
Concept Explanation Example
Memory-Mapped Mapping disk files into Accessing files as if they
Files memory for faster access. were part of RAM
Mass-Storage Organization of large data Hard drive partitions and file
Structure storage. systems
Managing the order of disk Optimizing access times by
Disk Scheduling
read/write requests. reordering requests
Using multiple disks for RAID 5 for improved data
RAID Structure
redundancy and performance. reliability
Ways to access and retrieve Sequential and random
Access Methods
stored data. access
Directory and Disk Organization of files and
Hierarchical folder structure
Structure folders on disk.
File-System Making a file system
Mounting a USB drive
Mounting accessible to the OS.
Allowing multiple users or
File Sharing Network file sharing
programs to access files.
File-System Internal organization of a file
NTFS, FAT32
Structure system.
Directory Methods for organizing and Linked lists or B-trees for
Implementation storing directory entries. directories
Techniques for managing file Contiguous, linked, and
Allocation Methods
storage space. indexed allocation
Free-Space
Tracking unused disk space. Bitmap or free list
Management
Efficiency and Optimizing file system Caching frequently accessed
Performance operations. data
Backups and journaling file
Recovery Restoring data after failures.
systems
Devices that facilitate input
I/O Hardware Keyboards, mice, printers
and output.
Application I/O How programs interact with Using an API to read from a
Interface I/O devices. file
Kernel I/O Part of the OS managing I/O Handling device drivers and
Subsystem operations. I/O scheduling
Concept Explanation Example
Converting high-level I/O
Transforming I/O Reading a file involves
requests to hardware
Requests multiple hardware steps
operations.
Ensuring only authorized
Protection User permissions
access to resources.
Table defining access rights User A can read file X, User
Access Matrix
for users and resources. B can write to file Y
Mechanisms to enforce access
Access Control Passwords and user roles
policies.
Revocation of Removing access Revoking a user's access to a
Access Rights permissions. shared folder
Security risks from malicious
Program Threats Viruses and worms
software.
System and Network Security risks to systems and
DDoS attacks and hacking
Threats networks.
Encrypting messages for
Cryptography Techniques for securing data.
privacy
Verifying the identity of
User Authentication Passwords, biometrics
users.
Measures to protect against
Security Defenses Firewalls, antivirus software
threats.
Emulating multiple OS
Running Windows on a Mac
Virtual Machines environments on one physical
using VMware
machine.
Creating virtual versions of Virtual servers in cloud
Virtualization
hardware or software. computing
Linux Design Core ideas behind Linux OS
Modular design, open source
Principles structure and function.
Loadable pieces of the OS Device drivers that can be
Kernel Modules
kernel. added or removed
Linux Process How Linux handles running
Using ps to view processes
Management programs.
Allocating CPU time in Completely Fair Scheduler
Linux Scheduling
Linux. (CFS)
Concept Explanation Example
Linux Memory How Linux manages RAM vmstat for monitoring
Management and virtual memory. memory usage
Linux's method for storing
Linux File Systems Ext4, Btrfs
and organizing files.
How Linux handles dd command for copying
Linux I/O
input/output operations. data
Linux Interprocess Methods for Linux processes
Pipes, message queues
Communication to communicate.
Linux Network How Linux manages network
TCP/IP stack implementation
Structure connections.
Windows Design Core ideas behind Windows User-friendly interface,
Principles OS structure and function. backward compatibility
Windows System Main parts of the Windows Kernel, user interface, file
Components OS. system
Providing remote access to Remote Desktop Protocol
Terminal Services
Windows desktops. (RDP)
Quickly switching between Switching users without
Fast User Switching
user accounts. logging off
Windows File Windows' method for storing
NTFS
System and organizing files.
Windows How Windows handles
Network and Sharing Center
Networking network connections.
Network-based OS Operating systems designed
Network File System (NFS)
Types for network use.
The layout and organization
Network Structure Client-server, peer-to-peer
of a network.
Communication Rules for data exchange over
TCP/IP, HTTP
Protocols a network.
Ensuring network reliability Redundant servers and
Network Robustness
and fault tolerance. failover mechanisms
Managing files across
Distributed File
multiple networked Google File System (GFS)
Systems
computers.
Unit – 6 : Software Engineering
.
Unit – 9 : Data Communication and Computer Networks