Software Flashcards
What is software
Software consists of programs, routines and procedures (with their associated documentation) that can be run on a computer system
Consists of programs (set of programs) that make the hardware function and also carry out tasks for the user
What are the 2 types of software and the types in it
System software
-Operating system
-Utility software
-Library programs
-Language translators
Application software
What is Application software and eg
Used to perform a specific job for a user that they would perform by other means
E.g. word proccing software to write a report, spreadsheet software to manage finances
What is system software
A computer system requires a layer of software that enables users to operate it without having to know the underlying processes that are going on inside all the time
It is software that helps users to use the computer and application programs such as providing the user interface and tools to manage the hardware
The systems software is provided by the manufacturer and enables a user to give a few simple instructions that the systems software translates into the millions of minor operations needed of the computer to function in a easy to use way
Software that is essential to the running of the computer is usually sold with the computer. Other systems software may be purchased separately to enable the computer to be used for particular types of tasks
Classification of system software
Necessary to run the computer- Operating system software
Provide other useful functions- Utility programs
Provides for frequently used tasks-Library programs
Enables software to be produced and maintained- Language translators such as compilers, interpreters and assemblers
What is the operating system
It is a suite of programs that controls the entire operation of a computer.
It is software designed for a particular hardware which manages other programs’ access to the hardware
It is normally provided through the supplier and manages the internal functions of a computer, such as memory management, multi-user, handling what has been typed in, displaying data on the screen and loading from and saving to backing storage
OS sits between the hardware and the programs. It hides all the complexities of the hardware form the user
The OS is software that
Manages a hardware device
Manages users’ access to the I/O devices, including files on secondary storage
Provides the user interface
Shares the computing resources such a CPU as memory between processes
Name the functions of the OS
Hardware management
File management
Shares access to the hardware among the different programs/tasks that are running
Multi-user/multi-access
Resource management
Provide user interface
Managing security
Hardware management in the OS
Involves all input and output peripheral devices
The functions of hardware management include
-Communicating with all input and output devices using device drivers
-Translating data from a file (defined by the OS) into a format that the input/output device can understand using device drivers
Applications written for particular OS will work on any hardware but might not work on a different OS
File management in the OS
Managing files- defining the file naming conventions which can be used- filename.extension (.txt, .xls, .docx etc. )
Performing specific tasks, such as create, open, close, delete, rename, copy, move
Maintaining the directory structure
OS shares access to the hardware among the different tasks that are running
Multitasking- method of organising computer use that allows several different tasks or applications to be available at the same time. Modern personal computer OS allow users to have several tasks to apparently run at the same time, with the user switching between applications or tasks
Multi-user/Multi-access in the OS
Several users can be sharing the hardware
allows several users to apparently have individual control at the same time
This needs sharing of hardware resources such as CPU and RAM
When several applications are open, they cannot really run at the same time
The OS uses a method called scheduling to allow each program to use the CPU for a given time before switching to the next program
One method of implementing a multi-access system is by allocating a period of time to each user, called time-sharing
Users should provide authentication to login
Ram is shared by a method called paging
Paging is an algorithm the OS uses to move programs from RAM to disk and back again when main memory is full. This is called paging, swapping or virtual memory
Paging is the organisation of memory into fixed size units, called pages. The immediate access store (RAM) is organised as a number of physical pages. The logical pages used by the CPU can be assigned, by the memory management unit, to any page in the physical memory. A form of virtual memory can be used with less frequently used pages being stored on disk, but when required they are reloaded into the IAS as a complete page
Resource management in the OS
Each task that is running is calling a process and this includes application programs
These processes are running one at a time, being given their share of CPU time by the scheduler.
The processes run alongside each other, but not really at the same time (concurrently)
An OS that allows processes to run concurrently is called a multi-tasking OS
Providing user interface in the OS
To provide communication between the user and the computer
Graphical user interface (GUI) based on WIMP (windows, icon, menus and pointer)
Command-line interface (CLI)
the choice of user interface depends on the application a computer is expected to run
An embedded system might not have a OS, therefore it does not have a user interface
A computer acting as a web server might only need a CLI because it is intended only to be accessed by technicians
A computer used for video editing will need a GUI
Managing security in the OS
Checking for authentication
Checking for access rights- authority to use certain facilities of the computer system is bases on the duties and the responsibilities of the user