final review monday, may 5th. functional components process manager: creates/removes processes...

24
Final Review Final Review Monday, May 5th Monday, May 5th

Post on 20-Dec-2015

219 views

Category:

Documents


1 download

TRANSCRIPT

Final ReviewFinal Review

Monday, May 5thMonday, May 5th

Functional ComponentsFunctional Components

Process Manager: creates/removes Process Manager: creates/removes processesprocesses

Scheduler: allocates processes to Scheduler: allocates processes to processorsprocessors

Memory Manager: allocates pages, Memory Manager: allocates pages, swaps pages, translates addressesswaps pages, translates addresses

File Manager: handles directories and File Manager: handles directories and file accessfile access

Functional ComponentsFunctional Components

Device Manager: maintains drivers Device Manager: maintains drivers and controls accessand controls access

Network Manager: handles Network Manager: handles transmissionstransmissions

I/O ManagerI/O Manager

Process BlockProcess Block

IDID

ProcessorProcessor

Address space pointerAddress space pointer

PriorityPriority

OwnerOwner

StateState

Key ComponentsKey Components

Address SpaceAddress Space

Program CounterProgram Counter

Instruction StackInstruction Stack

ThreadThread– Contains registersContains registers

Process StatesProcess States

CREATE READYSchedule

RunningTerminate Terminated

HALTEDBlocked

Suspended

Interrupt

Activate

Request

Suspend

Retrieve

Release

Timed out

Scheduling AlgorithmsScheduling AlgorithmsNon-preemptiveNon-preemptive– First Come, First ServedFirst Come, First Served– Shortest Thread NextShortest Thread Next– PriorityPriority– DeadlineDeadline

PreemptivePreemptive– Shortest Thread NowShortest Thread Now– Dynamic PriorityDynamic Priority– Round RobinRound Robin

Pages v SegmentsPages v Segments

Pages are constant size, segments Pages are constant size, segments variablevariable

One page per frame, segments could One page per frame, segments could be clusteredbe clustered

Segment virtual address requires Segment virtual address requires lengthlength

Pages have internal fragmentation, Pages have internal fragmentation, segments have externalsegments have external

FragmentationFragmentation

Internal: “holes” in page from Internal: “holes” in page from released variablesreleased variables

External: freed storage smaller than External: freed storage smaller than next allocationnext allocation

Prevention/alleviation:Prevention/alleviation:– Free space listFree space list– ReallocationReallocation– DefragmentationDefragmentation

Replacement SchemesReplacement Schemes

RandomRandom

FIFOFIFO

Least Recently UsedLeast Recently Used

Least Frequently UsedLeast Frequently Used

OptimalOptimal

ClockClock

File FormatsFile Formats

SequentialSequential

IndexedIndexed

InvertedInverted

Data GatheringData Gathering

Direct pollingDirect polling– Check for next inputCheck for next input

DMADMA– Interactive connection between register Interactive connection between register

and sourceand source

Interrupt-DrivenInterrupt-Driven

Device Data BuffersDevice Data Buffers

SingleSingle

DoubleDouble

CircularCircular

SemaphoresSemaphores

Binary v countingBinary v counting

Wait() checks if semaphore value is 0Wait() checks if semaphore value is 0– Waits until it isWaits until it is– Once 0, decrementsOnce 0, decrements

Signal() increments valueSignal() increments value

MonitorsMonitors

Function to request entry into Function to request entry into MonitorMonitor

Critical data – accessible only within Critical data – accessible only within monitormonitor

Conditional Variable and Conditional Variable and corresponding queuecorresponding queue

Conditions for DeadlockConditions for Deadlock

Mutual ExclusivityMutual Exclusivity

Hold and WaitHold and Wait

Non-preemptionNon-preemption

Circular WaitCircular Wait

Deadlock PreventionDeadlock Prevention

Total Request ObtainTotal Request Obtain

Single Write LockSingle Write Lock

PreemptionPreemption

Resource OrderingResource Ordering

Network LayersNetwork Layers

PhysicalPhysical

Data LinkData Link

NetworkNetwork

TransportTransport

SessionSession

PresentationPresentation

ApplicationApplication

Data ConcernsData Concerns

AvailabilityAvailability

ConfidentialityConfidentiality

IntergrityIntergrity

AuthenticityAuthenticity

Active AttacksActive Attacks

MasqueradeMasquerade

Keystroke captureKeystroke capture

Message ModificationMessage Modification

Denial of ServiceDenial of Service

Malicious IntrusionsMalicious IntrusionsMasqueraderMasqueraderHackerHackerPassword guessingPassword guessingCommunication tappingCommunication tappingTrap doorTrap doorLogic bombLogic bombTrojan HorseTrojan HorseVirusVirusWormWormZombieZombie

Virus StagesVirus Stages

DormantDormant

PropogationPropogation

TriggeringTriggering

ExecutionExecution

Data ProtectionData Protection

Access tokensAccess tokens

EncryptionEncryption

PermissionPermission

Memory keysMemory keys

AuthenticationAuthentication

PasswordsPasswords

IP checkingIP checking

CookiesCookies