Operating Systems

Operating Systems

Operating Systems Vlastimil Babka Lubomír Bulej Vojtechˇ Horký Petr T ˚uma Operating Systems by Vlastimil Babka, Lubomír Bulej, VojtˇechHorký, and Petr T ˚uma This material is a work in progress that is provided on a fair use condition to support the Charles University Operating Systems lecture. It should not be used for any other purpose than to support the lecture. It should not be copied to prevent existence of outdated copies. It comes without warranty of any kind. This is version c4e8ea9cbfd46e2abdb2d2a46bd50950b29e8edb (modified) generated on 2018-01-11 10:11:55. For the latest version, check http://d3s.mff.cuni.cz/~ceres. Table of Contents 1. Introduction.......................................................................................................................1 Foreword.......................................................................................................................1 Origins..................................................................................................................1 Structure...............................................................................................................1 Historic Perspective.....................................................................................................1 Stone Age.............................................................................................................1 Transistors............................................................................................................3 Low Integration..................................................................................................4 High Integration.................................................................................................5 Basic Concepts..............................................................................................................5 Hardware Building Blocks................................................................................6 Basic Computer Architecture............................................................................7 Advances In Processor Architecture..............................................................10 Advances In Memory Architecture................................................................11 Advances In Bus Architecture........................................................................11 Operating System Structure............................................................................13 2. Process Management......................................................................................................17 Process Alone..............................................................................................................17 Process And Thread Concepts........................................................................17 Starting A Process.............................................................................................17 What Is The Interface.......................................................................................28 Rehearsal............................................................................................................32 Achieving Parallelism................................................................................................32 Multiprocessing On Uniprocessors................................................................32 Multiprocessing On Multiprocessors............................................................35 Cooperative And Preemptive Switching......................................................35 Switching In Kernel Or In Process.................................................................35 Process Lifecycle...............................................................................................36 How To Decide Who Runs..............................................................................36 What Is The Interface.......................................................................................44 Rehearsal............................................................................................................46 Process Communication............................................................................................48 Means Of Communication..............................................................................48 Shared Memory.................................................................................................48 Message Passing...............................................................................................49 Remote Procedure Call....................................................................................52 Rehearsal............................................................................................................54 Process Synchronization............................................................................................55 Synchronization Problems...............................................................................55 Means For Synchronization............................................................................57 Memory Models................................................................................................61 Synchronization And Scheduling..................................................................64 What Is The Interface.......................................................................................66 Rehearsal............................................................................................................70 3. Memory Management....................................................................................................73 Management Among Processes...............................................................................73 Multiple Processes Together...........................................................................73 Separating Multiple Processes........................................................................74 What Is The Interface.......................................................................................82 Rehearsal............................................................................................................82 Allocation Within A Process.....................................................................................84 Process Memory Layout..................................................................................84 Stack....................................................................................................................85 Heap...................................................................................................................87 Rehearsal............................................................................................................92 iii 4. Device Management.......................................................................................................95 Device Drivers............................................................................................................95 Asynchronous Requests..................................................................................95 Synchronous Requests.....................................................................................97 Power Management.........................................................................................98 Rehearsal............................................................................................................98 Devices.........................................................................................................................99 Busses.................................................................................................................99 Clock.................................................................................................................103 Keyboard..........................................................................................................104 Mouse...............................................................................................................104 Video Devices..................................................................................................104 Audio Devices.................................................................................................104 Disk Storage Devices......................................................................................104 Memory Storage Devices...............................................................................109 Network Cards................................................................................................109 Parallel Ports....................................................................................................109 Serial Ports.......................................................................................................109 Printers.............................................................................................................109 Modems............................................................................................................109 Rehearsal..........................................................................................................109 Rehearsal...................................................................................................................110 5. File Subsystem..............................................................................................................111 Abstractions And Operations.................................................................................111

View Full Text

Details

  • File Type
    pdf
  • Upload Time
    -
  • Content Languages
    English
  • Upload User
    Anonymous/Not logged-in
  • File Pages
    164 Page
  • File Size
    -

Download

Channel Download Status
Express Download Enable

Copyright

We respect the copyrights and intellectual property rights of all users. All uploaded documents are either original works of the uploader or authorized works of the rightful owners.

  • Not to be reproduced or distributed without explicit permission.
  • Not used for commercial purposes outside of approved use cases.
  • Not used to infringe on the rights of the original creators.
  • If you believe any content infringes your copyright, please contact us immediately.

Support

For help with questions, suggestions, or problems, please contact us