Section 2- system software

41 flashcardsby Dsobo
Study these flashcardsFree · spaced repetition · iPhone, Android, Mac & web

All cards

1
1)Define operating system
2)Where is the operating system held
3)What does a loader do?
4)Where is Loader stored?
1) A program (or set of programs) that manages operations of the computer for the user.
• Acts as bridge between user and computer’shardware, since user cannot communicate with hardware directly.
2) in permanent storage e.g. Hard disk
3) When computer is switched on, the loader sends instructions to load the operating system by copying from storage into the RAM
4)held in ROM
2
1)What are the funtions of operating system
• User interface
• Memory management
• Interrupt service routines
• Processor scheduling
• Backing store management
• Management of all input and output
3
1)What does memory management allow ?
2)What must be allocated for memory management to work ?what if users switch window whilst other is still open?
3)What controls the memory management ?
1) allows user to work on several tasks at the same time
2)specific area of memory whilst computer is running,must be stored in memory simultaneously.
3)operating system
4) logical division of address space into varying length segments which depend on the program structure=possible to load only a part of a program into memory initially.
4
1)What is paging and segementation ?
2)Define segementation
3)How paging work?
4)What is the size of paging ?
1)two different techniques for making the optimum use of memory by splitting into smaller sections.
2) logical division of address space into varying length segments which depend on program structure.
3)page table uses mapping to store a link between physical memory address and logical address space of each process.
4)divided into fixed sized pages of 4kb each,process currently in memory may be held in non-contiguous pages.
5
1)When might you use virtual memory with memory?
1)system may swap pages of temporary inactive jobs out to secondary storage as an extension of main memory.
*If large number of jobs are loaded and you have insignificant RAM, you might use resources constantly swapping pages from RAM to virtual memory and back.



6
1)Define interupt
2)What if an interup occur?
3)What happens in the interupt service routine?
1) signal from a software program, hardware device or internal clock to the CPU.
2)suspends execution of running program or process and disables all interrupts of a lower priority.​
3)Interrupts assigned priorities lower priority interrupts may be disabled while a higher priority interrupt is being serviced.​
Once interrupt has serviced original values of the registers are retrieved from the stack and the process resumes from point left off.​
7
1)Define multi tasking
2)Define a schedular
1) computer with single processor = only process one instruction at a time, by carrying out small parts of multiple larger tasks in turn,
the processor can give the appearance of carrying out several tasks simultaneously.
2)operating system module responsible for making sure that processor time is used as efficiently as possible-becomes complex on large multi user database
8
1)Whats the objectives of a schedular?
maximise output
be fair to all users on a multi-user system​
provide acceptable response time to all users​
ensure hardware resources are kept as busy as possible​
9
1)Define Round Robin
2)What happen if not complete in time?
3)How does it work?
Whats FIFO?
1)processes despatched on first in first out (FIFO) basis, with each process in turn being given a limited amount of CPU time called a time slice or quantum. ​
2)the despatcher gives the CPU to the next process.​
3)operating system sets an interrupting clock or interval timer to generate interrupts at specific times. ​-helps to guarantee a reasonable response time to all users of the system. ​
4)Jobs are processed in the order in which they arrive, with no system of priorities(First in first out)
10
1)Define shortest time remaining schedular?
2)What does it tend to do?
3)Con?
1)The process with smallest estimated time to completion is run next.
2)Reduce the number of waiting jobs and the number of small jobs waiting behind big jobs. ​
3)requires knowledge of how long a job will take, so the user has to estimate the job time - possible for batch jobs e.g. payroll, which are performed regularly and usually run
overnight, or for any scientific, commercial or other jobs which are run regularly.​
11
1)Define Shortest job remaining
2)Pro?
1)process with smallest estimated running time is run next. ​
2)constraints much the same as the 'shortest remaining time' algorithm. ​
e students will get their short programs run quickly while large research or administration programs which are not time-critical
will take longer to complete during busy periods of student activity.​
12
g
13
1)Define Multi-Level Feedback Queues​
1)several job queues and jobs can move between queues, depending on how much processor time they use.- preference to short job, preference to I/O bound processes​ ,
separate processes =categories based on their need for the processor​-while one job is printing, other jobs can use the processor. ​
14
1)What does peripheral Management do?
2)Whys is backing store management essential

1)send a file to print, the operating system will need to communicate with the printer to check that it is switched on and online,
check that it is a printer and not, say, the keyboard and begin communication to send it the correct data to print.
overall,​-Different applications will require different input or output devices throughout their operation. ​

2)operating system is required to keep a directory of where files are stored so that they can be quickly accessed. ​
15
1)Whats distributed operating system?
2)How do the tasks work?
3)what is mobile operating system?
1)form of parallel processing system which spreads the load over multiple computer servers
2)single job is split up into several tasks and each of these is run on a separate computer, coordinated by the operating system, in such a way that it appears to a user to be a single system.

3) combine the features of a personal computer operating system with own special features useful for mobile use such as managing cellular and wireless connectivity as well as phone access



16
main features of embeded system
it will have a minimal user interface, probably consisting of a few buttons or a dial and maybe a small screen
it will accept input from sensors, and send output to control devices
there is a limited amount of RAM so a complex memory management system is not required
there will not be any permanent data storage devices to be managed
17
Main features of rreal time operating system
it will have a minimal user interface, probably consisting of a few buttons or a dial and maybe a small screen
it will accept input from sensors, and send output to control devices
there is a limited amount of RAM so a complex memory management system is not required
there will not be any permanent data storage devices to be managed
18
1)Define BIOS(Basic input output system
2)Purpose?
1)program stored in EPROM (Erasable Programmable Read-Only Memory) that gets your computer started after you turn it on.
2)initialise and test the system hardware components and to load the operating system (or the key parts of it) from the hard disk into RAM.




19
1)Define device driver
2)Purpose
1)computer program that provides a software interface to a particular hardware device.
2)enables operating systems to access hardware functions without needing to know the details of the hardware being used.
20
1)Define virtual machine
software is used to take on the function of the machine, including executing intermediate code or running an operating system within another to emulate different hardware.
21
1)Define utility program
1)system software designed to optimise the performance of the computer or perform tasks such as:
backing up files,
restoring corrupted files from backup,
compressing or decompressing data,
encrypting data before transmission,
providing a firewall, etc.

22
1)Define system software
1)software needed to run the computer's hardware and application programs.
This includes the operating system, utility programs, libraries and programming language translators.
23
1) Define automatic update utility
2)How work?
1) makes sure that any software installed on the computer is up-to-date.
2)regularly check the Internet for updates-downloaded and installed if they are newer than the version already on the computer
24
1)Define virus checker
2)Define compression software
3)Pros of compression
1)checks your hard drive and, depending on the level of protection offered, incoming emails and internet downloads, for viruses and removes them.
2)used to reduce the size of one or more files. When a file is compressed, by deleting ,moving or copying the data elsehwere to reduce memory used such as WinZip
3)transmitted quickly over the internet,takes up less space


25
1)Define General-purpose software
2)Define special- purpose software
1) e.g. word-processor, spreadsheet or graphics package, can be used for many different purposes.
2)software performs a single specific task or set of tasks. Examples include payroll and accounts packages, hotel booking systems
26
1)Pros of "off-the-shelf" software
2)Cons of "off-the-shelf"software
1)Less expensive since the cost is shared among all the other people buying the package
Ready to be installed immediately, , well-tested and error-free
2)May contain a lot of unwanted features, and some desirable but non-essential features may be missing


27
1)Pros of "Bespoke" software
2)Cons of "Bespoke software
1)Features customised to user requirements and other features can be added as needs arise
2)May take a long time to develop,May contain errors which do not surface immediately
More costly and requires expertise to analyse document requirements




28
1)Define open source software
2)Feautres of open source
3)Con
1)software for which the original source code is made freely available and may be redistributed and modified.
2)Software is licensed for use but there is no charge for the licence. Anyone can use it.
Open Source software must be distributed with the source code so anyone can modify it.
Developers can sell the software they have created.
3) isn't commercial organisation behind the software so there probably won't be a helpline or
regular updates, just a community of enthusiastic developers.

29
1)Define closed/proprietary source software
2)Features
3)Benefit
1)sold in the form of a licence to use it.
2)restrictions on how the software can be used, it may permit up to say, 50 users on one site.
company or person who wrote the software will hold the copyright.
users will not have access to the source code and will not be allowed to modify the package and sell it to other peopl
3)support available from the company. There will be regular updates available and technical support lines, training courses and a large user base.

30
1)Define assembly code
2)How works
3)What is assembly code converted to?
1)Assembly code is a low-level language, with each instruction in assembly code almost always being equivalent to one machine code instruction.
2)completely dependent on its hardware, and therefore each different type of processor will have a different instruction set and a different assembly code.
3)must be translated into the equivalent machine code, or an intermediate form called bytecode. This is done by a program called an assembler.
and converts it to the 0s and 1s of the corresponding machine code instruction.




31
1)Define compiler
2)How works?
3)Pros
1) program that translates a high-level language such as Visual Basic, Python etc. into machine code.
2)scans through it several times, each time performing different checks and building up tables of information needed to produce the final object code.
3)code can be saved on disk and run whenever required without the need to recompile. However-an error is discovered in the program, whole program has to be recompiled
object code executes faster than interpreted code
object codecan be distributed or executed without having the compiler present- since source code is not present and therefore cannot be copied or amended by customers
object code is more secure, as it cannot be read without a great deal of 'reverse engineering’- be appropriate when a program is to be run regularly or frequently, with only occasional change.

32
1)Define interpreter
2)Pros
3)Cons
1)instructs the computer to run it, the interpreter looks at each line of the source program, analyses it and, if it contains no syntax errors, translates it into machine code and runs it.
2)platform independence - can be run on any machine which has the appropriate interpreter available
useful for program development as there is no need for lengthy recompilation each time an error is discover
3) may run slower than a compiled program - each statement has to be translated to machine code each time it is encountered.

33
1)Define bytecode
2)How works?
3)pros?
1)ntermediate representation which combines compiling and interpreting.
2)may be compiled once and for all (as in Java) or each time a change in the source code is detected before execution (as in Python).
3)achieve platform independence; any computer that can run Java programs has a Java Virtual Machine (JVM), inherent between different computer architectures-operating systems.
acts as an extra security layer between your computer and the program. can download an untrusted program and execute the Java bytecode interpreter rather than the program itself

34
1)List in order the stages of compilation
Lexical Analysis,
Syntax Analysis and Semantic Analysis,
Code Generation and Optimisation
35
1)What happens in Lexical Analysis?
Superfluous spaces are removed comments, identified for example by # or // , will be removed from the program.
simple error-checking is performed, e.g. illegal identifier (such as X&Y or ten% in Python) would be flagged as an error
detect attempt to assign an illegal value to a constant e.g. value of the wrong type or one that causes overflow or underflow
( will not detect misspelt keywords or undeclared variables)
keywords, constants and variable names used in the source code are replaced by 'tokens' (unique symbols).
All numbers will be converted to their run-time representation identifiers will be replaced by a pointer to an address in the symbol table
Keywords such as input, print will be replaced by a single item-code.
36
1)Point of symbol table im compliation phase?
2)What does it show?
3)Good way to organise?
1)contain an entry for every keyword (reserved word) and identifier in the program. exact format of the entries in the table will vary from compiler to compiler, but typically, entries in the table will show:
2)the identifier or keyword, the kind of item (variable, array, procedure, keyword etc.) ,the type of item (integer, real, char etc.)
run-time address of the item, or its value if it is a constant
a pointer to accessing information (e.g. for an array, the bounds of the array, or for a procedure, information about each of the parameters).
3)"hashing"-hash table
37
1)Define syntax analysis
2)How work?
3)Define parsing
4)How stacks used?
5)What happens to priorities of arithmetic operators? what happens to expressions?
1)process of determining whether the sequence of input characters, symbols, items or tokens form a valid sentence in the language
2)be expressed as a set of rules, using for example syntax diagrams or Backus-Naur form.
3)task of systematically applying the set of rules to each statement to determine whether it is valid.
4)be used to check, for example, that brackets are correctly paired.
5)priorities of arithmetic operators will be determined, and expressions converted into a form (such as reverse Polish notation) from which machine code can more easily be generated.

38
1)Define semantics
2)Why used?
1)the meaning rather than the grammar of the language
2)To check if are following the
is possible to write a series of syntactically correct statements which nevertheless do not obey the rules for writing a correct program.
39
1)What happens at code generation?
2)What is code optimization?
3)Cons of code optimization
4)Pros of code optimization?
1)when the machine code is generated. -Most high-level language statements will be translated into a number of machine code statements.
2)attempt to reduce execution time of the object program e.g. spotting redundant instructions
3) will increase compilation time, sometimes quite considerably it may sometimes produce unexpected results.
4) detect that it is quite unnecessary to perform the loop 100000 times to optimise the code so only done once!


40

1) Define Library programs
2)Pros
1) ready-compiled programs, grouped in software libraries, which can be loaded and run when required.
-Most compiled languages have their own libraries of pre-written functions-microsoft have .dll extension.
2)Most programming languages -built-in functions such as chr(), asci(), sqrt() etc.
They also have libraries of modules that provide solutions to common problems in everyday programming e.g. such as mathematical functions,
They are tested and error-free
they save the programmer time in "re-inventing the wheel" to write code themselves to perform common tasks


41
1)What does a linker do?
2)What does a loader do?
3)where are the routines written by programmer held?
1) put the appropriate machine addresses in all the external call and return instructions, so that the modules are linked together correctly.
-These may be input or output routines from the subroutines
2)relocating loader can load the object code anywhere in memory, provided the programmer has used no absolute addresses and the object code in relocatable format.
3)held on disk in a library of subroutines.




Study all 41 cards for free