1 / 18

Operating System Features

Operating System Features. Operating System Features. Memory protection Temporary file issues Dead space issues Sandboxing Object Request Brokers. Separation. Physical – processes use different physical objects Temporal – processes use same objects at different times

waseemah
Télécharger la présentation

Operating System Features

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Operating System Features

  2. Operating System Features • Memory protection • Temporary file issues • Dead space issues • Sandboxing • Object Request Brokers

  3. Separation • Physical – processes use different physical objects • Temporal – processes use same objects at different times • Logical – processes use objects in constrained space • Cryptographic – processes use only intelligible objects

  4. Levels of Protection • None • Isolation • Share all/Share none • Share via access limitation • Share by capabilities • Limited use

  5. Granularity • Volume (physical storage structure) • Data collection (file, database, memory) • Data element (entry, memory structure) • Field (value within data element) • Word (addressable memory unit) • Byte (character) • Bit (1/0) Detail vs. Efficiency

  6. Mechanisms • Fence Register • Relocation • Base/Bounds Register • Tagged Architecture • Segmentation • Paging • Paged Segmentation • Capability

  7. Fence Register • Address bounding protected and open memory • Protected, typically operating system • Open, typically user • No protection within bounds 0 Operating System 8192 Fence User Program Space 8193 Max

  8. Relocation • Need to shift programs in memory • Programs written using memory 0 and above • Operating system translates to actual location • Retranslate to shift program in memory 0 Operating System 8192 Program A (old) 16384 Program A (new) 24576

  9. Base/Bounds Register • Starting address for program – base register • Max allocated address – bounds register • Changed at context switch 0 Operating System Base 8192 16384 Program A 16384 Bound 20480 Program B 24576

  10. C P C P C P D D D D D D 8192 Store C 0001 0002 0003 Load A 0006 10572 16384 0004 0005 Add B Tagged Architecture • Each word of memory has identified access rights • Rights tested on each access • Typically few distinctions • Data • Pointer • Control

  11. Con. Con. Inst. Data Inst. Data Segmentation Operating System A Table rw • Program pieces • Instructions • Data • Constants • Access <seg, offset> • Store separately • Base • bound • Protect differently • Allow sharing • External fragmentation x Program B Data r Program Instructions B Table Program A Data rw wx Program Constants r

  12. a j i c f e h g b d 2 1 0 3 b e j f j+53 Paging Page table • Equal-size blocks • Access <pg, offset> • Offset > size goes to next page • Difficult to protect • Less fragmentation • Difficult to share <2,53>

  13. Paged Segmentation • Segment references translate to page references • <seg, offset> • <<page of seg>, <page offset>> • Segmentation for sharing/protection • Paging for ease of handling

  14. Capabilities • Unforgeable token • Identity of object requested • Rights to object • Signature of broker • Control of rights transfer • Control of rights propagation • Done at structure level

  15. Temporary File Issues • Temporary file – duration for life of process only • Intended private and non-invasive • Threats • Disclosure • Modification • Misdirection • Protection via atomic transactions

  16. Dead Space Issues • What are default values? • Random • Zero • Whatever was there before • What are cleared values? • Random • Zero • Pattern • No clearing

  17. Sandboxing • Restricted environment for untrusted code • Web code • Email code • Issues of completeness, operations available • Alternative: trust vendor signature(ActiveX) • Alternative: carry proof (lab systems) • Alternative: cryptography (Microsoft)

  18. Object Request Brokers • Object – code and data bundle, limited access methods • Broker – mediate communication between objects • CORBA – industry standard • Still a lot of discussion about protection

More Related