Computer Software and Operating System

  Introduction of software

  • Software is a collection of programs that operates and controls computer hardware or perform specific tasks. 
  • Software is not a physical (i.e., tangible) part of a computer system. 
  • Software guides and controls the computer hardware at every step, where to start and stop during a particular task. 
  • Software increases the capabilities of the hardware. 
  • Software and hardware are complementary to each other. 
  • Both software and hardware have to work together to produce meaningful output.

CATEGORIES OF SOFTWARE

Software can be categorized in four categories: 
  • System Software
  • Application Software
  • Web Based Software
  • Mobile Software

SYSTEM SOFTWARE

  • It is the collection of programs that are designed to control and manage the operations of a computer system. 
  • The system software gives the computer hardware functionality. 
  • It controls and manages all internal operations, like reading data from input devices, transmitting information to output devices, checking the components of a computer, etc. 
  • It provides an environment for application software in order to run on the computer. 
  • It also provides an environment for the development of application software. 

Types of System Software

System software may be: 
  1. System Management Software
  2. System Development Software

System Management Software

  • It is a collection of programs that are responsible for managing and functioning of a computer.
  • There are three types of system management software: Operating System Software, Device Driver and Utility Software.
  • An operating system (OS) is the basic needs of a computer. It acts as an interface between a user and a computer system or between software and hardware. It controls and manages the overall operation of a computer.
  • A device driver is a set of programs that runs the particular device.
  • An utility software performs specific tasks related to the maintenance of computer hardware and data. It keeps a computer in smooth functioning condition. Antiviruses, Disk Defragmenter, WinRAR, WinZip, etc. are utility software.

System Development Software

  • It is a set of programs that helps to develop computer programs.
  • There are two types of system development software: Programming language and Language processor.
  • Programming language is the system software that allows programmers to develop programs. Low level language (Machine language and Assembly language) and high level language are the two types of programming languages. 
  • A language processor (i.e. translator) is the system software that translates programs written in assembly or high level language) into machine language. Assembler, interpreter and compiler are three types of language processors.

Application Software 

  • Application software is specific software that can do specified tasks. 
  • It is designed to fulfil the requirements of people. 
  • It enables a user to perform a specific task, such as handling financial accounting, processing words, preparing exam results, producing bills, manipulating images and videos, etc. on a computer. 
  • Packaged Software & Customized or Tailored Software are two types of application software.
  • Packaged software is ready-made software developed for all general users to perform their generalized tasks. 
  • Word Processing Software, Electronic Spreadsheet software, Database Management System Software, Graphics software, Multimedia Software, etc. are packaged software.
  • Customized (also called a tailored) software is also called a domain specific tool. It is application software that is designed to fulfil the specific requirements of an organization, office, or individual.
  • SLC Result Processing Software, Hospital Management Software, School Management Software, Bill Processing Software, Air Ticket Reservation Software, Banking Software, etc. are customized software.

Web Based Software

  • Web-based (also known as cloud-based) software is software that can be used over the Internet with a web browser.
  • It is the software that is not required to be installed on a user’s computer, or mobile phone. 
  • It is the software that is stored and run on a server computer on the Internet. Some web-based software may require small programs to be installed on a computer or mobile phone. 
  • You can access web-based software using a computer or mobile phone from any place where there is an Internet connection. 
  • Web-based software is more secure than computer-based software. When you use web-based software, the data is stored in a secure location. 
  • Gmail, Hotmail, Yahoo mail, online banking, online payment, Google docs, Google sheets, etc. are web based software.

MOBILE APP

  • Software designed specifically for use on mobile devices like mobile phones, tablets, etc. is known as a mobile application. 
  • It is also referred to as a mobile app or an app. 
  • Mobile apps are generally small software with limited functions.
  • Apps may be native apps or web apps. 
  • Native apps are designed for specific mobile operating systems (iOS or Android). 
  • Web apps are designed using HTML or CSS and run through a browser. 
  • Apps are usually downloaded from app stores such as Google Play Store or Apple Play Store. Netflix, Facebook, TikTok, Candy Crush, Angry Birds, Viber, Google Meet, Skype, Google Maps, etc. are some of the popular mobile apps.

Concept of Operating System

 INTRODUCTION TO OPERATING SYSTEM
  • OS is the system software that controls and manages a computer system and provides functionality to hardware and the environment to run software to do their tasks.
  • It is the basic need of a computer. Without an operating system on a computer, the computer cannot be operated. 
  • It links a user, hardware, and application software and makes them communicate with each other. 
  • It is responsible for the smooth and efficient operation of the computer system. 
  • It is the first software that is loaded into the computer’s memory (RAM) when a computer is switched on and works till the computer is on. 
  • Other programs that a user opens on the computer work on top of the operating system, i.e., the operating system works behind the screen just like in a drama, the director works behind the screen.
  • Windows Advance Server 2003, Windows XP/Vista, Windows 7, Windows 8, Windows 10, Windows 11, Mac OS, Red Hat Linux, UNIX, Novell Netware, Android, etc. are operating systems.
ROLE OF OPERATING SYSTEM
  • The operating system acts as the interface between the computer user and the computer hardware. 
  • It manages computer resources (input, output, and storage devices) and monitors the activities of the computer system. 
  • It works as a command interpreter. 
  • It provides a platform on which other software can run. 
  • It performs basic tasks such as reading input from a keyboard, sending output to the display screen, keeping track of files and directories on the disk, etc. 


FUNCTIONS OF AN OPERATING SYSTEM 
  • Process Management
  • Memory Management
  • Input / Output Management
  • Management of execution of applications
  • File Management
  • Provides a user interface
  • Security
  • Error Detection
  • Command Interpretation
  • Deadlock prevention
  • Interrupt Handling
Process Management
  • A process is a program code of a program that is currently executing on a computer. 
  • The CPU executes one process at a time. But in multitasking, the OS allocates CPU time to different processes, so they seem to be executed all at the same time. 
  • The operating system keeps track of processor and the status of the process. 
  • A process may be in three states: Running, Ready or Blocked. 
  • A process is said to be in a running state if it is actually using the CPU. 
  • A process is said to be in a ready state if it is waiting for a CPU in a queue. 
  • A process is said to be in a blocked state if it is waiting for I/O. 
Memory Management

  • Memory management refers to the management of primary memory (RAM) for the processes or programs. 
  • The primary or main memory of a computer is the temporary storage that can be accessed directly by the CPU. 
  • A process or program to be executed must be loaded into the memory. 
  • In a single-user, single-tasking operating system, all of the memory not required by the operating system is allocated to the process. 
  • In multitasking, the operating system manages the memory space by allocating the space to each currently running application program (i.e. process). 
  • The OS decides which process (program) will get how much memory and when. 
  • The OS releases the memory when the process no longer needs it or has been terminated. 
  • If there is insufficient physical memory, the OS temporarily transfers programs that are not currently running to virtual memory. This increases the amount of memory available for other programs. 
Input/output Management

  • The operating system communicates with input and output devices through device drivers.
  • The operating system controls and manages reading data and instructions from input devices, transferring them to RAM and transmitting information from the RAM to output devices or storage devices. 
  • It allocates the devices to the different processes in an efficient way. 
  • It decides which process gets the device when and for how much time. 
  • When a process requests I/O, the OS sends the system call (i.e. software interrupt) to the processor and enables the I/O device to service the request. 
  • It deallocates the device when the process no longer needs it or has been terminated. 
 Management of execution of applications
  • The operating system manages the smooth execution of applications by allocating the resources required for them to operate. This means an application that is not responding correctly can be "killed".
File Management
  • The OS uses a file system i.e. File Allocation Table (FAT) or New Technology File System (NTFS) to manage files and folders on secondary storage devices. 
  • It allows a user to create files and folders, rename files or folders, copy or move files and deleting files or folders. 
  • The OS carries out read and write operations to a secondary storage device. 
  • The OS allocates spaces for files on a secondary storage. 
  • When a file is large, the OS allocates the file into contiguous or different clusters of a disk depending upon the amount of free contiguous space available on the disk. It keeps track of files location on the disk through the file system and when the file has to be read, it collects the fragmented parts of the file from different locations and transfers them to the primary memory. 
Providing User Interface
  • The OS provides an user interface (command line interface (CLI) or a graphical user interface (GUI) ) through which a user interacts with software and hardware. 
  • With a CLI, a user interacts with the OS by typing commands to perform specific tasks. MS-DOS is a CLI OS. 
  • With a GUI, a user interacts with the OS by using icons and menus. Windows Operating, Android, etc. are GUI OS. 
Security
  • OS provides a user to set a password which allows access to the computer system only to the authorized users and prevents an unauthorized user from using the computer system. 
Error detection
  • It detects and notifies the user about system errors or errors that are encountered during program execution.
Command Interpretation
  • It reads the commands input by a user and translates them into a set of specified instructions and passes them to the CPU and the CPU performs the appropriate action according to the set of instructions. 
Deadlock Prevention
  • Deadlock is the condition that occurred when two or more processes are each waiting for another to release a resource, or more than two processes are waiting for resources in a circular chain. 
  • In a deadlock, none of the processes can continue because the resources required by them are held by another process. For example, let’s say process ‘A’ is waiting for process ‘B’ to complete, while process ‘B’ can only complete when process ‘A’ is completed.
  • The OS prevents a deadlock situation by terminating the least priority process. 

Interrupt Handling

  • An interrupt is a signal generated by a device or program when it needs the attention of the CPU. 
  • The operating system determines the type of interrupt and the priority of the interrupt, stops the execution process of the CPU, preserves the initial state of the CPU, performs the requested operation, and brings the CPU to the same state when it was stopped.

Uploading: 22486 of 22486 bytes uploaded.







Comments