0% found this document useful (0 votes)
20 views

Computer Software & Others

Uploaded by

himelranasweet
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
20 views

Computer Software & Others

Uploaded by

himelranasweet
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 79

Computer Software

Click to add Text


Computer Software
 All computer systems consist of two major
components, namely, hardware and software.
 The hardware refers to the physical equipments
that are necessary for performing various
operations, such as reading and processing data,
storing results and providing output to the users
in a desired form.
 The software refers to a set of computer
programs that are required to enable the
hardware to work and perform these operations
effectively.
Computer Software
 A computer program is basically a set of
logical instructions, written in a computer
programming language that tells the computer
how to accomplish a task. The software is
therefore an essential interface between the
hardware and the user.
 We can say that software gives life to the
hardware and therefore, the software is
popularly referred to as the “soul” of the
computer system while the hardware as the
“heart”.
Types of Computer
Software
A computer software performs two distinctive tasks:
(1) The first task is to control and coordinate the
hardware components and manage their performances
(2) The second one is to enable the users to accomplish
their required tasks.
 The software that is used to achieve the first task is

known as the system software and the software that


is used to achieve the second task is known as the
application software.
 While the system software is essential for a computer

to work, the application software is the additional


software required for the user to perform a specific job.
Types of Computer
Software
 The system software not only
controls the hardware functions Users
but also enables the hardware
to interact with the application Application Software
software as well as the users.
System Software

Hardware

Layers of software and their


interactions
Types of Computer
Software
 System software consists of many different
programs that manage and support different
tasks. Depending upon the task performed, the
system software can be classified into two
major groups:

 System management programs used for


managing both the hardware and software
systems
 System development programs used for
developing and executing application software
Types of Computer
Software
 Application software includes a variety of
programs that are designed to meet the
information processing needs of end users.
They can be broadly classified into two groups:

 Standard application programs that are


designed for performing common application
jobs.
 Unique application programs that are
developed by the users themselves to support
their specific needs.
Types of Computer
Software
Compute
r
Software

System Application
Software Software

System System Standard Unique


Managemen Developme Application Application
t Programs nt Programs Programs Programs

Major categories of computer software


System Management
Programs
 System management programs are those programs
that are meant for operating the hardware system and
managing their resources effectively. They also enable the
users to perform certain utility functions, such as creating
backup files, recovering damaged files and merging files.
They minimize the human intervention during processing
and aid in maximizing the productivity of a computer
system. System management programs include:
Devic Utility
e Programs
 Operating system Driver
 Utility programs s
Hardwar
 Device drivers e

Operating
System
These programs work in
close interaction with each
other.
Operating System
 Operating System (OS) is the principal component
of system software and is responsible for overall
management of computer resources. It also provides
an interface between the computer and the user and
helps in implementing the application programs.
Major functions of an operating system are:

 Scheduling and execution of all processes


 Allocation and management of main memory and
other storage areas to the programs
 Coordination and assignment of different hardware
devices to the programs
 Creation, storage and manipulation of files required
by the various processes
Operating System
 Determining and maintaining the order of
execution of programs
 Interpretation of commands and instructions
 Coordination and assignment of other
development and utility programs
 Providing a friendly interface between the
computer and the user
 Ensuring security of access to computer resources

 Operating systems are usually supplied by the


hardware manufacturers and are rarely developed
by the users due to its technical complexity.
Utility Programs
 Utility programs refer to small programs, which provide
additional capabilities of the computer system in addition to
the ones provided by the operating system. They enable an
operating system to perform some additional tasks, such as
searching and printing the files and scanning the viruses, etc.
A utility program is not an essential part of an operating
system, because it does not help the operating system in the
execution of a command or a program. A utility program only
provides the additional features to the computer system. In
other words, an operating system can execute most of the
programs without having the utility programs. Utility
programs are added to an operating system to perform many
different tasks, that include:
 Search and replace. It enables the operating system to
search a file on the basis of the specified search criteria.
 Print. It enables an operating system to initiate the print
operation of the printer connected with the computer system.
Utility Programs
 Disk defragmenter. It helps in defragmenting the memory
space. Defragmentation is the process of storing the data at a
single place in the memory instead of disjointed memory
locations.
 System profiler. It provides the information related to the
various hardware and software components installed in the
computer system. In other words, it provides a list of the
hardware components, which are presently connected with the
computer system and the software components, which are
currently installed in the computer system.
 Encryption. It enables the operating system to generate the
encrypted format of the messages of the files, which have to
be transmitted from one system to another system over the
network of the Internet.
 Virus scanner. It enables the operating system to detect
viruses and bugs, which may affect the correct functioning of
the computer system.
Utility Programs
 Backup. It enables the creation of a copy of various files
and folders on a secondary medium such as magnetic disk
and magnetic tape, in order to keep the original data safe.
 Data recovery. It enables the retrieval of lost data from a
corrupted or damaged primary storage medium.

Like operating systems, utility programs are prewritten


by manufacturers and supplied with the hardware. They
may also be obtained from standard software vendors.
Device Drivers
 A computer system is connected with multiple input and
output (I/O) devices, so that it can communicate with the end
use.
 In order to interact with the I/O devices, the computer
system requires special software called device driver.
 The device driver acts as a translator between the I/O
devices and the computer. A device driver of the input device
interprets the input provided by the user into the computer
understandable form and directs it to the operating system.
 Similarly, the device drivers of the output devices translate
the output generated by the computer into the user
understandable format and display it on the screen.
 In other words, a device driver is special software that
enables a hardware device, such as keyboard, monitor and
printer to perform an operation according to the command
given by the end user.
System Development
Programs
 System development programs known as
programming software allow the users to develop
programs in different programming languages. The
process of developing and executing a program
involves the following tasks:

• Debugging the program


• Linking the various variables and objects with the
libraries files
• Translating the code from one language to another
• Running the machine code to perform the desired
task
Standard Application
Programs
 Standard application programs, also known as
general-purpose application programs, are programs
that perform certain common information processing
tasks for the users. For example, preparing
documents such as letters and notes are common
among almost all organizations as well as individuals.
Examples of standard application programs include:

• Word processor
• Spreadsheet
• Database Manager
• Web Browser
Unique Application
Programs
 There are situations where organizations need
to develop their own programs to accomplish
certain tasks that are unique to their areas of
operations. Similarly, individuals like scientists,
engineers, accountants, teacher and other
professionals write their own programs to solve
their problems. Such programs are known as
unique application programs or
application-specific programs. These
programs are also referred to as end-user
application programs.
Unique Application
Programs
 Examples of unique applications include:

• Managing the inventory of a store


• Preparing pay-bills of employees in an organization
• Processing examination results of students
• Reserving seats in trains or airlines
• Analyzing mathematical models
• Computing person income tax

 These programs are usually developed in one of the


high-level languages, such as C, C++, or Java and
therefore, developing such programs in-house would
require skilled programmers with deep knowledge not
only in programming languages but also in
programming environment.
Problem Solving
 Problems that can be solved through a
computer may range in size and complexity.
Since computers do not possess any common
sense and cannot make any unplanned
decisions, the problem, whether it is simple or
complex, has to be broken into a well-defined
set of solution steps for the computer to
implement.
 Problem solving is the process of solving a
problem in a computer system by following a
sequence of steps. The major steps that we
need to follow for solving a problem are:
Problem Solving
• Preparing hierarchy chart: A hierarchy chart
shows the top-down solution of a problem.
• Developing algorithm: An algorithm is a sequence
of steps written in the form of English phrases that
specify the tasks that are performed while solving a
problem.
• Drawing flowchart: A flowchart is the graphical
representation of the flow of control and logic in the
solution of a problem.
• Writing Pseudocode: Pseudocode is pretty much
similar to algorithms. It uses generic syntax for
describing the steps that are to be performed for
solving a problem.
Hierarchy Chart
 Hierarchy chart is a solution approach that
suggests a top-down solution of a problem. We very
often come across large problems to be solved
using computers. It may be very difficult to
comprehend the solution steps of such large
problems at one go. In such situations, we can
decompose the problem into several parts, each
representing a small task which is easily
comprehensible and solvable. We can then prepare
solution steps for each task independently and
later combine them into one large solution
algorithm.
Hierarchy Chart
Pay-roll
Problem

Compute Compute Compute


Gross Deductions Net Pay
Pay

Compute Compute
Tax Loans
Algorithms
 Algorithms help a programmer in breaking down the solution
of a problem into a number of sequential steps. Corresponding
to each step a statement is written in a programming language;
all these statements are collectively termed as a program.

Algorithm to add two integers and display the result


Step 1 – Accept the first integer as input from the user.
(integer1)
Step 2 – Accept the second integer as input from the user.
(integer2)
Step 3 – Calculate the sum of the two integers.
(integer3=interger1+integer2)
Step 4 – Display integer3 as the result.
Flowcharts
 A flowchart can be defined as the pictorial
representation of a process, which describes the
sequence and flow of the control and information
in a process. The flow of information is
represented in a flowchart in a step-by-step form.

 Flowchart uses different symbols for depicting


different activities, which are performed at
different stages of a process. The various
symbols used in a flowchart are as follows:
Flowcharts
 Start and end: It is represented by an oval or
a rounded rectangle in a flowchart. It is used to
represent the starting and the ending of a
process. Every process starts and ends at
some point so a flowchart always contains one
start as well as one end point.
Flowcharts
 Input or output: It is represented by a
parallelogram in a flow chart. It is used to represent
the inputs given by the user to the process and the
outputs given by the process to the user.
Flowcharts
 Action or process: It is represented by a
rectangle. It represents the actions, logics and
calculations taking place in a process.
Flowcharts
 Decision or condition: It is represented by a
diamond shape in a flowchart. It represents the
condition or the decision-making step in the
flowchart. The result of the decision is a Boolean
value, which is either true or false. Each of these
values takes the flow of the program to a certain
point, which is shown with the help of arrows.
Flowcharts
 Arrow: It is represented by a directed line in a
flowchart. It represents the flow of process and
the sequence of steps in the flow chart. It
guides the process about the direction and the
sequence, which is to be followed while
performing the various steps in the process.
Flowcharts
 Connector: It is represented by a circle in a
flowchart. It represents the continuation of the
flow of steps when a flowchart continues to the
next page. A character, such as an alphabet (a
to z) can be placed in the circle at the position
where the flow is broken and the same
character is also placed in the circle at the
position form where the flowchart continues.
Flowcharts
Start

Num1=value
1Num2=valu
e2

Result=Num1+Num
2

Display
(Result)

Stop
Pseudocodes
 Analyzing a detailed algorithm before developing a
program is very time consuming. Hence, there arises
a need of a specification that only focuses on the
logic of the program. Pseudocodes serve this
purpose by specifying only the logic, which is used by
the programmer for developing a computer program.
 Pseudocode is not written using specific syntax of a
programming language rather its is written with a
combination of genetic syntax and normal English
language. It helps the programmer understand the
basic logic of the program after which it is the
programmer’s choice to write the final code in any
programming language.
Pseudocodes
A pseudocode to add two numbers and
display the result
Define: Integer num1, num2, result.
Input: Integer num1.
Input: Integer num2.
Sum: result=num1+num2.
Output: Display (result).
Structuring the Logic
 The basic structure of a program comprises of
different sets of the statements, whose
execution is dependent on some conditions
and decisions. These conditions and decision-
making statements are specified in a control
structure. Depending upon the sequence of
the execution of the statements, the control
structures are categorized into the following
types:
Structuring the Logic
 Sequence structure: The execution of the statements
in a sequence structure is done sequentially, i.e., all the
statements are executed in the same order as they are
written in the program.
 Selection structure: In the selection structure, two sets
of statement blocks are written in a program along with
one or more conditions. The execution of a particular
blocks’ statements occurs only if the conditional
statement specified at the beginning of the block is true.
 Repetition structure: In the repetition structure, a
block of two or more instructions is specified along with
the conditional statement. The execution of these
instructions is repeated many times if the conditional
statement is true.
Using the Computer
 Whenever a user wants to use a computer for
solving a problem, he/she has to perform various
interrelated tasks in a systematic manner.
 A user can not get the solution of a problem by
simply providing input to the computer without
preparing the base for solving the problem.
 The working process of a computer is similar to
the human mind, which first analyses the
complete situation of a problem, its causes and
its parameters, and then decides the way to solve
the problem on the basis of available parameters.
Using the Computer
 All the activities, which have to be performed
by a user in order to solve a problem using
computer, are grouped into three phases:

• Understanding the problem


• Developing a program
• Executing the program
Operating Systems

Click to add Text


Operating Systems
 An operating system (OS) is a software that makes
the computer hardware to work. While the hardware
provides ‘raw computer power’, the OS is responsible
for making the computer power useful for the users.
The OS is the main component of system software
and therefore must be loaded and activated before
we can accomplish any other task.

 The operating system provides an interface for users


to communicate with the computer. It also manages
the use of hardware resources and enables proper
implementation of application programs. In short, the
operating system is the master control program of a
computer. The main functions include:
Operating Systems
 Operates CPU of the computer
 Controls input/output devices that provide the interface
between the user and the computer
 Handles the working of application programs with the
hardware and other software systems
 Manages the storage and retrieval of information using
storage devices such disks

 There are many operating systems developed during


the last few decades but the popular among them are
MS-DOS, Windows 2000, Windows XP, Windows Server
2003, UNIX and Linux.
Functions of Operating
Systems
 The main function of an operating system is to
manage the resources such as memory and files
of a computer system.
 The operating system also resolves the conflicts
that arise when two users or programs request
the same resource at the same time.
 The currently used operating systems such as
Windows 2000, Windows Server 2003 and Linux
also support networking that allows the sharing
of files and resources such as printer and
scanner. The following are some of the important
functions of an operating system:
The Three Elements of an OS

User Interface – The part of the OS


that you interface with.
Kernel – The core of the OS. Interacts
with the BIOS (at one end), and the UI
(at the other end).
File Management System – Organizes
and manages files.
Operating System Types

Multiuser – Two or more users work with


the computer at the same time
Multitasking – Two or more processes
running at the same time.
Multithreading – Two or more parts of the
same process running at the same time.
PC Operating Systems

Microsoft Windows
MacIntosh OS
Linux
MS Windows Versions
 Home (Non-Professional) Versions
• Windows 95
• Windows 98
• Windows Me
 Professional (Business) Versions
• Windows NT
• Windows 2000
 The Two Lines Came Together in Windows XP (2001)
Disk Operating System
( DOS )

The first PC Operating System (1981)


Not a Multitasking OS, only one program could
run at a time
A command-line interface, no GUI.
Early versions of Windows sat on top of DOS
and used it to communicate with the BIOS.
Windows XP communicates directly with the
BIOS, but allows commands to be entered via a
command prompt.
Functions of Operating
Systems
 Process management
 Memory management
 File management
 Device management
 Security management
Process Management
 Process management manages the processes running in a
computer system. A process is basically a program that is
being currently run by a user on a computer system. For
example, a word processor application program such as
Microsoft Word runs as a process in a computer system.
 Process management involves the execution of various tasks
such as creation of processes, scheduling of process,
management of deadlocks and termination of processes.
 When a process runs in a computer system, a number of
resources such as memory and CPU of the computer system
are utilized. It is the responsibility of an operating system to
manage the running processes by performing tasks such as
resource allocation and process scheduling. The operating
system also has to synchronize the different processes
effectively in order to ensure consistency of shared data.
Process Management
 Generally, only a single process is allowed to access the
CPU for its execution at a particular instant of time. When
one process is being processed by the CPU, the other
processes have to wait until the execution of that
particular process is complete.

 After the CPU completes the execution of a process, the


resources being utilized by that process are made free
and the execution of the next process is initialized.

 All the processes that are waiting to be executed are said


to be in a queue. In some cases, a computer system
supports parallel processing allowing a number of
processes to be executed simultaneously.
Process Management
 There are a number of concepts associated
with the process management function of an
operating system:

 Process state
 Process Control Block (PCB)
 Process operations
 Process scheduling
 Process synchronization
 Interprocess communication
 Deadlock
Process State
 A process state can be defined as the
condition of a process at a particular instant New
of time. There are basically seven states of a
process:
 New: It specifies the time when a process is Ready
created.
 Ready: It specifies the time when a process
is loaded into the memory and is ready for Waiting
execution.
 Waiting: It specifies the time when a
process waits for the allocation of CPU time
and other resources for its execution. Executin
 Executing: It is the time when a process is g
being executed by the CPU.
 Blocked: It specifies the time when a Blocked Suspende
process is waiting for an event like I/O d
operation to complete.
 Suspended: It specifies the time when a
process is ready for execution but has not Terminate
been placed in the ready queue by the d
operating system.
 Terminated: It specifies the time when a
Process Control Block
 Process Control Block (PCB) is a data structure associated
with a process that provides complete information about the
process. PCB comprises of the following:

• Process id: It is an identification number that uniquely


identifies a process
• Process state: It refers to the state of a process such as
ready and executing
• Program counter: It points to the address of the next
instruction to be executed in a process
• Register information: It comprises of the various registers,
such index and stack that are associated with a process
• Scheduling information: It specifies the priority information
pertaining to a process that is required for process scheduling
Process Control Block
• Memory related Process id
information: This section of Process state
the PCB comprises of page and
Program counter
segment tables
• Accounting information: This Register information
section of the PCB stores the Scheduling information
details relate to CPU utilization
and execution time of a process Memory related information
• Status information related Accounting information
to I/O: This section of the PCB
Status information related to
stores the details pertaining to
I/O
resource utilization and the files
opened during process The operating system
execution. maintains a table called
process table, which stores
the PCBs related to all the
processes.
Process Operations
 The process operations carried out by an
operating system are primarily of two types, process
creation and process termination:
• Process creation is the task of creating a new
process, and is very common in a running computer
system because corresponding to every task that is
performed. For instance, a new process is created
every time a user logs on to a computer system, an
application program such as MS Word is initiated, or
when a document is printed.
• Process termination is an operation in which a
process is terminated after it has executed its last
instruction.
Process Scheduling
 Process Scheduling is the task performed by an
operating system for deciding the priority in which the
processes, which are in ready and waiting states, are
allocated the CPU time for their execution.
 Process scheduling ensures maximum utilization of CPU
because a process is always running at a specific instant
of time.
 At first, the processes that are to be executed are placed
in a a queue called job queue.
 The processes, which are present in the main memory
and are ready for CPU allocation, are placed in a queue
called ready queue.
 If a process is waiting for an I/O device then that process
is placed in a queue called device queue.
Process Scheduling
 An operating system uses a program called
scheduler for deciding the priority in which a
process is allocated the CPU time. Scheduler is of
three types:

• Long term scheduler: It selects the processes


that are to be placed in the ready queue. The
long term scheduler basically decided the priority
in which processes must be placed in the
memory.
Process Scheduling
• Mid term scheduler: It places the blocked or
suspended processes in the secondary memory of a
computer system. The task of moving a process from
the main memory to secondary memory is referred as
swapping out. The task of moving back a swapped-out
process from the secondary memory to the main
memory is referred as swapping in. The swapping of
processes is performed to ensure the best utilization
of main memory.
• Short term scheduler: It decides the priority in
which processes in the ready queue are allocated the
CPU time for their execution. The short term scheduler
is also referred as CPU scheduler.
Process
Synchronization
 Process synchronization is the task of
synchronizing the execution of processes in such a
manner that no two processes have access to the
same shared data or resource.
 When multiple processes are concurrently running,
then they may attempt to gain access to the same
shared data or resource. This can lead to
inconsistency in the shared data as the changes
made by one process in the shared data may not
be reflected when another process accesses the
same shared data. In order to avoid such
inconsistency of data, it is important that the
processes are synchronized with each other.
Interprocess
Communication
 Interprocess communication is the method of
communication between processes through which
processes interact with each other for gaining access to
shared data and resources. There are two methods of
interprocess communication:
• Shared memory: a part
P1
of memory is shared Writes data
between the processes. A Shared memory
Read
process can write the data P2 data
that is wants to share with
other processes in to the
memory. Similarly, another
Kernel
process can read the data
that has been written by
another process.
Interprocess
Communication
• Message passing:
a process sends a
message to another P1
process for P2
Messag
communication. e
Message passed
This method allows sent
the sharing of data
between processes Kernel
in the form of
messages.
Deadlock
 Deadlock is a condition that occurs when multiple
processes wait for each other to free up resources and
as a result all the processes remain halted.
 Example: Suppose there are two processes P1 and P2
running in a computer system. P1 requests for a
resource, such as printer that is being utilized by the P2
process. As a result, the P1 process has to wait till the
time P2 completes its processing and frees the resource.
At the same time, the P2 process requests for a
resource, such as shared data that has been locked by
the process P1. Thus, both the processes end up waiting
for each other to free up the required resources. This
situation is called a deadlock.
Deadlock
 There are a number of methods through which the deadlock
condition can be avoided. Some of these methods are:

• Ignore deadlock: It is assumed that a deadlock would never


occur. There is a good chance that a deadlock may occur in a
computer system for a long period of time. As a result, the
ignore deadlock method can be useful in some cases.
• Detect and recover from deadlock: The deadlock is first
detected using allocation/request graph. This graph
represents the allocation of resources to different process.
• Avoid deadlock: A process requesting a resource is
allocated the resource only if there is no possibility of
deadlock occurrence.
Memory Management
 Memory management: It manages the memory
resources of a computer system. There are various
memory resources of a computer system including
primary memory or Random Access Memory (RAM) and
secondary memory like hard disk and Compact Disk
(CD). All the programs are loaded in the main memory
before their execution. It is the function of the operating
system to determine how much memory should be
provided to each process.

 Memory management is one of the most important


functions of operating system because it directly affects
the execution time of a process. An effect memory
management system must ensure the following:
Memory Management
• Correct relocation of data: The data should be relocated
to and from the main memory in such a manner that the
currently running processes are not affected. For example, if
two processes are sharing a piece of data then the memory
management system must relocate this data only after
ensuring that the two processes are no longer referencing
the data.

• Protection of data from illegal change: The data


present in the main memory should be protected against
unauthorized access or modifications. The memory
management system should ensure that a process is able to
access only that data for which its has the requisite access
and it should be prohibited from accessing data of other
processes.
Memory Management
• Provision to share the information: An ideal
memory management system must facilitate sharing of
data among multiple processes.

• Utilization of small free spaces: A memory


management system should be able to apply
appropriate defragmentation techniques in order to
utilize small chunks of scattered vacant spaces in the
main memory.
Memory Management
 Segmentation, paging and swapping are the three key memory
management techniques used by an operating system:

 Segmentation refers to the technique of dividing the physical


memory space into multiple blocks. Each block has a specific
length and is known as a segment. Each segment has a starting
address called the base address. The length of a segment
determines the available memory spaces in the segment.

 Paging is a technique in which the main memory of the


computer system is organized in the form of equal sized blocks
called pages. In this technique, the addresses of the occupied
pages of the physical memory are stored in a stable, which is
known as page table.
Memory Management
 Swapping is a technique used by an operating system for
efficient management of memory space of a computer
system.
 Swapping involves performing two tasks called swapping in
and swapping out.
 The task of placing the pages or blocks of data from hard
disk to the main memory is called swapping in.
 On the other hand, the task of removing pages or blocks of
data from main memory to hard disk is called swapping
out.
 The swapping technique is useful when a large program has
to be executed or some operations have to be performed
on a large file.
File Management
 File management is defined as the process of
manipulating files in a computer system.

 A file can be defined as a collection of specific


information stored in the memory of the
computer system. Every file has a unique name
associated with it.

 File management includes the process of


creating, modifying and deleting the files.

 The following are some of the tasks performed


by the file management function of operating
system:
File Management
 It helps in creating new files and placing them at a
specific location

 It helps in easily and quickly locating the files in the


computer system

 It makes the process of sharing the files among different


users easy

 It helps store the files in separate folders known as


directories that ensure better organization of data

 It helps modify the content as well as the name of the


file as per the user’s requirement
File Management
Root
directory

Directory Directory Directory


1 2 3

Sub-
File 1 directory File 2

File 3 File 4

The general hierarchy of file storage in an operating


File Management
 The root directory is present at the highest level
in the hierarchical structure. It includes all the
subdirectories in which the files are stored.
Subdirectory is a directory present inside
another directory in the file storage system.

 The directory based storage system ensures


better organization of files in the memory of the
computer system. The file management function
of OS is based on the following concepts:
File Attributes
 File attributes are the properties associated with a file that specify
different information related to a file, such as
• Name: It specifies the name of a file given by the user at the time of
saving it
• File type: It specifies the type of a file such as a Word document for an
Excel worksheet
• Location: It specifies the location of a file where it is stored in the memory
• Size: It specifies the size of the file in byes
• Data and time: It specifies the data and time when the file was created,
last modified and last accessed
• Read-only: It specifies that the file can be opened only for reading
purpose
• Hidden: If this attribute of a file is selected, then the file is hidden from the
user
• Archive: If this attribute of a file is selected, then the back up of a file is
created.
File Operations
 File operations are the various tasks that are performed on
files. A user can perform these operations by using the
commands provided by the operating system. The following are
some of the typical file operations:
• Creating: It helps in creating a new file at the specified location
in a computer system
• Saving: It helps in saving the content written in a file at some
specified location
• Opening: It helps in viewing the contents of an existing file
• Modifying: It helps in changing the existing content or adding
new to an existing file
• Closing: It helps in closing an already open file
• Renaming: It helps in changing the name of an existing file
• Deleting: It helps in removing a file from the memory of the
computer system
File Access Permissions
 File access permissions help specify the
manner in which a user can access a file.
These are the access rights that allow us to
read, write or execute a file.
• Read: It allows a user to only read the content
of an existing file
• Write: It allows a user to only modify the
content of an existing file
• Execute: It allows a user to run an existing file
stored in the computer system
File Systems
 File systems are used by an operating system to
store and organize the various files and their
information on a hard disk. The following are the two
different file systems that are used to organize files in
a computer system:
 File Allocation Table (FAT): It is a method used for
organizing the files and folders in the form of a table.
This type of system is used for disks that are smaller
in size and contain simple folders.
 New Technology File System (NTFS): This file
system is specifically designed for large hard disks for
performing basic file operations, such as read, writing,
modifying , saving, etc., quickly and efficiently.
Device Management
 Device management: This function of operating system
deals with the management of peripheral devices, such as
printer, mouse and keyboard attached to a computer system.

 An operating system interacts with the hardware devices


through specific device drivers. The primary task of an
operating system is to manage the input/output operations
performed by the end users.

 It is the responsibility of the operating system to keep a track


of the status of all the devices in the computer system.

 The status of any computer device, internal or external, may


be either free or busy. It a device requested by process is free
at a specific instant of time, the operating system allocates it
to the process.
Security Management
 Security management ensures security for a computer
system from various threats such as virus attacks and
unauthorized access. An operating system uses various
techniques, such as authentication, authorization,
cryptography, etc for ensuring security of a computer
system. An operating system is responsible for securing
the system at two different levels:

 Internal security refers to the protection of activities of


one process from the activities of another process. The
internal security of the computer system also ensures the
reliability of the computer system. There may be a
number of processes running in the computer system
concurrently. It is the responsibility of the OS to make
sure that only one process at a time has access to a
particular resource of the computer system.
Security Management
 External security refers to the implementation of
mechanisms for securing the data and programs stored
in computer system as well as the various resources of
the computer system against unauthorized access.
External security is particularly required when a
computer system is either on a network or connected to
the Internet.

You might also like