Computer Software Unit-2
Computer Software Unit-2
What is Software?
For example, without your Internet browser software, you could not
surf the Internet or read this page. Without an operating system, the
browser could not run on your computer. TheMicrosoft Excel box, an
example of a spreadsheet software program.
Types of Software:
1.System Software
:
•Payroll Software
•Student Record Software
•Inventory Management Software
•Income Tax Software
•Railways Reservation Software
•Microsoft Office Suite Software
•Microsoft Word
•Microsoft Excel
•Microsoft PowerPoint
Features of application software are as follows:
(ii) Access to the compiler for translating the user program from high
level language to machine language.
1. Booting
►Booting is a process of starting the computer operating system starts the
computer to work. It checks the computer and makes it ready to work.
2. Memory Management
►Itis also an important function of operating system. The memory cannot
be managed without operating system. Different programs and data
execute in memory at one time. if there is no operating system, the
programs may mix with each other. The system will not work properly.
3. Loading and Execution
►A program is loaded in the memory before it can be executed. Operating system
provides the facility to load programs in memory easily and then execute it.
4. Data Security
►Data is an important part of computer system. The operating system protects the
data stored on the computer from illegal use, modification or deletion.
5. Disk Management
►Operating system manages the disk space. It manages the stored files and
folders in a proper way.
6. Process Management
CPU can perform one task at one time. if there are many
tasks, operating system decides which task should get the CPU.
7. Device Controlling
Operating system also controls all devices attached to computer.
The hardware devices are controlled with the help of small software
called device drivers.
8. Printing Controlling
Operating system also controls printing function.
If a user issues two print commands at a time,
it does not mix data of these files and prints them separately.
9. Providing Interface
It is used in order that user interface acts with a computer mutually.
User interface controls how you input data and instruction and
how information is displayed on screen.
The operating system offers two types of the interface to the user;
(i) Graphical-line interface: It interacts with of visual environment
to communicate with the computer. It uses windows, icons,
menus and other graphical objects to issues commands.
(ii) Command-line interface: It provides an interface to communicate
with the computer by typing commands.
Types of Operating Systems:
1. Batch Operating System
►This type of operating system does not interact with the computer directly. There is an
operator which takes similar jobs having same requirement and group them into batches.
It is the responsibility of operator to sort the jobs with similar needs.
► Advantages of Batch Operating System:
∙ Multiple users can share the batch systems
∙ The idle time for batch system is very less
∙ It is easy to manage large work repeatedly in batch systems
► Disadvantages of Batch Operating System:
∙ The computer operators should be well known with batch systems
∙ Batch systems are hard to debug
∙ It is sometime costly
∙ Examples of Batch based Operating System:- Payroll System, Bank Statements etc.
2. Time-Sharing Operating Systems
►Each task is given some time to execute, so that all the tasks work smoothly.
Each user gets time of CPU as they use single system. These systems are also
known as Multitasking Systems. The task can be from single user or from
different users also. The time that each task gets to execute is called quantum.
After this time interval is over OS switches over to next task.
► Advantages of Time-Sharing OS:
∙ Each task gets an equal opportunity
∙ Less chances of duplication of software
∙ CPU idle time can be reduced
► Disadvantages of Time-Sharing OS:
∙ Reliability problem
∙ One must have to take care of security and integrity of user programs and data
∙ Data communication problem
► Examples of Time-Sharing OSs are: Multics, Unix etc.
3. Distributed Operating System
►These types of operating system is a recent advancement in the world of computer
technology and are being widely accepted all-over the world and, that too, with a great
pace. Various autonomous interconnected computers communicate each other using a
shared communication network. Independent systems possess their own memory unit and
CPU. These are referred as loosely coupled systems or distributed systems. These system’s
processors differ in size and function. The major benefit of working with these types of
operating system is that it is always possible that one user can access the files or software
which are not actually present on his system but on some other system connected within
this network i.e., remote access is enabled within the devices connected in that network.
What is Booting?
► When we power on our computer, the devices receive power and are initialized.
At this stage, the primary memory, or RAM, is empty. To kickstart the system, a
small set of instructions stored in the read-only memory (ROM) is sent to the
central processing unit (CPU) for execution. These instructions help inspect the
hardware components and identify any potential issues. If hardware problems
exist, a beep or on-screen notifications alert us.
► Once the hardware inspection is complete, the booting in the operating system
process begins. The operating system is loaded, allowing the computer to
function properly and accept user commands. It is important to note that the
booting process in OS is essential for adequately operating the computer and
the execution of various software applications.
Types of Booting in Operating System
► 1. Cold Booting
Cold booting refers to starting up a computer for the first time or after it has been
shut down completely. When we press the power button to initiate a cold boot, the
computer reads the Basic Input/Output System (BIOS) instructions stored in the
ROM.Compared to warm booting, cold booting takes longer as it involves a
complete system startup.
► 2. Warm Booting
Warm booting, or rebooting, occurs when a computer restarts while it is powered
on. This type of booting is usually performed when the system hangs or becomes
unresponsive. Warm booting can be initiated through hardware, such as pressing a
reset button, or software commands, like Ctrl+Alt+Del. It is often necessary to
perform a warm boot after installing new software or hardware to apply
configuration changes and ensure proper system functionality.
Steps of Booting in Operating System
► Step 3: Loading of OS
Once the POST is successfully completed, the BIOS reads the bootable sequence.
Based on the bootable sequence, the BIOS searches for the Master Boot Record
(MBR) on bootable devices such as floppy disks, CD-ROMs, and hard disks. If the
MBR is not found on bootable devices, the system displays a message saying "No
Boot Device Found" and crashes. However, if the MBR is found, the BIOS
launches a boot loader, a specialized application software that loads the operating
system.
► Step 4: System Configuration
After the operating system is loaded, device drivers are loaded into memory to
ensure the proper operation of the computer's hardware components. These
device drivers act as intermediaries between the operating system and the
hardware, allowing them to communicate effectively.
Steps of Booting in Operating System
• The CPU starts and fetches instructions from the BIOS(which is stored in the
ROM) into RAM.
• The BIOS starts the monitor and keyboard, and does some basic checks to
make sure the computer is working properly. For example, it will look for the
RAM.
• The BIOS then starts the boot sequence. It will look for the operating system.
• If you don’t change any of the settings, the BIOS will fetch the operating system
from the hard drive and load it into the RAM.
• The BIOS then transfers control to the operating system.
Startup sequence
Graphical User Interface (GUI)
7. User Feedback:
►The GUI provides visual feedback to users to confirm that their actions have been
recognized. This feedback can include highlighting, animations, or status
messages that inform users about the outcome of their actions.
8. Interaction Loop:
►The process repeats as users continue to interact with the GUI. New inputs
generate events, which are processed and lead to further updates and feedback,
creating an ongoing loop of interaction between the user and the application.
Benefits of GUI:
∙ User-Friendly Experience:
►GUIs are designed to be intuitive and easy to use. Visual elements like icons,
buttons, and menus make it simpler for users to understand and navigate software.
This reduces the learning curve for new users and helps them perform tasks more
efficiently.
∙ Visual Feedback:
►GUIs provide immediate visual feedback to user actions. For instance, clicking a
button or dragging an icon results in visual changes, such as highlighting or
moving, which confirms that the action has been recognized by the system. This
feedback helps users understand the results of their interactions.
∙ Multitasking:
►GUIs allow users to work with multiple applications simultaneously through
windows and tabs. Users can switch between tasks easily by simply clicking on
different windows or tabs, which enhances productivity and efficiency.
Benefits of GUI:
►A file is an object on a computer that stores data, information, settings, or commands used
with a computer program. In a GUI (graphical user interface), such as Microsoft Windows,
files display as icons that relate to the program that opens the file. For example, the picture
is an icon associated with Adobe Acrobat PDF files. If this file was on your computer,
double-clicking the icon in Windows would open that file in Adobe Acrobat or the PDF
reader installed on the computer.
► How are files created?
►A file is created using a software program on the computer. For example, to create a text
file you would use a text editor, to create an image file you would use an image editor, and
to create a document you would use a word processor.
VOLUME
►(i)When referring to sound, volume refers to the amplitude of the sound being projected
from a speaker.
►(ii) When referring to data storage, a volume refers to a logical drive, which has a single
file system and is usually located on a single partition. For instance, on a typical Microsoft
Windows computer, the volume named C: contains the operating system. In Windows, any
drive which has an assigned drive letter is a volume.
LABEL
►A drive is a location (medium) that is capable of storing and reading information that is not
easily removed, like a disk or disc. All drives store files and programs that are used by your
computer. For example, when you write a letter in a word processor the program is loaded
from you hard drive and when you save the document it is saved to the hard drive or other
disk or drive.
► In the example shown on this above, drive A: is the floppy drive, C: is the primary hard
drive, D: and E: are partitions of the hard drive, and F: is the CD-ROM drive. The
CD-ROM drive is usually the last drive letter, so in most situations the hard drive is the
C: drive and a CD-ROM or other disc drive is the D: drive.
Compiler:
∙ Lexical Analysis:
►The compiler performs lexical analysis to break the source code into tokens,
which are the smallest units of meaning (such as keywords, operators, and
identifiers). This phase converts raw code into a structured format that can be
further processed.
∙ Syntax Analysis:
►Also known as parsing, this function involves analyzing the tokenized code to
ensure it adheres to the grammatical rules of the programming language. The
syntax analyzer creates a syntax tree or parse tree that represents the hierarchical
structure of the code.
∙ Semantic Analysis:
►This phase checks the code for semantic errors, ensuring that it makes logical
sense according to the language’s rules. It verifies that operations are performed
on compatible data types, variables are declared before use, and other
language-specific constraints are satisfied.
Functions of Compiler:
∙ Error Handling:
►Throughout the compilation process, the compiler identifies and reports errors in
the source code. This includes syntax errors, semantic errors, and other issues that
prevent successful compilation. Effective error handling helps developers debug
and correct their code.
∙ Code Linking and Assembly:
►After generating machine code, the compiler may perform linking, where it
combines various code modules or libraries into a single executable. It resolves
external references and addresses, producing a complete and executable program.
Interpreter:
∙ Lexical Analysis:
►The assembler starts by breaking down the assembly language code into tokens. These
tokens include mnemonics, labels, and operands, which represent the basic components of
the assembly instructions. This phase prepares the code for further processing by identifying
its structural elements.
∙ Syntax Analysis:
►In this phase, the assembler verifies that the assembly instructions conform to the syntactic
rules of the assembly language. It checks the format of the instructions and ensures that all
required fields, such as operation codes (opcodes) and operands, are present and correctly
placed.
∙ Symbol Resolution:
►Assembly language often includes symbols like labels for memory addresses and constants.
The assembler resolves these symbols by mapping them to their corresponding addresses or
values. This process involves creating and maintaining a symbol table that tracks these
associations throughout the assembly process.
Functions of Assembler:
∙ Address Calculation:
►The assembler calculates the memory addresses for each instruction and data item. It
assigns addresses to labels and variables, ensuring that each location in memory is
correctly identified and utilized. This step is crucial for generating executable code that
operates correctly in memory.
∙ Code Generation:
►The assembler converts the analyzed assembly language instructions into machine code
or binary code. This machine code consists of numeric opcodes and data that the
processor can directly execute. Code generation involves translating each instruction into
its corresponding binary representation.
∙ Error Detection and Reporting:
►Throughout the assembly process, the assembler detects and reports errors such as
syntax errors, undefined symbols, and invalid instructions. It provides feedback to the
programmer, helping them identify and correct mistakes in the assembly language code.
Functions of Assembler:
∙ Optimization:
►Some assemblers perform optimization to improve the efficiency of the generated
machine code. This can include rearranging instructions or optimizing the use of
memory to enhance performance and reduce the size of the resulting binary code.
∙ Listing Generation:
►The assembler often produces a listing file that contains a human-readable
representation of the assembly code, along with its corresponding machine code,
addresses, and other details. This listing file helps programmers review the
generated code and debug any issues.
Types of Computer Languages