Module 1.2 - Software Flashcards
API
Application Programming Interface - an interface between the operating system and the programming language.
Virtual memory
Using an area on the hard disk as an extension to RAM. The data in RAM is divided into pages which swapped in and out of memory from the hard disk whenever the application in memory requires them.
Compiler
A program that translates an entire high level program source code into object code. The object code is machine code which may be used to create standalone ‘executable files’ that can run on their own.
Interpreters
Software that translates programming instructions into machine code one line at a time and executes them immediately.
Machine code
Instructions in binary format that the CPU can directly execute.
Multi-tasking
The operating system splits the CPU time between multiple programs, and so the computer seems to be doing more then one task at a time.
Assembler
A program that translates code, written in assembly code, into machine code.
Multi-processing
Technology which utilises 2 or more processors, for example, Multi-core CPUs.
Process
Any sequence of instructions that can be executed by the CPU.
Thread
A part of a larger program that runs independently but simultaneously with other parts of the same program.
Multi-threading
The ability of a program to create independent parts called threads. For example downloading a file in a web browser while searching for a web page. When a CPU has multiple cores, each thread can be run on a different core at the same time.
Virualisation
Creating an entity (memory, storage etc.) that only exists in a software.
Program
A set of instructions meant to accomplish a single task.
Operating systerm
System software which controls all the activities that take place in a computer.
Process management
The task of making sure that each process gets enough CPU time and access to hardware resources so that it can work without interfering with or being interfered with by other processes.