Computer Fundamental
Unit I: Introduction to Computers and Software
Computer
Computer is an advanced electronic device that takes raw data as input from the user
and processes it under the control of set of instructions (called program), gives the result
(output), and saves it for the future use.
Computer components are divided into two major categories namely hardware and
software. Hardware is the machine itself and its connected devices such as monitor,
keyboard, mouse etc. Software is the set of programs that make use of hardware for
performing various functions.
Computing Concepts
The most elementary computing concepts include receiving input - known as data -
from the user, manipulating the input according to the given set of instructions and
delivering the output - known as information - to the user.
A computer performs five major operations or functions irrespective of its size and
make.
These are
It accepts data or instructions as input,
It stores data and instruction
It processes data as per the instructions,
It controls all operations inside a computer, and
It gives results in the form of output.
Applications
Business, Banking, Insurance, Education, Marketing, Health Care, Engineering Design,
Military, Communication, Government
Generation of Computers
Summary
Generati Time Key
Characteristics Examples
on Period Technology
Large, unreliable, used ENIAC,
First 1940s-1950s Vacuum Tubes
for calculations. UNIVAC
Smaller, more reliable, IBM 1401,
Second 1950s-1960s Transistors
assembly language. IBM 7090
Even smaller,
Integrated IBM
Third 1960s-1970s mainframes, advanced
Circuits (ICs) System/360
languages.
Personal computers,
Microprocessor Apple II,
Fourth 1970s-1980s GUIs, rise of software
s IBM PC
industry.
AI, Advanced Supercomputers,
1980s- IBM Watson,
Fifth Microprocessor modern PCs, AI
Present Modern PCs
s research.
1. First Generation
The period of first generation was from 1946-1959. The computers of first
generation used vacuum tubes as the basic components for memory and circuitry
for CPU (Central Processing Unit). These tubes, like electric bulbs, produced a lot
of heat and the installations used to fuse frequently. Therefore, they were very
expensive and only large organizations were able to afford it.
In this generation, mainly batch processing operating system was used. Punch cards,
paper tape, and magnetic tape was used as input and output devices. The computers
in this generation used machine code as the programming language.
The main features of the first generation are: Some computers of
this generation were:
Vacuum tube technology
ENIAC
Unreliable
EDVAC
Supported machine language only
UNIVAC
Very costly
IBM-701
Generated a lot of heat
IBM-650
Slow input and output devices
Huge size
Need of AC
Non-portable
Consumed a lot of electricity
2. Second Generation
The period of second generation was from 1959-1965. In this generation, transistors
were used that were cheaper, consumed less power, more compact in size, more
reliable and faster than the first generation machines made of vacuum tubes. In this
generation, magnetic cores were used as the primary memory and magnetic tape and
magnetic disks as secondary storage devices.
In this generation, assembly language and high-level programming languages like
FORTRAN, COBOL were used. The computers used batch processing and
multiprogramming operating system.
The main features of the first generation are: Some computers of
this generation were:
Use of transistors
IBM 1620
Reliable in comparison to first generation computers
IBM 7094
Smaller size as compared to first generation computers
CDC 1604
Generated less heat as compared to first generation
computers CDC 3600
Consumed less electricity as compared to first UNIVAC 110
generation computers
Faster than first generation computers
Still very costly
AC required
Supported machine and assembly languages
3. Third Generation
The period of third generation was from 1965-1971. The computers of third
generation used Integrated Circuits (ICs) in place of transistors. A single IC has
many transistors, resistors, and capacitors along with the associated circuitry.
The IC was invented by Jack Kilby. This development made computers smaller in
size, reliable, and efficient. In this generation remote processing, time-sharing,
multiprogramming operating system were used. High-level languages (FORTRANII
TO IV, COBOL, PASCAL PL/1, BASIC, ALGOL-68 etc.) were used during this
generation.
The main features of the first generation are: Some computers of
this generation were:
IC used
IBM-360 series
More reliable in comparison to previous two
generations Honeywell-
6000 series
Smaller size
PDP (Personal
Generated less heat
Data Processor)
Faster
IBM-370/168
Lesser maintenance
TDC-316
Costly
AC required
Consumed lesser electricity
Supported high-level language
4. Fourth Generation
The period of fourth generation was from 1971-1980. Computers of fourth
generation used Very Large Scale Integrated (VLSI) circuits. VLSI circuits having
about 5000 transistors and other circuit elements with their associated circuits on a
single chip made it possible to have microcomputers of fourth generation.
Fourth generation computers became more powerful, compact, reliable, and
affordable. As a result, it gave rise to Personal Computer (PC) revolution. In this
generation, time sharing, real time networks, distributed operating system were used.
All the high-level languages like C, C++, DBASE etc., were used in this generation.
The main features of the first generation are: Some computers of
this generation were:
VLSI technology used
DEC 10
Very cheap
STAR 1000
Portable and reliable
PDP 11
Use of PCs
CRAY-1
Very small size
(Super Computer)
Pipeline processing
CRAY-X-MP
No AC required
(Super Computer)
Concept of internet was introduced
Great developments in the fields of networks
Computers became easily available
5. Fifth Generation
The period of fifth generation is 1980-till date. In the fifth generation, VLSI
technology became ULSI (Ultra Large Scale Integration) technology, resulting in
the production of microprocessor chips having ten million electronic components.
This generation is based on parallel processing hardware and AI (Artificial
Intelligence) software. AI is an emerging branch in computer science, which
interprets the means and method of making computers think like human beings. All
the high-level languages like C and C++, Java, .Net etc., are used in this generation.
AI includes – Robotics, Neural Networks, Game Playing, Development of expert
systems to make decisions in real-life situations, Natural language understanding and
generation
The main features of the first generation are: Some computers of
this generation were:
ULSI technology
Desktop
Development of true artificial intelligence
Laptop
Development of Natural language processing
NoteBook
Advancement in Parallel Processing
UltraBook
Advancement in Superconductor technology
ChromeBook
More user-friendly interfaces with multimedia
features
Availability of very powerful & compact computers
at cheaper rates
Classification of Computers
Classification Description Examples
High-performance machines for IBM Summit, Cray XC40,
Supercomputers
complex calculations. Fugaku
Mainframe Large-scale data processing and IBM zSeries, Unisys
Computers enterprise applications. ClearPath, Fujitsu GS21
Mid-sized computers for specific DEC PDP-11, VAX series,
Minicomputers
business or research tasks. Data General Eclipse
Personal Individual-use computers for Desktops, laptops, tablets,
Computers general-purpose tasks. smartphones
Advanced computers for HP Z Series, Dell Precision,
Workstations specialized tasks like design and Mac Pro
engineering.
Computers integrated into Smart appliances,
Embedded
devices for dedicated functions. automotive systems, medical
Computers
devices
Computers that provide services Web servers, database
Servers
and resources to clients. servers, email servers
Portable computing devices iPhones, Android tablets,
Mobile Devices including smartphones and smartwatches
tablets.
1. Supercomputers:
Designed for complex scientific and engineering calculations.
Used in weather forecasting, nuclear simulations, and research.
Examples include IBM's Summit and Sierra.
2. Mainframe Computers:
Large, powerful machines for data processing in organizations.
Used in banking, finance, and large-scale data processing.
IBM zSeries is an example.
3. Minicomputers:
Mid-sized computers with more limited capabilities than mainframes.
Used for specific business applications and scientific research.
DEC PDP-11 is a notable example.
4. Personal Computers (PCs):
Small, individual-use computers designed for general-purpose tasks.
Includes desktops, laptops, and tablets.
Examples include various models from companies like Apple, HP, and Dell.
5. Workstations:
Advanced computers used for complex tasks like 3D rendering and scientific
simulations.
Often used in engineering, design, and content creation.
Sun Microsystems' SPARCstation series is an example.
6. Embedded Computers:
Computers integrated into other devices, performing dedicated functions.
Found in appliances, vehicles, medical equipment, etc.
7. Servers:
Computers designed to serve data and resources to other computers (clients)
over a network.
Web servers, database servers, and email servers are common examples.
8. Mobile Devices:
Compact computing devices, including smartphones and tablets.
Focus on portability and connectivity.
Computer Organization / Anatomy of Computer
CPU (Central Processing Unit)
CPU is considered as the brain of the computer. CPU performs all types of data
processing operations. It stores data, intermediate results and instructions (program). It
controls the operation of all parts of computer.
CPU itself has following three components
ALU (Arithmetic Logic Unit)
Memory Unit
Control Unit
ALU (Arithmetic Logic Unit)
This unit consists of two subsections namely
Arithmetic section
Logic Section
Arithmetic Section
Function of arithmetic section is to perform arithmetic operations like addition,
subtraction, multiplication and division. All complex operations are done by making
repetitive use of above operations.
Logic Section
Function of logic section is to perform logic operations such as comparing, selecting,
matching and merging of data.
Memory or Storage Unit
This unit can store instructions, data and intermediate results. This unit supplies
information to the other units of the computer when needed. It is also known as internal
storage unit or main memory or primary storage or Random access memory (RAM). Its
size affects speed, power and capability. Primary memory and secondary memory are
two types of memories in the computer.
Functions of memory unit are:
It stores all the data and the instructions required for processing.
It stores intermediate results of processing.
It stores final results of processing before these results are released to an output
device.
All inputs and outputs are transmitted through main memory.
Primary memory/ Main memory
It stores data and program statement for the CPU. Primary memory is volatile and
holds data on temporally basis. I.e. its data is lost if the power is switched off. Primary
memory is limited, fast and expensive.
Secondary memory
Provides backup storage to computer and is supplementary to the primary memory. It
is non-volatile in nature i.e. It stores data permanently. As compared to primary
memory, secondary memory is larger in size, non-volatile, slower and inexpensive.
Unit of memory
The smallest block of memory is considered to be a byte, which comprises of 8
bits. The total memory space is measured in terms of bytes. The capacity of memory is
the maximum amount of information it is capable of storing.
Unit Size Unit Size
Bit 1 or 0 Terabyte (TB) 1024 GB
Nibble 4 bits Petabyte (PB) 1024 TB
Byte 8 bits Exabyte (EB) 1024 PB
Kilobyte (KB) 1024 bytes Zettabyte (ZB) 1024 EB
Megabyte (MB) 1024 KB Yottabyte (YB) 1024 ZB
Gigabyte (GB) 1024 MB
Control Unit
This unit controls the operations of all parts of computer but does not carry out any
actual data processing operations.
Functions of this unit are:
It is responsible for controlling the transfer of data and instructions among other
units of a computer.
It manages and coordinates all the units of the computer.
It obtains the instructions from the memory, interprets them, and directs the
operation of the computer.
It communicates with Input / Output devices for transfer of data or results from
storage.
It does not process or store data.
Input Unit / Output Unit
These devices are used to enter information and instructions into a computer for
storage or processing and to deliver the processed data to a user. Input / Output devices
are required for users to communicate with the computer. In simple terms, input devices
bring information INTO the computer and output devices bring information OUT of a
computer system.
Input Unit: This unit is used for entering data and programs into the computer system
by the user for processing. This unit makes link between user and computer. Examples
Keyboard, Mouse, Joy Stick, Light pen, Track Ball, Scanner, Graphic Tablet,
Microphone, Magnetic Ink Card Reader (MICR), Optical Character Reader (OCR), Bar
Code Reader, Optical Mark Reader (OMR), etc.
Output Unit: The output unit is used to display or print input data, show the output
result produced by the computer after processing. This unit is a link between computer
and users. Examples Monitor (Visual Display Unit), Printers, Plotter, Speakers, etc.
Hardware and Software:
A computer system consists of two sub system, namely computer hardware and
software.
Hardware:
The physical, visible, tangible part of computer system that can be touched and
perform the basic function of computing is Hardware. Examples - Keyboard, Mouse,
Scanner, VDU, Printer, Motherboard (CPU, RAM, ROM, Control Circuit), Hard disk,
floppy disk, CD/DVD ROM, Modem etc.
Software
Computer software is the set of programs that makes the hardware perform a set of
tasks in particular order. Hardware and software are complimentary to each other. Both
have to work together to produce meaningful results. Computer software is classified
into two broad categories; system software and application software.
System Software:
System software consists of a group of programs that control the operations of a
computer equipment including functions like managing memory, managing peripherals,
loading, storing, and is an interface between the application programs and the
computer. MS DOS (Microsoft’s Disk Operating System), UNIX are examples of
system software.
Application software:
Software that can perform a specific task for the user, such as word processing,
accounting, budgeting or payroll, fall under the category of application software. Word
processors, spreadsheets, database management systems are all examples of general
purpose application software.
Operating system:
The most important system software is its operating system. The operating system
manages and controls the activities of the computer that include control of
input/output devices, scheduling of operations and monitoring the activities of the
computer.
An operating system is a collection of programs that act as an interface between the
users and computer hardware. The basic resources of a computer system are provided
by its hardware, software and data. The hardware provides the basic computing
resources while the application programs define the way resources are used to solve the
computing problems with the data. The operating system controls and coordinated the
use of all the hardware among the various systems program and application programs
for the various user. It thus provides an environment within which other program can
do useful work.
As resource manager OS must do following:
1. Keep track of the resources
2. Enforce policy that determines who gets
what,
when and how much
3. Allocate the resources
4. Reclaim the resource
Major functions of OS are:
1. Process management
2. Memory management
3. Device (I/O) management
4. File management
5. Protection
Operating systems: purpose, functions, types (single-user, multi-user, multitasking,
real-time)
Introduction to Software
Software refers to the set of instructions that tells a computer how to perform specific
tasks. It can be categorized into three main types: system software, application software,
and utility software. Each type serves a unique purpose and is essential for the effective
functioning of a computer system.
1. System Software
Definition
System software is designed to provide a platform for other software. It manages
hardware components and enables the interaction between hardware and application
software.
Key Components
Operating Systems (OS):
o Purpose: Manages hardware resources, provides a user interface, and acts
as a platform for running application software.
o Examples:
Windows: Widely used OS with a graphical interface.
macOS: Apple's operating system for Macintosh computers.
Linux: An open-source OS, popular for servers and programming.
Device Drivers:
o Purpose: Software that allows the operating system to communicate with
hardware devices.
o Examples:
Printer drivers, graphics card drivers, and network adapter drivers.
Firmware:
o Purpose: Low-level software embedded in hardware devices that controls
them.
o Examples:
BIOS (Basic Input/Output System) and UEFI (Unified Extensible
Firmware Interface) that start up the computer.
Characteristics
Operates in the background and is not user-specific.
Often comes pre-installed on devices.
Essential for hardware operation and management.
2. Application Software
Definition
Application software is designed to help users perform specific tasks. It is built to meet
user needs in various domains, from productivity to entertainment.
Categories and Examples
Productivity Software:
o Purpose: Helps users create documents, presentations, and spreadsheets.
o Examples: Microsoft Office Suite (Word, Excel, PowerPoint), Google
Workspace (Docs, Sheets, Slides).
Web Browsers:
o Purpose: Allows users to access and navigate the internet.
o Examples: Google Chrome, Mozilla Firefox, Safari.
Multimedia Software:
o Purpose: Enables users to create and edit multimedia content.
o Examples: Adobe Photoshop (image editing), Adobe Premiere Pro
(video editing), VLC Media Player (audio/video playback).
Games:
o Purpose: Provides entertainment and recreational activities.
o Examples: Minecraft, Fortnite, educational games.
Communication Software:
o Purpose: Facilitates communication and collaboration.
o Examples: Zoom, Slack, Microsoft Teams.
Characteristics
User-specific and tailored for specific tasks.
Installed and uninstalled by users.
Can be free or paid.
3. Utility Software
Definition
Utility software is designed to help manage, maintain, and optimize computer resources.
It provides essential tools for system performance and functionality.
Types and Examples
Antivirus Software:
o Purpose: Protects the computer from malware and other security threats.
o Examples: Norton, McAfee, Bitdefender.
Disk Management Tools:
o Purpose: Helps manage storage space and optimize disk performance.
o Examples: Windows Disk Cleanup, Disk Defragmenter.
Backup Software:
o Purpose: Creates copies of data to prevent loss.
o Examples: Acronis True Image, Windows Backup and Restore.
File Management Tools:
o Purpose: Assists in organizing, compressing, and managing files.
o Examples: WinRAR, 7-Zip.
Characteristics
Often comes bundled with operating systems.
Focuses on system maintenance and enhancement.
Enhances user experience by improving system performance.
Conclusion
Understanding the different types of software is crucial for anyone using a computer.
Each type—system software, application software, and utility software—plays a vital
role in the overall functionality and performance of the system. By recognizing their
unique purposes and examples, users can effectively manage and utilize their computer
resources.
Types of Operating Systems
1. Purpose of an Operating System
An Operating System (OS) is system software that manages hardware and software
resources on a computer or device. It acts as an intermediary between users and the
computer hardware, providing an environment where users can execute programs
efficiently.
Key Purposes:
Resource Management: Allocates resources like CPU, memory, I/O devices
(e.g., printers, keyboards) to various applications.
User Interface: Provides a user interface (GUI or CLI) for users to interact with
the system.
File System Management: Organizes data storage in a structured manner,
allowing for the creation, deletion, reading, and writing of files.
Task Management: Manages multiple applications running simultaneously,
ensuring that each task receives enough CPU time and operates smoothly.
Security: Controls access to the system and prevents unauthorized access.
Error Detection & Handling: Monitors the system for errors and ensures
proper error reporting and handling mechanisms.
2. Functions of an Operating System
An OS performs several essential functions:
2.1. Process Management:
Process Creation/Termination: OS creates, schedules, and terminates
processes (programs in execution).
Process Scheduling: Allocates CPU time efficiently through scheduling
algorithms (e.g., First-Come-First-Serve, Round Robin).
Inter-Process Communication (IPC): Provides mechanisms for processes to
communicate with each other (message passing, shared memory).
2.2. Memory Management:
Allocation/Deallocation: OS dynamically allocates memory to programs and
reclaims it when they finish.
Virtual Memory: Allows programs to use more memory than physically
available through techniques like paging and swapping.
Segmentation and Paging: Organizes memory into segments or pages to
optimize performance.
2.3. File System Management:
File Handling: OS manages the creation, deletion, opening, closing, reading,
and writing of files.
Directory Structure: Organizes files in directories for easy access and retrieval.
Access Control: Implements security measures such as file permissions
(read/write/execute) to control who can access certain files.
2.4. Device Management:
Device Drivers: Communicates with hardware components (e.g., printers, hard
drives) using device drivers.
I/O Scheduling: Schedules input/output operations to ensure efficient
processing and avoid bottlenecks.
Buffering and Spooling: Manages I/O devices by temporarily storing data in
buffers and organizing output tasks (e.g., printing).
2.5. Security & Access Control:
User Authentication: Provides mechanisms like login credentials (passwords,
biometrics) to verify users.
Permissions & Access Rights: Controls which users have access to certain files,
directories, or system resources.
2.6. User Interface (UI):
Graphical User Interface (GUI): OS like Windows and macOS provide
graphical environments with icons, windows, and menus.
Command-Line Interface (CLI): OS like Linux and UNIX provide command-
line environments for users who prefer textual commands.
3. Types of Operating Systems
Operating systems can be classified into various types based on the tasks they handle
and how they interact with users and processes.
3.1. Single-User Operating System
A single-user OS allows only one user to operate the system at a time. It doesn’t support
multiple users accessing the computer simultaneously. These systems are designed for
standalone personal computers or workstations.
Example: DOS (Disk Operating System), early versions of macOS.
Use Case: Personal computers, where only one user interacts with the computer
at any given time.
3.2. Multi-User Operating System
A multi-user OS allows multiple users to access the computer resources
simultaneously. Each user has a unique terminal or access point, and the OS manages
resources between them to prevent conflicts.
Example: UNIX, Linux, Windows Server.
Use Case: Server environments, database systems, and mainframes where many
users interact concurrently.
3.3. Multitasking Operating System
A multitasking OS allows multiple tasks (processes) to run at the same time. It divides
CPU time among all active tasks, ensuring smooth operation.
Preemptive Multitasking: OS decides when to switch between tasks (e.g.,
Windows, Linux).
Cooperative Multitasking: Each task controls when it yields control to the OS
(e.g., early versions of macOS).
Example: Windows, macOS, Linux.
Use Case: Most modern computing environments where several programs (e.g.,
word processors, web browsers) run simultaneously.
3.4. Real-Time Operating System (RTOS)
A real-time OS is designed to process data and respond to inputs almost
instantaneously. It is critical in environments where timing is crucial.
Hard Real-Time OS: Guarantees response times within strict limits (e.g.,
embedded systems in medical devices).
Soft Real-Time OS: Allows for some flexibility in response time (e.g.,
multimedia systems).
Example: VxWorks, FreeRTOS, RTLinux.
Use Case: Embedded systems, robotics, military applications, medical
equipment.
3.5. Distributed Operating System
A distributed OS runs on multiple interconnected computers that work together to
appear as a single system to the user. It manages the resources across all machines
seamlessly.
Example: Google’s Distributed Systems (used in search engines), Plan 9.
Use Case: Cloud computing environments, distributed databases.
3.6. Embedded Operating System
An embedded OS is specifically designed for devices that are not general-purpose
computers but need operating system functionality, such as smartphones, smartwatches,
or IoT devices.
Example: Android, iOS, FreeRTOS.
Use Case: Mobile phones, smart TVs, smart home devices, wearables.
3.7. Time-Sharing Operating System
A time-sharing OS allows multiple users to share the system resources concurrently
by allocating fixed time slots to each user.
Example: UNIX, Multics.
Use Case: Server-based environments where resources are shared equally
among multiple users.
3.8. Network Operating System
A network OS manages computers connected over a network, providing file sharing,
application sharing, and printer access among multiple computers.
Example: Windows Server, Novell NetWare.
Use Case: Local Area Networks (LANs), enterprise environments.
4. Comparison of OS Types
Number of Number of
OS Type Use Cases
Users Tasks
Single-User OS 1 1 Personal computers
Multi-User OS Multiple Multiple Servers, mainframes
Multitasking OS 1 Multiple PCs, laptops
Embedded systems, medical
Real-Time OS 1 Multiple
devices
Cloud computing, distributed
Distributed OS Multiple Multiple
systems
Embedded OS 1 Multiple Mobile devices, IoT devices
Time-Sharing
Multiple Multiple Multi-user environments
OS
Number of Number of
OS Type Use Cases
Users Tasks
Networked systems, LAN
Network OS Multiple Multiple
environments
5. Conclusion
Operating systems are critical for the smooth functioning of modern computing devices.
They manage resources, provide user interfaces, ensure security, and allow users to
perform multiple tasks simultaneously. The type of OS required depends on the use
case, whether it's for a single user, multiple users, or real-time applications, among
others.
Introduction to popular operating systems: Windows, Linux, macOS
Windows Operating System
1.1 Overview:
Developer: Microsoft Corporation
Initial Release: November 20, 1985
Current Stable Version (as of 2024): Windows 11
Target Audience: General users, businesses, gamers, professionals
Windows is the most widely used desktop operating system, holding a large share of
the PC market. It is known for its user-friendly graphical interface, wide software
compatibility, and ease of use.
1.2. Key Features:
Graphical User Interface (GUI): Windows uses a graphical interface with a
desktop, taskbar, and icons that make navigation intuitive.
Start Menu & Taskbar: A hallmark of Windows, providing easy access to
applications, files, and settings.
Extensive Software Support: Most popular software applications are
developed with Windows compatibility in mind, including office suites
(Microsoft Office), web browsers (Chrome, Edge), and specialized tools (Adobe
Suite).
Backward Compatibility: Windows supports many older applications and
legacy systems, ensuring software longevity.
Security Features: Windows offers built-in security through Windows
Defender, User Account Control (UAC), BitLocker for encryption, and frequent
updates.
File System: Uses NTFS (New Technology File System), which supports large
volumes and long filenames with built-in security features.
Windows Update: Automatic updates provide regular patches for security and
feature enhancements.
1.3. Editions:
Windows Home: Targeted for personal use, with features for home users.
Windows Pro: Designed for small and medium businesses, with additional
security and networking capabilities.
Windows Enterprise: Built for large organizations, with advanced security,
device management, and productivity tools.
Windows Server: A specialized version for managing network resources,
databases, and enterprise services.
1.4. Strengths:
User-Friendly: Easy to learn, especially for non-technical users.
Wide Hardware Support: Compatible with a wide range of hardware from
various manufacturers.
Broad Software Ecosystem: Most commercial software is developed with
Windows in mind, making it ideal for general use and gaming.
Business Use: Heavily adopted in businesses for productivity, database
management, and enterprise tasks.
1.5. Weaknesses:
Vulnerability to Malware: Due to its popularity, Windows is a frequent target
for viruses and malware.
Licensing Costs: Windows is proprietary, and licensing costs for both personal
and business editions can be high.
System Requirements: Newer versions (e.g., Windows 11) often require high
system specifications, limiting usability on older devices.
1.6. Use Cases:
Personal computing, office productivity, gaming, enterprise IT systems, software
development (with cross-platform tools like Visual Studio).
2. Linux Operating System
2.1. Overview:
Developer: Community-driven, with key distributions supported by
organizations like Red Hat, Canonical, and SUSE.
Initial Release: September 17, 1991 (by Linus Torvalds)
Current Stable Kernel Version (as of 2024): Linux kernel 6.x
Target Audience: Developers, IT professionals, server administrators, open-
source enthusiasts
Linux is an open-source OS based on the UNIX architecture. It is widely used in servers,
supercomputers, and embedded systems. It also offers various distributions for desktop
use.
2.2. Key Features:
Open-Source: Linux is open-source, meaning its source code is freely available
for anyone to inspect, modify, and distribute.
Customization: Highly customizable, from the kernel level to the desktop
environment, allowing users to configure it to suit specific needs.
Command-Line Interface (CLI): Linux has a powerful CLI, favored by
developers and system administrators for controlling the OS.
Lightweight & Efficient: Many distributions can run on low-end hardware,
making Linux ideal for older machines or resource-constrained environments.
Security: Known for its robust security model, including built-in firewall tools,
strict user permissions, and SELinux/AppArmor for enhanced control.
File System: Common file systems include ext4, Btrfs, XFS, and ZFS, offering
journaling, snapshots, and high-performance options.
Package Management: Different distributions use package managers (e.g.,
APT, YUM, Pacman) to install, update, and manage software easily.
2.3. Popular Distributions (Distros):
Ubuntu: One of the most popular desktop distributions, known for its user-
friendliness.
Debian: A stable and secure distro, known for its conservative update cycle.
Fedora: Cutting-edge distribution with the latest software, developed by Red
Hat.
Arch Linux: A minimalistic and highly customizable distribution for advanced
users.
CentOS/AlmaLinux/Rocky Linux: Community-driven server distros, ideal for
enterprise-level tasks.
2.4. Strengths:
Stability & Performance: Linux is known for being highly stable, especially in
server environments where uptime is critical.
Security: Its open-source nature allows for rapid patching and auditing of
security issues. It’s less vulnerable to malware compared to Windows.
Cost: Free to use, with no licensing fees.
Diverse Use Cases: Powers everything from web servers to embedded systems
and personal desktops.
Community Support: A large, active community offers extensive support
through forums, wikis, and documentation.
2.5. Weaknesses:
Steep Learning Curve: For users unfamiliar with the command line, the
learning curve can be steep.
Software Availability: Some commercial software (e.g., Adobe Photoshop,
Microsoft Office) is not natively supported on Linux.
Hardware Compatibility: Some hardware manufacturers do not provide
drivers for Linux, requiring manual configuration.
2.6. Use Cases:
Servers (web, database, DNS), software development, supercomputing, network
administration, cloud platforms (AWS, Google Cloud, Azure), embedded
systems (routers, IoT devices), desktop use (with distros like Ubuntu, Fedora).
3. macOS Operating System
3.1. Overview:
Developer: Apple Inc.
Initial Release: March 24, 2001 (as Mac OS X)
Current Stable Version (as of 2024): macOS Sonoma (14.x)
Target Audience: Creative professionals, designers, general users, and Apple
ecosystem enthusiasts
macOS is a Unix-based OS exclusively developed for Apple hardware (Mac
computers). It is known for its elegant design, seamless integration with other Apple
products, and reliability.
3.2. Key Features:
User Interface: macOS is renowned for its sleek, minimalist graphical interface.
It uses the Finder as a file manager and offers smooth transitions and animations.
Integration with Apple Ecosystem: Seamless integration with other Apple
devices like iPhones, iPads, and Apple Watches. Features like Handoff and
AirDrop make transitioning between devices effortless.
Security: macOS is designed with security in mind, featuring Gatekeeper for
app security, FileVault for disk encryption, and regular security updates.
UNIX Foundation: Based on Darwin, a Unix-like foundation, which ensures
stability and security.
App Store: Provides a centralized location for downloading and managing
applications, with strict quality control from Apple.
Time Machine: Built-in backup solution that allows users to easily back up and
restore files or entire systems.
3.3. Editions:
macOS Home: The standard version for personal use, pre-installed on all Macs.
macOS Server (formerly): Apple used to offer a server version of macOS, but
most of its features have now been integrated into the standard macOS version
or are available as separate services.
3.4. Strengths:
User Experience: Highly polished, with a focus on ease of use and aesthetic
design.
Reliability: Known for long-term stability and excellent hardware-software
integration, as macOS runs only on Apple hardware.
Security: Fewer security vulnerabilities compared to Windows, thanks to Unix
architecture and stringent app store regulations.
Software for Creatives: macOS is favored by creative professionals, with
applications like Final Cut Pro (video editing) and Logic Pro (music production)
optimized for the platform.
3.5. Weaknesses:
Limited Hardware Choices: macOS is tied to Apple hardware, which can be
expensive and limits customization or hardware upgrades.
Software Compatibility: While macOS supports many popular applications,
some software (especially games) is better supported on Windows.
Customization: macOS offers less flexibility in terms of customization
compared to Linux.
3.6. Use Cases:
Ideal for creative professionals (video editing, music production, graphic
design), general users, those deeply invested in the Apple ecosystem, software
development (especially for iOS/macOS apps).
FOR UNDERSTANDING PURPOSE ONLY
Ms dos was fist os commercial
16 bit file application memory allocation all are dos base
Graphical interface use of cursor
32 bit os windows 95
OS FILE ALLOCATION TABLE(consider devices as diff ex driver) vs Linux
it consider it as a file
After FAT NTFS(New technology file system)windows server windows
vista
Process is program under execution
Single program multiple task getting executed is called as multitasking
Multiprocessing/Multitasking multiple program task getting executing.
Threat is nothing but path of execution in process.
2 contains while designing memory contain and time constrain ex flight
monitoring, ADAS ex of real time embedded system.
Real time embedded system.
Embedded hardware and software combination