Operating System
Operating System
1.Main-Memory Management
Memory is a large array of words or bytes, each with its own address. It is a repository of quickly
accessible data shared by the CPU and I/O devices. Main memory is a volatile storage device.
It loses its contents in the case of system failure. The operating system is responsible for the
following activities in connections with memory management:
Keep track of which parts of memory are currently being used and by whom.
Decide which processes to load when memory space becomes available.
Allocate and de-allocate memory space as needed.
2 File Management
A file is a collection of related information defined by its creator. Commonly, files represent
programs (both source and object forms) and data. The operating system is responsible for the
following activities in connections with file management:
✦ File creation and deletion.
✦ Directory creation and deletion.
✦ Support of primitives for manipulating files and directories.
✦ Mapping files onto secondary storage.
✦ File backup on stable (nonvolatile) storage media.
4 Secondary-Storage Management
Since main memory (primary storage) is volatile and too small to accommodate all data and
programs permanently, the computer system must provide secondary storage to back up main
memory. Most modern computer systems use disks as the principle on-line storage medium, for
both programs and data. The operating system is responsible for the following activities in
connection with disk management:
✦ Free space management
✦ Storage allocation
✦ Disk scheduling
6 Protection System
Protection refers to a mechanism for controlling access by programs, processes, or users to
both system and user resources. The protection mechanism must:
✦ distinguish between authorized and unauthorized usage.
✦ specify the controls to be imposed.
✦ provide a means of enforcement.
7 Command-Interpreter System
Many commands are given to the operating system by control statements which deal with:
✦ process creation and management
✦ I/O handling
✦ secondary-storage management
✦ main-memory management
✦ file-system access
✦ protection
✦ networking
The program that reads and interprets control statements is called variously:
✦ command-line interpreter
✦ shell (in UNIX) Its function is to get and execute the next command statement
This type of operating system does not interact with the computer directly. There is an operator
which takes similar jobs having the same requirements and groups them into batches. It is the
responsibility of the operator to sort jobs with similar needs. Batch Operating System is
designed to manage and execute a large number of jobs efficiently by processing them in
groups.
Multiprogramming Operating Systems can be simply illustrated as more than one program is
present in the main memory and any one of them can be kept in execution. This is basically
used for better utilization of resources.
Advantages of Multi-Programming Operating System
● There is not any facility for user interaction of system resources with the system.
Multi-Processing Operating System is a type of Operating System in which more than one CPU
is used for the execution of resources. It betters the throughput of the System.
● Due to the multiple CPU, it can be more complex and somehow difficult to
understand.
simultaneously.
Multitasking Operating System
Each task is given some time to execute so that all the tasks work smoothly. Each user gets the
time of the CPU as they use a single system. These systems are also known as Multitasking
Systems. The task can be from single user or different users also.
Time-Sharing OS
Advantages of Time-Sharing OS
Disadvantages of Time-Sharing OS
● Reliability problem.
● One must have to take care of the security and integrity of user programs and data.
● Security Risks: With multiple users sharing resources, the risk of security breaches
increases. Time-sharing systems require careful management of user access,
authentication, and authorization to ensure the security of data and software
Computer Network
Network Devices
Network Topology
The Network Topology is the layout arrangement of the different devices in a network. Some
types of network topologies are:
● Bus Topology: In bus topology all devices are connected to a single central cable
called a bus. Data is sent along this cable and all devices share the same
connection. Simple and cheap to set up but if the main cable fails the whole
network goes down.
● Star Topology: In star topology all devices are connected to a central node called
hub or switch. The hub controls the flow of data between devices. If one device fails
the rest of the network is unaffected. But, if the central hub fails the whole network
stops working.
● Ring Topology: In ring topology devices are connected in a circular loop with each
device connected to two others. Data travels in one direction (or sometimes both)
passing through each device until it reaches its destination. A failure in one device
can affect the whole network.
● Mesh Topology: In mesh topology every device is connected to every other device
in the network. It provides multiple paths for data so if one path fails another can
take over.
● Tree Topology: Tree topology is the combination of star and bus topology. Tree
topology is good for organizing large networks and allows for easy expansion.
● Hybrid Topology: Hybrid topology is the combination of two or more different
topologies (like star and mesh). It is flexible and can be customized based on the
network’s specific needs.
Network Topology
Network Security
Ensuring the security of a network is crucial to protect data and resources from unauthorized
access and attacks. Key aspects of network security include:
● Firewalls: Devices or software that monitor and control incoming and outgoing
network traffic based on security rules.
● Encryption: The process of encoding data to prevent unauthorized access.
Commonly used in VPNs, HTTPS, and secure email.
● Intrusion Detection Systems (IDS): Tools that monitor network traffic for
suspicious activity and potential threats.
● Access Control: Mechanisms that restrict access to network resources based on
user identity and role.
● Regular Updates and Patching: Keeping software and hardware up to date to
protect against vulnerabilities.
Why Use Computer Networks?
Computer network play a important role in modern life. Here are some key benefits of
computer networks: