Upload
claire-berry
View
213
Download
0
Embed Size (px)
Citation preview
File management and Performance
File Systems Architecture
device drivers
physical I/O (PIOCS)
logical I/O (LIOCS)
access methods
File organization and accesssequentialindex-sequentialdirect
File sharing and blocking
File sharing– access rights: read, write, execute, by user
classes.– File/record locking: simultaneous access
Record blocking– Logical vs physical record– unblocked vs blocked record– fixed-lenght vs variable-lenght
IRG
block data
IBG
block data block data
IBG IBG IRG
File allocation File allocation table (FAT) Pre allocation vs dynamic allocation Portion size
– contiguity increases performance– fixed-size portions simplify reallocation– variable-size or small fixed-size minimizes
waste of unused space for overallocation– two main alternatives:
variable, large contiguous portions (performance)
small fixed portions (flexibility) File fragmentation and reorganization
Redundant Array of Independent/ Inexpensive Disks (RAID)
• RAID is a set of physical disk drives viewed by the OS as a single logical drive
• Data are distributed across the physical drives of an array
• Redundant disk capacity is used to store parity information, which guarantees data recovery
• RAID Levels: various levels of performance and redundancy
– the disks are divided in strips: physical blocks, sectors, or similar
– the strips are mapped round robin on the array– I/O requests can be processed in parallel
strip 0strip 4strip 8strip 12
strip 1strip 5strip 9strip 13
strip 2strip 6
strip 10strip 14
strip 3strip 7
strip 11strip 15
Performance How effective is the OS in managing resources?
Overall performance measures:– turnaround time– response time– throughput– workload– capacity– utilization
Bottlenecks
Evaluation Techniques
Timings (hardware) Instruction mix (software mix) Kernel (typical program) Benchmarks (comparison between systems) Synthetic programs Analytical models and simulation Commercial performance packages
Performance enhancement coprocessing parallel processing the RISC vs CISC controversy
– CISC frequently used code as (complex) instructions increase lower level programming productivity extensive market penetration
– RISC very few of the complex instructions are used (empirical
studies) therefore a reduced instruction set is more efficient programs are 20% larger , requiring more disk space and
memory much more registers are needed, but speed of programs
written for RISC is close to twice of equivalent for CISC. facilitate scalability