Chapter 3 Security Engineering Flashcards
ISO/IEC/IEEE 42010
systems and software engineering – architecture description (outlines specifications for system architecture frameworks and architecture languages)
What is an architecture view?
Architecture views expresses architects decision regarding each stakeholders concerns
Each view confirms to a particular viewpoint (eg Logical, physical, structural)
Baking in vs Bolting on security
Baking in : At architecture phase
Bolting on: At development phase
What do general registers hold
variables and temporary data
What do special registers hold
program counter
stack pointer
program status word
What does program counter register hold?
memory address of next instruction to be fetched
what is the significance of program status word
PSW holds different bits, one of the bits indicates if CPU should be in user mode or privileged mode
What are the 6 different types of RAM
- Static
- Dynamic
- Synchronous
- EDO DRAM
- Burst EDO DRAM
- Double data rate DRAM
What are the characteristics of Static RAM
- Fast
- takes lot of space
- more costly
- uses transistors
What are the characteristics of Dynamic RAM
- slow
- less space
- less costly
- uses capacitors
What are the characteristics of Synchronous RAM
Synchronises clock of RAM with that of CPU for faster access
What are the characteristics of EDO DRAM
Has a look ahead feature to access data while first one is being sent to CPU
In Burst EDO DRAM, data can be sent in bursts of 4 blocks
What are the characteristics of Double Data Rate DRAM
Reads on both clock pulses, effectively doubling speed
What are the two common memory protection techniques
Address Space Layout Randomisation (ASLR)
Data Execution Prevention (DEP)
What is multi-tasking
multiple programs loaded in memory at same time
AND
multiple programs executed simultaneously by CPU
What is difference between multi-tasking and multi-programming
To be checked
Asymmetric multi-processisng
Multiple CPUs can be used for processing at same time
Specific applications dedicated to one CPU
Good for time sensitive applications
What is Thrashing
when a computer spends more time moving data from one small portion of memory to other rather than processing the data
What are the different types of memory addresses
Physical memory addresses used by CPU: Absolute addresses
Addresses used by software : Logical
Known address with offset : Relative addresses
Co-operative vs pre-emptive multi-tasking
processes voluntarily release resources vs forcefully (CPU decides amount of time)
What is process spawning
creating new child processes is referred to as spawning processes
eg in linux/unix - command interpreter is a process itself and within it when commnads are executed like grep etc, they spawn new processes with characteristics similar to the parent process but with its own memory space
In what states can a process be in?
- Blocked state – waiting for inputs
- Ready state – waiting to send instructions to CPU
- Running state – being executed by CPU
What are the responsibilities of Operating System
- Creating new processes
- Assigning them resources
- Synchronizing communication
- Making sure nothing insecure is taking place
What does the OS Process table contain
- One entry per process in the table
- State of the process
- Stack pointer
- Memory allocation
- Program counter
- Status of open files