Karteikarten
OSFull
Karten in diesem Stapel (152)
- 1What is the rest of 211A meme of cancers
- 2What is an Operating System1 - Is an environment for an application to sit in
2 - Thing that actually controls the machine - 3What is Abstraction for the Operating System1 - OS can run of different hardware
2 - Hardware abstraction allows us to use different hardware for all OS - 4What are the different types of OS1 - Embedded
2 - Server
3 - Desktop - 5What is a Embedded OS1 - Set of requirements that traditional OS doesn't do
2 - Used for real time systems
3 - Is reliable - if something triggers an event, it will do something - 6What is a Server OS1 - Fair sharing resources
2 - Reliable - 7What is a Desktop OS1 - Interactivity
2 - GUIs - 8What is the difference between Server and Desktop OS1 - Difference is user responsiveness
2 - Desktop is user driven. User will have better experience - 9What is a Monolithic OS, advantage and disadvantage of this1 - All OS Code running with full privileges
2 - Advantage - Very efficient access
3 - Disadvantage - Difficult to impose security and protection - 10What is the Layered Approach OS1 - Onion skin where the more center is more hardware
2 - If you want to communicate with a lower level, can be costly
3 - Each level can have different parts of an OS - 11What is a MicroKernel OS. Advantages and disadvantages of this1 - Kernel which controls the hardware
2 - Everything in the system is a service
3 - Spends its time dealing with communication using message passing
4 - Can be inefficient
5 - Easy to extend - 12Difference between Monolithic and MicroKernel1 - Microkernel has far less code running with more priveleges
- 13How can you Boot and OS1 - OS directly called on boot from the BIOS chip
- 14What is the BIOS Chip and what does it contain1 - Allows us to go to a known place of a disk
2 - Initial boot process of a machine. Goes to memory and boots the OS
3 - - 15What is Memory mapped IO1 - Each device will divide information to the computer by presenting a set of memory.
2 - Memory will go to memory space and will be shown to processor - 16What are the problems with Memory mapped IO1 - The memory increases and teh speed is fast. The demand will increase
2 - Can be expensive - 17What is Isolated IO1 - You have a separate bus
2 - Easier interfacing
3 - Accessed via special instructions - 18What are the problems with Isolated IO1 - You need special instruction to access the IO bus
2 - When you create a program, there is no natural way of accessing the IO bus. - 19What is Polling1 - How we know when device transfers data
2 - When we carry out an operation, the device has a bit to say if its ready or not
3 - processor will keep spinning to see if it has been changed or
not - 20What happens when you initiate polling1 - It will keep spinning the processor to see if it has been changed
- 21What is Interrupt Driven or Asynchronous IO1 - When we initiate some IO, device does something to retrieve or handle data
2 - While this is going on, processing can run something else - 22What happens when IO is complete in Asynchronous IO1 - The wire can be signaled that something has happened.
2 - Processor would on to a fixed operation called an interrupt handler - 23What happens when the processor runs into an Interrupt in Asynchronous IO1 - Processor would run the interrupt handler
- 24What is an Interrupt in Asynchronous IO1 - Forced sub routine call
2 - Processor gets the single, which it has to handle
3 - Finds the interrupt address in memory - 25What is an Interrupt1 - We have a single interrupt line to the process
2 - After an interrupt must poll each device - 26What is Multiple Interrupt Lines1 - Having multiple devices with interrupt line
2 - Should have all disks on 1 interrupt line - 27What is in an ISR1 - PRocessor will choose which interrupt it will go to and then it it will call that.
2 - We can keep our interrupt routines separate - 28What is a software interrupt1 - Special interrupts that we can place in a program
2 - Simulates what happens in an interrupt - 29What is the Connection between Interrupts and Stacks1 - ISR uses main stack
2 - Better to create a new stack for ISRs - 30What is a programmable interrupt controller1 - Tackles if there are more multiple lines
2 - Device creates an interrupt which is taken by the PIC
2 - Processor will have to out which PIC took that interrupt - 31What is a precise exception1 - When you get an exception
2 - Get an interrupt signal from the processor
3 - Complete the instruction, then go to exception - 32What is imprecise exception1 - Partial state in teh system
2 - Instruction which are part way through the system
3 - if its a serious exception, processor drops everything and goes to it - 33Examples of Exceptions going wrong1 - Blue screen of death
- 34What happens if you cant called exception of exceptions of exceptions of exceptions inception1 - if you dont set up an ISR then it will go to a double fault
2 - If the double fault isnt handled, then it will have a triple fault. Thats game over. - 35What are the Key Features of Exceptions1 - Goes on as a separate structure or flow of control
2 - Not generated byt running program
3 - Allows switch from to system mode - 36What is a Real Time Clock1 - Returns encoding of current date
- 37What is a Programmable Interrupt Timer1 - Something that will give priority to most devices
- 38What is a Typical IO Device1 - We may have some buffering go in the device
2 - Circular buffers help improve data - 39What is Direct Memory Access1 - Relieves CPU of Data Transfer
- 40What is a Device Driver1 - They are just code that specific to the operation that device can carry out.
- 41How does a Device driver work1 - Device driver is loaded through the OS
2 - OS doesnt have to know your device
3 - Device have to be re entrant - 42What are the Tasks of the Device driver1 - IO Scheduling
2 - Error Handling - 43What is a Single Instance Device1 - A printer, device that can only be used by 1 process
- 44What is a Multi-Instance Device1 - Can handle request from multiple sources
- 45What is the PCI Bus1 - How we attach devices to a bus
2 - Hierarchy of buses containing devices
3 - Have a bridge connected to a co-processor - 46How do we obtain the PCI address1 - Scan the bus hierarchy
2 - Each bus would have a number and that would represent the device.
3 - Each device would need a type, functions and requirements - 47What is Multi-Programming1 - Switches Between Processes as it becomes blocked
- 48What is Multi-Tasking1 - Regularly switch between processes so they become interactive
- 49What is Base and Limit protection1 - Preventing a process or program accessing a memory that belongs to another program
- 50What are Seperate address spaces1 - Location 0 = base address
2 - Memory address = base + 1 - 51What is Segmentations1 - When a code stack has its own stack, heap, data and code
2 - Each segment would have address space - 52What are Dynamic Storage Allocation1 - First Fit - Looks through first regious of size found
2 - Best fit - Allocates the smallest memory hole of sufficient size
3 - Worst fit - Always allocate largest memory hole - 53What is Fragmentation1 - If you have a free space in memory and you try to fill up un allocated space
- 54What are Fixed size scheme1 - When you allocate in fixed sized blocks
2 - You want 156bytes, you will always get 256. YOu will get internal fragmentation - 55What is Paging1 - Translates between physical and virtual memory
- 56How can we enable paging1 - Different virtual address map to the same physical address
- 57What is shared memory with paging1 - Share memory between process
- 58Difference between Register based and memory based page tables1 - Register - Fast but limits the capacity
2 - Memory - capacity limited, slow access time - 59What are problem with a page table size1 - 12 bits to address each location which means 20 bits is the page number
2 - Problem is that you can have a large table - 60What is Multi-Level paging1 - Processes don't use all of the memory
2 - Page bits split into multiple slots
3 - Only allocate slows if we need them
4 - More efficient structure of memory - 61What is self mapping1 - We waste one of our entries in the page directories
2 - One of entry references back to directory - 62What are hashed page tables1 - Instead of a direct lookup, run a hash function.
2 - Multiple hash tables can chain together - 63What are Inverted page tables1 - Page table has one entry for each frame
- 64What is Memory Management1 - Managing more memory than we already have
- 65What do page tables translate1 - Virtual to physical addresses
2 - Can provide physical memory to the pricess - 66How does a page fault occur1 - If you come across an entry which has no valid pointer
- 67What is a Page fault1 - A page directory can find the root of out tables for a particular process
2 - each process has its own page table
3 - Each page table maps to a physical frame - 68What are Growing regions1 - As the heap and the stack grow, we allow more pages to fill the gap
2 - We use page faults to do this - 69What is the process of demand paging1 - Instead of loading into memory on boot, it does it dynamically when it needs to
2 - Process can start with an empty page directory
3 - OS will get a page fault, and will load the fault and restart the process
4 - Instruction put into table, now it will work :D - 70What is secondary storage1 - How we keep shadow copies of pages on a backing store
2 - Examples include disk - 71What is swap space and whats good about it1 - Each frame that sits in memory will have a shadow copy which resides on the disk
2 - Good because we start to about more memory that we actually have in the machine - 72Why do we use directory entry1 - We use this for security
- 73What is the process of multi-paging and swap space1 - We have process 1, which has a shadow copy on the disk
2 - Tries to access page B, no valid entry which means its a page fault
3 - Go through sequence of operations
4 - Find a frame that isnt being used that much
5 - Replace it. - 74What is a victim1 - Finding a frame that isnt being used that much
- 75What is a dirty page flag1 - Everything that is corresponding to that memory
2 - Tells us if anything was written to that frame
3 - We have to make sure the dirty bit is clear - 76How to look for a victim1 - We can write the victim to the disk
2 - Something that isnt being used that much
3 - - 77How do we select a victim1 - We want locality
2 - Look at a way process is requesting access to frames and pages - 78What is the First in First Out1 - First one in the process are usually global variables
2 - Obvious approach - 79What is least recently used1 - Replace page not used for the longest time
2 - Could have a stack or a list to record what pages are being used
3 - Could get complex - 80What are accessed pages1 - Look at control bits again
2 - Everytime a process accesses a frame that is actually tied to the frame table - 81What happens if we clear an access table1 - If we clear it, next time a process tries to access it again, it would be set again
- 82What is the Clock Algorithm1 - Circular list of frames in the system
2 - We look at 1 frame at a time - 83What happens when we request for a new frame1 - If its clear, then it would go to the next request
2 - Go round if there is something not being used - 84What is the set replacement1 - When page faults are getting frequent
2 - Tells us that working set is too small
3 - If a process has a small working set, we have to deschedule it, then replace it - 85What are the problems with set replacement1 - Number of bits you have is twice as long as what you are working set
2 - Ideal for coding application
EG
working set = 4
number of bits = 2 - 86What is memory allocation1 - Process to divide memory equally among n processes
- 87What is Thrashing1 - Over Committing memory
2 - When a process is allocated too few frames
3 - Limit thrashing by using the local replacement algorithm - 88What is Buddy Allocation1 - Diving up memory in the system so thats usable again
2 - We always divide by 2
3 - 4k Blocks will be split into 2 2k blocks - 89What is the process for buddy allocation1 - We repeatedly split the block until we have something the right size
- 90What is the process for freeing memory1 - Label the used blocks
2 - 2 buddies with the same parent can join back up
2 - 2 buddies with different parent cannot join back up - 91What are the problems with buddy allocation1 - Suffers from internal fragmentation
2 - Must round up any request to next block size - 92What is the slab allocator1 - manage allocation of objects internally
2 - individual memory of blocks - 93What is a Process1 - a loaded instances of a program
- 94How is a process generated1 - Process is generated from a copy of an application which copied from disk somewhere
2 - System is loaded up in to main memory - 95What are the types of systems1 - Batch
2 - Real Time
3 - Interactive - 96What are Batch Systems1 - Payroll systems
2 - Large application that are very transaction wise - 97What are Real-Time systems1 - Systems which need a deadline
2 - Need notion of dependability and resilience - 98What is an Interactive System1 - Desktop, like Windows 10
- 99What are the properties of Batch Systems1 - Non-preemptive - Jobs run until blocked or complete
2 - Process continues until it ends
3 - SImple schedule - First come first server - 100What happens if there are multiple requests in a batch1 - It will do the shortest job first
2 - We can view the average run time
run time = last run time - 101What is a CPU bound process1 - Spends most of its time doing its work on the processor
2 - Maths applications - 102What is IO Bound processor1 - Spends most of its time doing its work on IO
2 - Small CPu activity
3 - Copying a file, read block - 103What is the process hierarchy1 - When one master process spawns another process and so on
- 104What is Scheduling1 - Moving from one process to the next
- 105What is save current context in scheduling1 - Anything that isnt in memory, you have to save the process otherwise it will be overwritten
- 106What is select next process1 - Select next best process under decision
- 107What is dispatching in scheduling1 - Load up new contents of a new process
2 - New process will just keep running
3 - process will run on that cycle - 108What is a real time processes1 - OS which is aware of real time
- 109What is Soft Real time processes1 - We expect it to respond when a problem occurs
2 - doesnt give a shit about any problems - 110What is hard real time process1 - Deadline are critical
2 - Gives a shit about problems - 111What are Periodic Events1 - Events which are predictable
2 - System never demends more resources - 112What is Aperiodic events1 - Unpredictable events
2 - All resources are maxed out - 113What are Interactive systems1 - The way we switch between processes
2 - processes can coorperate
3 - Pre emptive systems - 114What is a Pre-Emptive schedule1 - Each process has a short period of time before it is removed
- 115What is round robin scheduling1 - Each process has a separate quantum
2 - Runs to the point until interrupt - 116What is priority scheduling1 - Thinking about which process has a priority than the other
2 - - 117What are the device wait queues1 - Take entry from queue, add it on to the runnable queue.
2 - Once process is done, put it back on to the waiting queue - 118What is priority inversion1 - When high priority are able to run but has resources bound it which is being used by a lower priority process
2 - We boost that low priority to make it runnable again - 119What are File systems1 - OS which are visible to users
- 120What is an Access Control in file systems1 - Who is able to read write in the file system
2 - Persmissions - 121What is ownership in file systems1 - Who owns the file
2 - User permissions
3 - Group owners - 122What is the root directory in file systemz1 - Parent of all things in the file system
2 - There will be sub directories in there
3 - Hitting a leaf is either an empty file or a file - 123What are shared files in the file system1 - The ability to create loops in the file system
2 - Allowing links to files - 124What is a Virtual File System1 - Has an overview of what a file system is
2 - Every system must comply with the diagram
3 - If it doesnt comply, then its not a file system - 125How can we allocate space for files1 - Looking at allocating space in memory
- 126What is contiguous allocation1 - We determine the size of the file
2 - Take a sequence of blocks which are big enough for that file - 127What are the benefits and problems with using contiguous allocation1 - Benefits - Sequential meaning we get fast access
2 - Problems - Expansion is very difficult - 128What is the Allocation table1 - Rather than looking at pointers
2 - We have a table which has pointers
3 - Resides in cache memory - 129What is Indexed allocation1 - We have to have a tree structure of what references what
2 - |Does care what the start is
3 - just cares if there is data in them - 130what are the Benefits of indexed allocation1 - We can support holes
- 131What is a single index block1 - Has pointers to real data block which have something in
2 - If there is no pointer, then we assume there is nothing in there - 132What is a multi-index block1 - We just chain indexes up together in a tree
- 133What is an Inode1 - How we hold information about a file
- 134What is the structure of an Inode1 - Index
2 - Owner
3 - Date of creation
4 - Size of file
5 - Reference count - 135What is a reference count1 - An idea of links
2 - We have multiple entries going to a single inode
3 - If an inode has 2 references, the count will be at 2 - 136What are symbolic links1 - File with in a file system which contains a file to a file that exists somewhere
2 - Doesnt change the reference count - 137How do we do a file look up1 - We have to traverse the directories and the inodes in the file system
2 - Scan down the directory till we find the string - 138What is the File Descriptor table1 - Application with in a system
2 - The os needing to know what has happened to the file - 139What is an Inode Table1 - How the unix system maintains caches of data
2 - Cache is built of hashes of information - 140What is Buffering1 - Notion of decoupling of read and write files from the disk itself
2 - If an application wants to read a block number, reads the surrounding blocks
3 - If something goes wrong, file system can be in an inconsistent state - 141What is Efficient Buffering1 - If we are dealing with buffers
2 - When reading blocks, we have to read ahead. - 142What issues come with dynamic allocation1 - Segmentation - Request coming for a number of bytes
2 - - 143What is a block base system1 - Trying to allocate continuous sets of blocks
2 - Dont break a file of bits - 144What is the first fit1 - Always allocate the first region of sufficient size found
- 145What is the best fit1 - Always allocate smallest memory hole of suffiient size
- 146What is the worst fit1 - Always allocate largest memory hole
2 - Idea behind this is to give the greatest chance to get free space
3 -Can re allow the free space - 147What do we do when scheduling multiple processes1 - Using time slicing
2 - Batch processing systems wont matter for this - 148What is first come first served1 - Used in interactive systems
2 - Processes processed on arrival - 149How do we calculate Average Waiting times in first come first serve1 -Dispatch time - Arrival Time
- 150What is round robin Sccheduling1 - Each process in turn, then it goes round agains
2 - Each process has a time to run before we force stop and move onto another process - 151Benefits of Round Robin1 - Wont have to let other processes wait
2 - Long processes would be stopped to allow others to go - 152—
Informationen
- Beschreibung
- Karteikarten am OSFull, erstellt von Shez F am 11/05/2017.
- Erstellt von
- Shez F · Mai 2017
- Aktualisiert
- 3 Feb 2018
- Aufrufe
- 4
- Bewertung