SOFTWARE & APPLICATION GEN Flashcards
5 Utility programs and what they do
DISK DEFRAGMENT: move file chunks close together remove unneeded spacing ANTIVIRUS: detects and removes viruses Compression like zipping etc File managers like win explorer Backup utilities, backs up files
What is an OS and what it do
Software that manages computer
It manages programs, hardware, scheduling of code execution and context switching
5 types of operating system
multi tasking Multi user Distributed Embedded Real time
What is distributed OS
Works on multiple PCs
What is embedded OS
OS for machine with dedicated job eg ATM, printer etc
What is a real time OS
Designed to carry out actions with guaranteed amount of time
What is the kernel
Core of OS, does memory management and processor scheduling
What is virtual memory
When uses the HDD to store chunks of (pages) of RAM
What is disk thrashing
When OS keeps switching ram from hdd and main
4Types of cpu schedulers
Round robin
First come first served
Shortest remaining time
Multi level queue
What is round robin
Each job is given a fixed amount, if it goes over it gets added to back of queue
What is multi level feedback queue scheduling
Split into queues of different queues
What are interrupts and ISR
When OS runs a high priority job
ISR is an interrupts service routine which runs, like a fiber registers and stack is saved of current job
What does open source mean (2)
Source code is freely available (1)
… for others to example or recompile (1)
Difference between compiler and interpreter (spec, not actually)
Interpreter goes through each line and converts to machine code and runs
Compiler compiles all code to machine code
4 stages to compiler
Lexical
Syntax
Code gen
Optimising
What is lexical analysis do
Comments removed, white space removed
Creates symbol table and everything is tokenised
What does syntax analysis do
Check syntax and produces the abstract syntax tree
What is alpha testing
Used within company by people who haven’t developed it
What is beta testing
Users outside company test it
What is acceptance testing
The user(s) test against the spec
5 Types of methodologies
Waterfall Rapid app dev Spiral agile Extreme
Stages of waterfall
Analysis Design CODING TESTING MAINTENANCE
Advantages and disadvantages of waterfall
It’s simple and easy to see if it’s running on schedule
It carries risks, only at testing can the user see the current progress
What is rapid application development
Deciding requirements, building a prototype, evaluating it and improving it
Advantage and disadvantages of RAD
constant feedback from client
Not suited where efficiency of code is important
Less suited for large projects
What is spiral model
Each cycle has a product or prototype
Determine objectives, identify risks, review then develop and test
What is agile programming
A group of methodologies which are designed deal with constantly changing requirements
Example of agile programming
Extreme programming
What is extreme programming
Emphasis of code, often done with pair programming
Doesn’t take long
It’s done in iterations
Advantages and disadvantages of extreme programming
It’s good code, requirers programmers who work well in a team
What is sample rate
Hz, samples per second
What is bit rate
Number of bits per second of sound data
What is a distributed operating system
An OS across multiple computers for more CPU power
Describe the term utility (2)
System software (1) which is used for the upkeep of the system (1)
Application vs utility (1)
Application performs tasks for the user, not system
What is the BIOS used for
Loading the OS
What is the boot loader
Program that loads the is kernel to memory