Software
Software
1. System Software
2. Application Software
3. Utility Software
System Software: The system software is a collection of programs designed
to operate, control, and extend the processing capabilities of the computer
itself. System software is generally prepared by the computer manufacturers.
System software serves as the interface between the hardware and the end
users. Some examples of system software are Operating System, Compilers,
Interpreter, Assemblers, etc.
Operating System: It is a collection of software that handles resources and
provides general services for the other applications that run over them. As an
OS essentially determines how a user interacts with the system, therefore
many users prefer to use one specific OS for their device. There are various
types of operating system such as real-time, embedded, distributed, multiuser,
single-user, internet, mobile, and many more. It is important to consider the
hardware specifications before choosing an operating system.
Some examples of Operating systems given below:
Android, iOS, Linux, Mac OS, MS Windows, Ubuntu, Unix
Application software
Application software (app), is software that performs specific tasks for an end-
user. An application program is a computer program designed to carry out a
specific task other than one relating to the operation of the computer itself,
typically to be used by end-users. It can be divided into two types
1. The General-Purpose Application Software: These are the types of
application software that comes in-built and ready to use, manufactured by
some company or someone.
For e.g: Microsoft Excel – Used to prepare excel sheets, VLC Media
Player – Used to play audio/video files, Adobe Photoshop – Used for
designing and animation and many more.
2. The Specific Purpose Application Software: These are the type of
software that is customizable and mostly used in real-time or business
environment.
For e.g: Ticket Reservation System, Healthcare Management System, Hotel
Management System, Payroll Management System.
Operating System
An operating system is a program that acts as an interface between the user and
the computer hardware and controls the execution of all kinds of programs.
Advantage of Operating System
• Allows you to hide details of hardware by creating an abstraction
• Easy to use with a GUI
• Offers an environment in which a user may execute programs/applications
• The operating system must make sure that the computer system convenient
to use
• Operating System acts as an intermediary among applications and the
hardware components
• It provides the computer system resources with easy to use format
• Acts as an intermediator between all hardware’s and software’s of the
system
Disadvantages of Operating System
• If any issue occurs in OS, you may lose all the contents which have been
stored in your system
• Operating system’s software is quite expensive for small size organization
which adds burden on them. Example Windows
• It is never entirely secure as a threat can occur at any time
1. Memory Management
Any task or program before execution is loaded into the primary memory.
However, the primary or main memory of the computer system is very limited.
Therefore, it is one of the main functions of the operating system to allocate the
memory to programs.
It regulates the main memory by keeping track of memory bytes used by every
process. Other than that, the OS also determines the order and amount of
memory allocated to different tasks or processes.
2. Processor Management
In a computer system, various tasks are performed at the same time. The role of
an operating system is to manage all the processes (tasks in execution). The OS
decides which process gets access to the processing and how much time is
required.
Thus, OS schedules and keeps track of the processes. Since the CPU is the
control unit of the computer system, allocating it to different processes is one of
the most crucial functions that operating systems perform.
3. Device Management
A computer system has various input and output devices that interact together to
perform the task. Now, the basic function of an operating system is to manage
the hardware and I/O devices. The OS interrelates with its software program and
device driver for any device.
The operating system allocates the program related to the driver and also keeps
track of all devices. Thus, the OS communicates with the devices to allow them
to perform any task.
4. File Management
All data, programs, and information are saved as files in the secondary storage
unit of the computer. The operating system manages these files from creation,
deletion, and security. The OS maintains complete track of where the files are
stored, their status, and access.
5. Error Handling
The operating system needs to be detecting and correcting errors constantly.
Errors may occur in the CPU and memory hardware (for eg. a memory error or a
power failure), in I/O devices (such as a parity error on disk, a connection failure
on a network, or a lack of paper in the printer), and in the user program (an
arithmetic overflow, an attempt to access an illegal memory location or a too-
great use of CPU time). For each type of error, the operating system should take
the appropriate action to ensure correct and consistent computing.
6. User Interface
Operating systems provide a user interface (UI), which can be graphical (GUI) or
command-line (CLI). This interface allows users to interact with the computer
system, execute programs, manage files, and perform various tasks efficiently.
7. Network Management
Network management refers to administering, monitoring, and optimizing
computer networks to ensure efficient and secure operation. It involves processes,
tools, and methodologies to maintain the network’s performance, reliability, and
security. Network management tasks can vary depending on the size and
complexity of the network, ranging from small local area networks (LANs) to
large-scale wide area networks (WANs) and data centers.
8. I/O Management
I/O management is the important function of operating system refers to how the
OS handles input and output operations between the computer and external
devices, such as keyboards, mice, printers, hard drives, and monitors.
9. Deadlock: Deadlocks are a set of blocked processes each holding a resource
and waiting to acquire a resource held by another process. Deadlock is a
situation in which, neither the processing task of CPU is completed nor the
CPU is released to execute other task. In this case, CPU remains in idle state.
OS is responsible to prevent the deadlock to occur. However, if deadlock
occurs, OS detects and recovers from the dead lock.
10.Virtual Storage
Virtual memory is a method that computers use to manage storage space to keep
systems running quickly and efficiently. Using the technique, operating
systems can transfer data between different types of storage, such as random
access memory (RAM), also known as main memory, and hard drive or solid-
state disk storage. At any particular time, the computer only needs
enough active memory to support active processes. The system can move those
that are dormant into virtual memory until needed.
Paging is a virtual memory technique that separates memory into sections called
paging files. When a computer reaches its RAM limits, it transfers any currently
unused pages into the part of its hard drive used for virtual memory. The
computer performs this process using a swap file, a designated space within its
hard drive for extending the virtual memory of the computer's RAM. By moving
unused files into its hard drive, the computer frees its RAM space for other
memory tasks and ensures that it doesn't run out of real memory.
2. Segmenting