Software
System and application software
Application Software:
allows a user to perform specific tasks using the computer’s resources
System software
these are a set of programs which control and manage the operations of hardware
base for other software to run
Function of operating system
-
Human computer inteface makes it easy for normal person to operate computer
-
Multitasking allows computers to carry out more than one task
-
Platform for running of application software base for application software
-
Management of user accounts manages users
-
Managing files naming,opening deleting files, all actions with files
-
Hardware perephiral management managing all input and output devices
-
Memory managment managing relationship between RAM and secondary storage
-
Interrupt handling routines deals with all interrupts
-
Security(manages log in passwords) ensures integrity, confidentiality, and availability of data
The human computer interface (HCI)
Graphical User Interface (GUI).:For a person who doesn't have good knowledge about computers and software, usually using it for playing games or browsing internet
Command Line Interface (CLI): A skilled programmer, technician or software developer, who needs to have a direct communication with computer and develop software for it
Running of application
Operating system is a base for running an application. When computer starts up, some part of operating system needs to be loaded to RAM this is known as booting up, Start of computer is handled by BIOS which is often reffered as firmware which is defined as a program that provides devices control on low level
Interrupts
are signals sent to micorprocessor, to make processor pause task and solve interrupt, by identifying and priotorising it
Buffer-stores data temporarily in a memory area. Example of buffer is when you start to watch film online, and it doesn't dowload the whole film but some part, so when you turn off data you can watch part that was dowloaded previously
Low and high level programming languages
Low level language-used to write programs that relate to the specific architecture and
hardware of a particular type of computer however they are very hard to understand and debug
High level language-designed to allow humans to write computer programs and interact with a computer system without having to have specific knowledge of the processor or hardware that the program will run on. It is closer to english, so easier to write understand and debug
Assembly language-low-level programming language that is intended to communicate directly with a computer's hardware.
Assembler- Converts assembly language into machine code.
Translator needs to be used to convert high level programs and assembly programs to machine code. There are two typer of translators, Compliers and Interpreters
Complier is translator that converts high level languahe code into machine to run the programm all in one go, it saves time however it is harder to debug programm
Interpreter is a translator that converts high level language code into a machine code, but checks each line of code for error, and stops when error is found, error report is outputs with line of error
Integrated Development Environment (IDE)
An Integrated Development Environment (IDE) is used by programmers to help the writing and development of programs.
IDEs usually have these features:
-
code editors-allows programmer to edit code in the IDE
-
a translator-this can be a compiler and/or an interpreter, to enable the program to be executed.
-
runtime environment with a Debugger-A programm that can find line with error for developer to debug it
-
error diagnostics-dynamic error checking finds possible errors as the program code is being typed,
-
auto-completion completes code with possible word
-
auto-correction-corrects possible error by itself
-
auto-documenter and prettyprinting- provide an auto-documenter to explain the function and purpose of programming code.Prettyprinting is showing different parts of code different colours
Utility software
-
Computer users have access to utility programs as part of system software
-
Utility programs can be initiated by the user or run in the background without user input
-
Common utility programs include virus checkers, defragmentation software, disk analysis and repair tools, file compression and management software, backup software, security tools, and screensavers.
by: Arnur Mussabekov
