Operating System Concepts PDF
Document Details
Uploaded by Deleted User
2005
Tags
Summary
This document is a chapter detailing operating system concepts, including operating system goals, objectives, computer system structures, and types of systems.
Full Transcript
Operating system نظام التشغيل Operating system What Operating Systems Do ماذا تفعل أنظمة التشغيل Computer-System Organization تنظيم نظام الكمبيوتر Compute...
Operating system نظام التشغيل Operating system What Operating Systems Do ماذا تفعل أنظمة التشغيل Computer-System Organization تنظيم نظام الكمبيوتر Computer-System Architecture هندسة نظام الكمبيوتر Operating-System Structure هيكل نظام التشغيل Operating-System Operations عمليات نظام التشغيل Process Management ادارة العمليات Memory Management إدارة الذاكرة Storage Management ادارة التخزين Protection and Security الحماية واألمن Distributed Systems االنظمة الموزعة Operating System Concepts – 7th Edition, Jan 12, 2005 1.2 Silberschatz, Galvin and Gagne ©2005 Objectives To provide a grand tour of the major operating systems components. لتقديم جولة كبيرة لمكونات أنظمة التشغيل الرئيسية To provide coverage of basic computer system organization لتوفير تغطية تنظيم نظام الكمبيوتر األساسي Operating System Concepts – 7th Edition, Jan 12, 2005 1.3 Silberschatz, Galvin and Gagne ©2005 What is an Operating System? A program that acts as an intermediary between a user of a computer and the computer hardware. برنامج يعمل كوسيط بين مستخدم للكمبيوتر وجهاز الكمبيوتر Operating system goals: أهداف نظام التشغيل Execute user programs and make solving user problems easier. تنفيذ برامج المستخدم وتسهيل حل مشاكل المستخدم Make the computer system convenient to use. جعل نظام الكمبيوتر مناسبًا لالستخدام Use the computer hardware in an efficient manner. استخدم أجهزة الكمبيوتر بطريقة فعالة Operating System Concepts – 7th Edition, Jan 12, 2005 1.4 Silberschatz, Galvin and Gagne ©2005 Computer System Structure Computer system can be divided into four components يمكن تقسيم نظام الكمبيوتر إلى أربعة مكونات Hardware – provides basic computing resources توفر موارد الحوسبة األساسية- األجهزة CPU, memory, I/O devices اإلخراج/ وحدة المعالجة المركزية والذاكرة وأجهزة اإلدخال Operating system Controls and coordinates use of hardware among various applications and users يتحكم وينسق استخدام األجهزة بين مختلف التطبيقات والمستخدمين Application programs – define the ways in which the system resources are used to solve the computing problems of the users تحديد طرق استخدام موارد النظام لحل مشاكل الحوسبة للمستخدمين- برامج التطبيقات Word processors, compilers, web browsers, database systems, video games ألعاب الفيديو، أنظمة قواعد البيانات، متصفحات الويب، المجمعات، معالجات النصوص Users المستخدمين People, machines, other computers وأجهزة الكمبيوتر األخرى Operating System Concepts – 7th Edition, Jan 12, 2005 1.5 الناس واآلالت Silberschatz, Galvin and Gagne ©2005 Four Components of a Computer System Operating System Concepts – 7th Edition, Jan 12, 2005 1.6 Silberschatz, Galvin and Gagne ©2005 Types of Systems أنواع األنظمة 1. Mainframe Systems أنظمة الحاسبات المركزية Batch Systems أنظمة الدُفعات Multiprogramming Systems أنظمة البرمجة المتعددة Time Sharing Systems أنظمة تقاسم الوقت 2. Desktop Systems أنظمة سطح المكتب 3. Multiprocessor Systems أنظمة المعالجات المتعددة Symmetric Multiprocessors (SMP) )SMP)المعالجات المتماثلة Asymmetric Multiprocessors(AMP) )AMP.( المعالجات المتعددة غير المتماثلة 4. Clustered Systems األنظمة العنقودية -Symmetric clustering التجميع المتماثل -Asymmetric clustering التجميع غير المتماثل 5. Distributed Systems األنظمة الموزعة 6. Real Time Systems أنظمة الوقت الحقيقي 7. Handheld System نظام محمول باليد Operating System Concepts – 7th Edition, Jan 12, 2005 1.7 Silberschatz, Galvin and Gagne ©2005 Mainframe Systems: Batch Systems Early computers were huge, expensive and slow..كانت أجهزة الكمبيوتر القديمة ضخمة ومكلفة وبطيئة Card readers or paper tape for input. Leave program with the operator, get back printout next day. واسترجع النسخة المطبوعة في اليوم، اترك البرنامج مع المشغل.قارئات بطاقات أو شريط ورقي لإلدخال التالي Roles of OS is to load a job, run it, load the next job, run it, etc...تتمثل أدوار نظام التشغيل في تحميل وظيفة وتشغيلها وتحميل الوظيفة التالية وتشغيلها وما إلى ذلك Not very efficient, as job takes a long time to load. حيث تستغرق االمهمة وقتًا طويالً للتحميل، ليست فعالة للغاية Operating System Concepts – 7th Edition, Jan 12, 2005 1.8 Silberschatz, Galvin and Gagne ©2005 Operating System Concepts – 7th Edition, Jan 12, 2005 1.9 Silberschatz, Galvin and Gagne ©2005 Mainframe Systems: Multiprogramming Systems - Maintain a job pool on disk الحفاظ على مجموعة الوظائف على القرص - Keep a subset of jobs in memory..احتفظ بمجموعة فرعية من المهام في الذاكرة - When one job stalls waiting for I/O, switch to a different one.. قم بالتبديل إلى وظيفة أخرى، اإلخراج/ عندما تتوقف إحدى المهام عن انتظار اإلدخال - OS Functions: وظائف نظام التشغيل - Job scheduling جدولة الوظائف - Disk I/O - Memory Management إدارة الذاكرة Operating System Concepts – 7th Edition, Jan 12, 2005 1.10 Silberschatz, Galvin and Gagne ©2005 Mainframe Systems: Time Sharing Time-sharing (or Multitasking) is a logical extension of multiprogramming..تعد مشاركة الوقت (أو تعدد المهام) امتدادًا منطقيًا للبرمجة المتعددة CPU switches between jobs so quickly that users can interact with a program while it is running. (بالتبديل بين الوظائف بسرعة كبيرة بحيث يمكن للمستخدمين التفاعل مع البرنامج أثناء تشغيلهCPU) تقوم وحدة المعالجة المركزية Requires good responsiveness. يتطلب استجابة جيدة When a job stall waiting for I/O, another job can run, giving god CPU utilization. مما يتيح االستفادة الجيدة من وحدة المعالجة المركزية، يمكن تشغيل وظيفة أخرى، اإلخراج/ عندما تتوقف وظيفة في انتظار اإلدخال The job pool is now under the control of the users. أصبح تجمع الوظائف اآلن تحت سيطرة المستخدمين But memory is limited, so this requires swapping some jobs out to disk. One solution is virtual memory, where a job that is only partly in memory can be run. حيث يمكن تشغيل مهمة، أحد الحلول هو الذاكرة االفتراضية. لذلك يتطلب هذا تبديل بعض المهام إلى القرص، لكن الذاكرة محدودة ما زالت في الذاكرة جزئيًا Also requires a file-system for users to store the data from their jobs, and to abstract the details of the disk hardware. وللتخلص من تفاصيل أجهزة القرص، يتطلب أيضًا نظام ملفات للمستخدمين لتخزين البيانات من وظائفهم Operating System Concepts – 7th Edition, Jan 12, 2005 1.11 Silberschatz, Galvin and Gagne ©2005 Desktop Systems Early desktop systems had little memory, and no memory management hardware. كانت أنظمة سطح المكتب القديمة تحتوي على ذاكرة قليلة وال توجد أجهزة إلدارة الذاكرة MS-DOS, Mac OS One user. One primary user task at a time. مهمة مستخدم أساسية واحدة في كل مرة.مستخدم واحد Goals were user convenience and responsiveness. كانت األهداف راحة المستخدم واستجابته As later hardware gained capability, so too did the operating systems. كذلك فعلت أنظمة التشغيل، مع اكتساب األجهزة الحقًا القدرة Gained functionality first designed for mainframes. اكتسبت وظائف مصممة ألول مرة للحواسيب المركزية Operating System Concepts – 7th Edition, Jan 12, 2005 1.12 Silberschatz, Galvin and Gagne ©2005 Multiprocessor Systems )SMP( المعالجة المتعددة المتماثلة Symmetric multiprocessing (SMP) All CPUs are equal, each runs kernel tasks, and communicate with each other as needed. ويتواصل مع بعضها البعض حسب الحاجة، كل منها يدير مهام النواة، جميع وحدات المعالجة المركزية متساوية Eg. Solaris, Linus 2.6, Windows NT, Mac OS X Asymmetric multiprocessing المعالجة المتعددة غير المتماثلة A master CPU controls the system, and runs key kernel tasks. وتقوم بتشغيل مهام النواة الرئيسية، تتحكم وحدة المعالجة المركزية الرئيسية في النظام Other CPUs do what the master tells them. تقوم وحدات المعالجة المركزية األخرى بما يقوله لها المعلم Windows NT appeared, with true multitasking and memory management support. مع دعم حقيقي للمهام المتعددة وإدارة الذاكرة،Windows NT ظهر Early desktop systems had little memory, and no memory management hardware. وال توجد أجهزة إلدارة الذاكرة، كانت أنظمة سطح المكتب القديمة تحتوي على ذاكرة قليلة Operating System Concepts – 7th Edition, Jan 12, 2005 1.13 Silberschatz, Galvin and Gagne ©2005 Distributed Systems أنظمة موزعة Distribute work across a network of computers..توزيع العمل عبر شبكة من أجهزة الكمبيوتر Machines are loosely coupled. تقترن اآلالت بشكل حر Can be local or remote machines.يمكن أن تكون آالت محلية أو بعيدة Each has its own CPU, memory, disk, peripherals, etc. إلخ، لكل منها وحدة المعالجة المركزية والذاكرة والقرص واألجهزة الطرفية الخاصة بها Resource sharing تقاسم الموارد CPU speedup from sharing a task. تسريع وحدة المعالجة المركزية من مشاركة مهمة Load balancing (I/O and CPU speedup) )وتسريع وحدة المعالجة المركزيةI / O ( موازنة الحمل Resilience المرونة Silberschatz, Galvin and Gagne ©2005 Operating System Concepts – 7th Edition, Jan 12, 2005 1.14 Clustered Systems أنظمة مجمعة In between multiprocessor systems and distributed systems. Closely linked via a LAN and share storage..ومشاركة التخزينLAN ترتبط ارتبا ًطا وثيقًا عبر شبكة.بين األنظمة متعددة المعالجات واألنظمة الموزعة Can be used to improve performance or improve reliability..يمكن استخدامها لتحسين األداء أو تحسين الموثوقية Asymmetric clustering: one node runs application, others provide a hot standby. بينما توفر، تعمل إحدى العقدة على تشغيل التطبيق:التجميع غير المتماثل العقدة األخرى وضع استعداد ساخن Symmetric clustering: all nodes run parts of the application. تقوم جميع العقد بتشغيل أجزاء من التطبيق:التجميع المتماثل Silberschatz, Galvin and Gagne ©2005 Operating System Concepts – 7th Edition, Jan 12, 2005 1.15 Real-Time Systems أنظمة الوقت الحقيقي Hard Real-time: Guarantees critical tasks completed on time. يضمن إنجاز المهام الحساسة في الوقت المحدد Delays in system must be bounded. يجب أن تكون تأخيرات النظام في تنفيذ المهام محدودة No virtual memory, limited use of secondary storage, no time sharing. وال مشاركة، واستخدام محدود للتخزين الثانوي، ال توجد ذاكرة افتراضية للوقت Ex. VxWorks Operating System Concepts – 7th Edition, Jan 12, 2005 1.16 Silberschatz, Galvin and Gagne ©2005 Real-Time Systems أنظمة الوقت الحقيقي. Soft Real-time: Critical tasks get priority, and keep this priority until they complete. واحتفظ بهذه األولوية حتى تكتمل، تحظى المهام الحساسة باألولوية Common in general-purpose Oss such as a Unix. Unix مشترك في أنظمة التشغيل لألغراض العامة مثل Uses: multimedia, virtual reality, etc. إلخ، الواقع االفتراضي، الوسائط المتعددة:االستخدامات Operating System Concepts – 7th Edition, Jan 12, 2005 1.17 Silberschatz, Galvin and Gagne ©2005 Hand-Held Systems أنظمة يدوية Personal Digital Assistants (PDAs) (PDA( المساعد الرقمي الشخصي Mobile Phones. الهواتف المحمولة MP3 players. MP3 مشغالت Operating System Concepts – 7th Edition, Jan 12, 2005 1.18 Silberschatz, Galvin and Gagne ©2005 Operating System Definition تعريف نظام التشغيل OS is a resource allocator Manages all resources Decides between conflicting requests for efficient and fair resource use OS is a control program Controls execution of programs to prevent errors and improper use of the computer : يعتبر نظام التشغيل مخصص لموارد الجهاز حيث يقوم بـ.يقوم بإدارة كل موارد الجهاز.يقوم بحل تضاربات التعارض حول استخدام احد موارد الجهاز :يقوم نظام التشغيل أيضا بالتحكم في البرامج من خالل التحكم في تنفيذ البرامج بغرض منع حدوث األخطاء او االستخدام الغير مناسب Operating System Concepts – 7 Edition, Jan 12, 2005 th 1.19.للجهاز Silberschatz, Galvin and Gagne ©2005 بدء تشغيل الكمبيوترComputer Startup bootstrap program is loaded at power-up or reboot عند بدء التشغيل أو إعادة التشغيلbootstrap يتم تحميل برنامج Typically stored in ROM or EPROM, generally known as firmware والمعروف عمو ًما باسم البرامج الثابتة،EPROM أوROM يتم تخزينه عادةً في Initializes all aspects of system البحث عن نظام التشغيل Loads operating system kernel and starts execution يحمل نواة نظام التشغيل بالذاكرة الرئيسية ويبدأ التنفيذ والتحكم بالجهاز Operating System Concepts – 7th Edition, Jan 12, 2005 1.20 Silberschatz, Galvin and Gagne ©2005 Computer System Organization تنظيم أنظمة الكمبيوتر Computer-system operation One or more CPUs, device controllers connect through common bus providing access to shared memory Concurrent execution of CPUs and devices competing for memory cycles تشغيل نظام الكمبيوتر تتصل وحدات تحكم الجهاز بواحدة أو أكثر من وحدات المعالجة المركزية من خالل ناقل مشترك يوفر الوصول إلى الذاكرة المشتركة التنفيذ المتزامن لوحدات المعالجة المركزية واألجهزة التي تتنافس على دورات الذاكرة Operating System Concepts – 7th Edition, Jan 12, 2005 1.21 Silberschatz, Galvin and Gagne ©2005 Computer-System Operation I/O devices and the CPU can execute concurrently. باإلمكان تنفيذ العمليات الموجودة في المعالج باإلضافة الى الطلبات القادمة من وحدات االدخال واإلخراج بشكل متزامن. Each device controller is in charge of a particular device type. كل وحدة تحكم تكون مسؤولة عن نوع معين من ا ألجهزة. Each device controller has a local buffer. كل وحدة تحكم تتضمن مخزن مؤقت محلي. CPU moves data from/to main memory to/from local buffers يعمل المعالج على نقل البيانات من والى الذاكرة الرئيسية ومن والى المخزن المؤقت. I/O is from the device to local buffer of controller. يتم استقبال المدخالت والمخرجات من الجهاز الى المخزن المحلي الخاص بوحدة التحكم التابعة. Device controller informs CPU that it has finished its operation by causing an interrupt. تقوم وحدة التحكم بإبالغ المعالج بأنها قد قامت بإنهاء عملياتها طريق ارسال إشارة مقاطعة للمعالج. Operating System Concepts – 7th Edition, Jan 12, 2005 1.22 Silberschatz, Galvin and Gagne ©2005 Common Functions of Interrupts المهام الشائعة إلشارات المقاطعة Interrupt transfers control to the interrupt service routine generally, through the interrupt vector, which contains the addresses of all the service routines. interrupt service تعمل إشارة المقاطعة على نقل التحكم بشكل عام الى االجراء المسؤول عن خدمات المقاطعة والذي يحتوى عناوين جميع الخدماتinterrupt vector عن طريق الـ،routine Interrupt architecture must save the address of the interrupted instruction.. جميع عناوين التعليمات التي تمت مقطعتهاinterrupt architecture يجب ان تتضمن بنية المقاطعة Incoming interrupts are disabled while another interrupt is being processed to prevent a lost interrupt. في جالة وجود إشارة مقاطعةincommoding interrupts are disabled يتم عرقلة المقاطعات الواردة- lost interrupt أخرى جاري معالجتها من قبل المعالج بغرض منع فقدان إشارات المقاطعة A trap is a software-generated interrupt caused either by an error or a user request.. عبارة عن برنامج يقوم بتوليد إشارة المقاطعة الناتجة اما عن خطاء معين او بناء على طلب المستخدمTarp An operating system is interrupt driven..interrupt driven يعتبر نظام التشغيل مبنى على عمليات المقاطعة interrupt vector interrupt service routine ناقالت المقاطعة االجراء المسؤول عن خدمات المقاطعة Operating System Concepts – 7th Edition, Jan 12, 2005 1.23 Silberschatz, Galvin and Gagne ©2005 Interrupt Handling التعامل مع عمليات المقاطعة The operating system preserves the state of the CPU by storing registers and the program counter. يعمل نظام التشغيل على االحتفاظ بحالة المعالج عن طريق تخزين المسجالت وعداد البرنامج Determines which type of interrupt has occurred: تحديد نوعية المقاطعة التي حدثت polling vectored interrupt system نظام المقاطعة المتجه Separate segments of code determine what action should be taken for each type of interrupt تحدد األجزاء المنفصلة من التعليمات البرمجية اإلجراء الذي يجب اتخاذه لكل نوع من أنواع المقاطعة Operating System Concepts – 7th Edition, Jan 12, 2005 1.24 Silberschatz, Galvin and Gagne ©2005 Interrupt Timeline مقاطعة الجدول الزمني Operating System Concepts – 7th Edition, Jan 12, 2005 1.25 Silberschatz, Galvin and Gagne ©2005 I/O Structure After I/O starts, control returns to user program only upon I/O completion.. يتحول التحكم الى برنامج المستخدم فقط عند اكتمال المدخالت او المخرجات،بعد بدء عملية االدخال او اإلخراج Wait instruction idles the CPU until the next interrupt.يتحول متحسس التعليمات داخل المعالج الى حالة الخمول الى وقت المقاطعة التالية Wait loop (contention for memory access)..يتم تكوين حلقة انتظار للوصول الى الذاكرة At most one I/O request is outstanding at a time, no simultaneous I/O processing.. ال يوجد معالجة متزامنة للمدخالت والمخرجات،يتواجد طلب واحد معلق (مدخالت او مخرجات) في نفس الوقت After I/O starts, control returns to user program without waiting for I/O completion..بعد بدء عملية االدخال أو اإلخراج يعود التحكم الى برنامج المستخدم دون انتظار اكمال عملية االدخال او اإلخراج System call – request to the operating system to allow user to wait for I/O completion.. طلب ُمرسل الى نظام التشغيل بغرض السماح للمستخدم باالنتظار إلكمال عملية االدخال او اإلخراج: نداء النظامSystem Call Device-status table contains entry for each I/O device indicating its type, address, and state. يتضمن جدول حاالت األجهزة مدخالت عن كل جهاز ادخال او اخراج يتضمن النوع والعنوان والحالةDevice-status table.الحالية Operating system indexes into I/O device table to determine device status and to modify table entry to include interrupt. تشير الى جداول حاالت األجهزة لتحديد حالة الجهاز ولتعديل مدخالت الجدول لكي يتمindexes يتضمن نظام التشغيل فهارس.تضمين إشارة المقاطعة Operating System Concepts – 7th Edition, Jan 12, 2005 1.26 Silberschatz, Galvin and Gagne ©2005 Two I/O Methods Synchronous Asynchronous Operating System Concepts – 7th Edition, Jan 12, 2005 1.27 Silberschatz, Galvin and Gagne ©2005 Device-Status Table Operating System Concepts – 7th Edition, Jan 12, 2005 1.28 Silberschatz, Galvin and Gagne ©2005 Storage Structure Direct Memory Access Structure هيكلية الوصول المباشر للذاكرة Used for high-speed I/O devices able to transmit information at close to memory speeds. يتم استخدامها ألجهزة االدخال العالية السرعة القادرة على نقل البيانات بسرعات.عالية مقاربة لسرعات الذاكرة Device controller transfers blocks of data from buffer storage directly to main memory without CPU intervention. على نقل مقاطع البياناتDevice controller تعمل وحدة التحكم بالجهاز مباشرة الى الذاكرةbuffer storage من المخزن المؤقتblocks of data.الرئيسية بدون تدخل المعالج Only one interrupt is generated per block, rather than the one interrupt per byte. يتم انشاء إشارة مقاطعة واحدة لكل مقطع بيانات بدال عن إشارة مقاطعة لكل بت من.البيانات Operating System Concepts – 7th Edition, Jan 12, 2005 1.29 Silberschatz, Galvin and Gagne ©2005 Storage Structure Main memory – only large storage media that the CPU can access directly. تمثل وسائط التخزين التي بإمكان المعالج الوصول اليها بشكل مباشر: Main memory Secondary storage – extension of main memory that provides large nonvolatile storage capacity. عبارة عن امتداد للذاكرة الرئيسية والتي تعمل على توفير مساحات تخزينية قادرة على: Secondary Memory.االحتفاظ بمحتوياتها Magnetic disks – rigid metal or glass platters covered with magnetic recording material : عبارة ان أقراص صلبة معدنية او زجاجية معطاة بمواد تسجيل ذات خاصية مغناطيسية: Magnetic disks Disk surface is logically divided into tracks, which are subdivided into sectors. وكل مسار مقسم على عدة،(tracks ) سطح القرص ُمقسم بشكل منطقي على مسارات:Disk surface.sectors قطاعات فرعية The disk controller determines the logical interaction between the device and the computer.. على تحديد طريقة التفاعل المنطقي بين األداة المرتبطة به والجهاز بشكل عامDisk Controller يعمل الـ Operating System Concepts – 7th Edition, Jan 12, 2005 1.30 Silberschatz, Galvin and Gagne ©2005 Storage Hierarchy التسلسل الهرمي للتخزين Storage systems organized in hierarchy. يتم ترتيب أنظمة التخزين بحسب التالي Speed السرعة Cost التكلفة Volatility مدى القابلية Caching – copying information into faster storage system; main memory can be viewed as a last cache for secondary storage. الذاكرة، يقصد به نسخ المعلومات الى وحدة تخزين اسرع: Cashing لوحدات التخزينCache يمكن اعتبارها بأنها اخرRAM الرئيسية.الثانوية Operating System Concepts – 7th Edition, Jan 12, 2005 1.31 Silberschatz, Galvin and Gagne ©2005 Storage-Device Hierarchy المسجالت الكاش الرام األقراص االلكترونية األقراص المغناطيسية األقراص الضوئية األشرطة المغناطيسية Operating System Concepts – 7th Edition, Jan 12, 2005 1.32 Silberschatz, Galvin and Gagne ©2005 Caching Important principle, performed at many levels in a computer (in hardware, operating )system, software يعتبر الـ Cashingمن المبادئ األساسية التي يتم تنفيذها ضمن مستويات متعددة في جهاز الحاسوب (ضمن المكونات المادية ،ضمن نظام التشغيل ،ضمن البرامج) Information in use copied from slower to faster storage temporarily المعلومات الجاري استخدامها او التي يتم استخدامها بشكل متكرر يتم عمل نسخة مؤقتة منها من الذاكرة األبطئ الى الذاكرة األسرع. Faster storage (cache) checked first to determine if information is there يتم أوال فحص وحدة التخزين األسرع ( )Cacheلتحديد وجود المعلومات المطلوبة فيها )If it is, information used directly from the cache (fast اذا كانت موجودة ،يتم استخدام المعلومات مباشرة منها. If not, data copied to cache and used there اذا لم تكن موجودة فيها ،يتم نسخ المعلومات المطلوبة الى الكاش ومن ثم استخدامها من داخل الكاش. Cache smaller than storage being cached الكاش عادة ما تكون صغيرة مقارنة بالذاكرة التي يتم منها اخذ المعلومات. Cache management importan design problem تعتبر إدارة الكاش احدى المشاكل الهامة في تصميم النظام. Cache size and replacement policy سياسة تحديد حجم الكاش واستبدالها او استبدال محتوياتها. Operating System Concepts – 7th Edition, Jan 12, 2005 1.33 Silberschatz, Galvin and Gagne ©2005 Performance of Various Levels of Storage Movement between levels of storage hierarchy can be explicit or implicit يمكن أن يكون التنقل بين مستويات التسلسل الهرمي للتخزين صري ًحا أو ضمنيًا Operating System Concepts – 7th Edition, Jan 12, 2005 1.34 Silberschatz, Galvin and Gagne ©2005 Performance of Various Levels of Storage أداء مستويات مختلفة من التخزين Movement between levels of storage hierarchy can be explicit or implicit يمكن أن يكون التنقل بين مستويات التسلسل الهرمي للتخزين صري ًحا أو ضمنيًا Operating System Concepts – 7th Edition, Jan 12, 2005 1.35 Silberschatz, Galvin and Gagne ©2005 Migration of Integer A from Disk to Register Multitasking environments must be careful to use most recent value, no matter where it is stored in the storage hierarchy يجب االنتباه عند استخدام القيمة الحديثة:Multitasking environment في بيئة األنظمة ذات المهام المتعددة. بغض النظر عن مكان تخزينه داخل احدى وحدات التخزين،للمتغير Multiprocessor environment must provide cache coherency in hardware such that all CPUs have the most recent value in their cache اوcache coherency تعملي بتوفير كاش ملتحمةMultiprocessor األنظمة ذات المعالجات المتعددة.مرتبطة بالهاردوير بحيث تكون جميع المعالجات تتضمن هذه القيمة داخل الكاش الخاصة بكل منها Distributed environment situation even more complex : يكون الوضع معقد نوعا ما نظرا لـ،في حالة األنظمة الموزعة Several copies of a datum can exist.إمكانية وجود نسخ متعددة من البيانات Operating System Concepts – 7th Edition, Jan 12, 2005 1.36 Silberschatz, Galvin and Gagne ©2005 Operating System Structure هيكلية نظام التشغيل Multiprogramming needed for efficiency تعتبر األنظمة ذات البرمجة المتعددة مفيدة من ناحية الكفاءة ،حيث ان: Single user cannot keep CPU and I/O devices busy at all times ال يمكن لمستخدم واحد جعل المعالج ووحدات االدخال واإلخراج مشغولة طوال الوقت. Multiprogramming organizes jobs (code and data) so CPU always has one to execute تعمل البرمجة المتعددة على تنظيم المهام (األكواد والبيانات) ،وبالتالي فإنه يكون لدى المعالج مهمة واحدة للتنفيذ. A subset of total jobs in system is kept in memory يتم االحتفاظ بمجموعة فرعية من اجمالي المهام في النظام بداخل الذاكرة. One job selected and run via job scheduling يتم اختيار مهمة واحدة وتنفيذها عن طريق جدولة المهام job scheduling When it has to wait (for I/O for example), OS switches to another job عندما تضطر احدى العمليات لالنتظار(مثال :في حالة انتظار استالم مدخالت من قبل المستخدم او انتظار يقوم نظام التشغيل بالتحويل الى مهمة أخرى(إلرسال مخرجات Operating System Concepts – 7th Edition, Jan 12, 2005 1.37 Silberschatz, Galvin and Gagne ©2005 Operating System Structure هيكلية نظام التشغيل Timesharing (multitasking) is logical extension in which CPU switches jobs so frequently that users can interact with each job while it is running, creating interactive computing ،تعتبر األنظمة التشاركية في الوقت (متعددة المهام) امتداد منطقي بحيث يقوم المعالج بالتبديل بين المهام بشكل متكرر : وهو ما يعمل على توفير معالجة تفاعلية.بحيث يكون بإمكان المستخدمين التفاعل من كل مهمة اثناء تنفيذها Response time should be < 1 second.زمن االستجابة بجب ان يكون اقل من ثانية واحدة Each user has at least one program executing in memory process.)Process كل مستخدم يكون لديه على األقل برنامج واحد في حالة تنفيذ داخل الذاكرة (وهو ما يسمى بالعملية If several jobs ready to run at the same time CPU scheduling CPU Scheduling في حالة وجود عدة مهام جاهزة للتنفيذ في نفس الوقت يتم استخدام جدولة المعالج If processes don’t fit in memory, swapping moves them in and out to run بحيث تم نقلهم من والى المعالج،Swapping يتم تنفيذ الـ،في حالة عدم إمكانية استيعاب العمليات داخل الذاكرة.للتنفيذ Virtual memory allows execution of processes not completely in memory بتنفيذ العمليات الغير مكتملة في الذاكرةVirtual memory تسمح الذاكرة الوهمية- Operating System Concepts – 7th Edition, Jan 12, 2005 1.38 Silberschatz, Galvin and Gagne ©2005 Memory Layout for Multiprogrammed System تخطيط الذاكرة لنظام متعدد البرامج Operating System Concepts – 7th Edition, Jan 12, 2005 1.39 Silberschatz, Galvin and Gagne ©2005 Operating-System Operations عمليات نظام التشغيل Interrupt driven by hardware.إشارة المقاطعة يتم ارسالها من خالل المكونات المادية Software error or request creates exception or trap.trap اوexception األخطاء او الطلبات المكونة بواسطة البرمجيات تعمل على انشاء Division by zero, request for operating system service. طلب خدمة من نظام التشغيل،مثل القسمة على صفر Other process problems include infinite loop, processes modifying each other or the operating system. تعمل العمليات على تعديل بعضها او تحاول التعديل في نظام التشغيل،بعض مشاكل العمليات تتضمن الدخول في حلقة ال نهائية Dual-mode operation allows OS to protect itself and other system components. تُمكن نظام التشغيل من حماية نفسة ومكونات األنظمة األخرىDual-Mode عمليات تشغيل الـ User mode and kernel mode وضع المستخدم ووضع النواة Mode bit provided by hardware Provides ability to distinguish when system is running user code or kernel code.kernel mode ومتى يكون في حالة تنفيذ الـSystem code توفير القدرة على التمييز متى يكون النظام في حالة تنفيذ الـ Some instructions designated as privileged, only executable in kernel mode Kernel mode ( قابلة للتنفيذ فقط في الـprivileged )بعض االوامر تم تصميمها كميزة System call changes mode to kernel, return from call resets it to user ،Kernel الخاص بالـmode على تغيير الـSystem call تعمل نداءات النظام Operating System Concepts – 7th Edition, Jan 12, 2005 1.40 Silberschatz, Galvin and Gagne ©2005 Transition from User to Kernel Mode kernel mode الىuser mode التحويل من n Timer to prevent infinite loop / process hogging resources process لمنع الدخول في حلقة ال نهائية او قيام العملية بأخذ اكثر من النصيب المخصص لهاTimer وجود مؤقت : حيث يعمل على، hogging resources l Set interrupt after specific period.ضبط المقاطعة بعد فترة محددة l Operating system decrements counter.يعمل نظام التشغيل على تنقيص العداد l When counter zero generate an interrupt.عندما يصل العداد الى الصفر يتم انشاء المقاطعة l Set up before scheduling process to regain control or terminate program that exceeds allotted time. العميات ليتسلم التحكم من جديد او انهاء تنفيذ البرنامجscheduling process يتم اعداده قبل القيام بجدولة.الذي استنفذ الوقت المتاح له Operating System Concepts – 7th Edition, Jan 12, 2005 1.41 Silberschatz, Galvin and Gagne ©2005 Process Management \ إدارة العمليات A process is a program in execution. It is a unit of work within the system. Program is a passive entity, process is an active entity. passive يعتبر البرنامج وحدة خاملة. داخل النظامunit of work وهي عبارة عن وحدة العمل الرئيسية.تعرف العملية بأنها برنامج اثناء التنفيذ.active entity في حين تمثل العملية الوحدة النشطة،entity Process needs resources to accomplish its task : تحتاج العملية الى تخصيص الموارد التالية،من اجل اكتمال مهمتها CPU, memory, I/O, files Initialization data تهيئة البيانات Process termination requires reclaim of any reusable resources. يتطلب استرداد الموارد القابلة إلعادة االستخدام والتي كانت تستخدمها هذه العمليةProcess Termination Single-threaded process has one program counter specifying location of next instruction to execute تحتوي العملية أحادية الخيوط على عداد برنامج واحد يحدد موقع االمر التالي للتنفيذ داخل البرنامج Process executes instructions sequentially, one at a time, until completion. امر واحد في كل مرة الى نهاية البرنامج،تقوم العملية بتنفيذ االوامر بشكل تسلسلي Multi-threaded process has one program counter per thread تحتوي العملية متعددة الخيوط على عداد برنامج واحد لكل خيط Typically system has many processes, some user, some operating system running concurrently on one or more CPUs. تُنفذ جميعها بشكل متزامن داخل معالج واحد او اكثر. بعضها خاصة بالمستخدمين والبعض خاصة بالنظام،بشكل عام يتضمن الجهاز عدد من العمليات Concurrency by multiplexing the CPUs among the processes / threads عدد وحدات المعالجة المركزية بين العملياتmultiplexing من خالل مضاعفةConcurrency يكون التزامن Threads او الخيوطprocesses Operating System Concepts – 7th Edition, Jan 12, 2005 1.42 Silberschatz, Galvin and Gagne ©2005 Memory Management :إدارة الذاكرة n All data in memory before and after processing.إدارة بيانات الذاكرة قبل وبعد المعالجة n All instructions in memory in order to execute.تخزين كل أوامر البرنامج في الذاكرة بغرض تنفيذها n Memory management determines what is in memory when Optimizing CPU utilization and computer response to users وأين سيتم تخزينه لضمان االستخدام األمثل للمعالج،تعمل إدارة الذاكرة على تحديد ما الذي سيتم تخزينه. وهو ما ينعكس على كيفية استجابة الجهاز للمستخدمOptimizing CPU utilization n Memory management activities :تتمثل مهام إدارة الذاكرة في التالي l Keeping track of which parts of memory are currently being used and by whom.تتبع أجزاء الذاكرة المستخدمة ومن قبل من l Deciding which processes (or parts thereof) and data to move into and out of memory.تحديد العمليات (او أجزاء منها) التي سيتم نقلها من والى الذاكرة l Allocating and deal locating memory space as needed.تخصيص مساحات الذاكرة والغاء تخصيصها حسب الحاجة Operating System Concepts – 7th Edition, Jan 12, 2005 1.43 Silberschatz, Galvin and Gagne ©2005 Storage Managementإدارة التخزين n OS provides uniform, logical view of information storage يعمل نظام التشغيل على توفير عرضا موحدا منطقيا لتخزين المعلومات l Abstracts physical properties to logical storage unit - file.ملخص للخصائص الفيزيائية لوحدة التخزين المنطقية والملفات l Each medium is controlled by device (i.e., disk drive, tape drive) disk, drive, tape ( كل وسيط تخزين يتم التحكم به من بواسطة أداة معينه )drive Varying properties include access speed, capacity, data- transfer rate, access method (sequential or random) ، ومعدل نقل البيانات، والسعة، توفير معلومات متعددة تتضمن سرعة الوصول عشوائية(وطريقة الوصول (متسلسلة أو Operating System Concepts – 7th Edition, Jan 12, 2005 1.44 Silberschatz, Galvin and Gagne ©2005 n File-System management إدارة نظام الملفات l Files usually organized into directories l Access control on most systems to determine who can access what OS activities include تشمل أنشطة نظام التشغيل Creating and deleting files and directories إنشاء وحذف الملفات والدالئل Primitives to manipulate files and dirs Mapping files onto secondary storage تعيين الملفات على التخزين الثانوي Backup files onto stable (non-volatile) storage media )ملفات النسخ االحتياطي على وسائط تخزين مستقرة (غير متطايرة Operating System Concepts – 7th Edition, Jan 12, 2005 1.45 Silberschatz, Galvin and Gagne ©2005 Protection and Security الحماية واألمن n Protection – any mechanism for controlling access of processes or users to resources defined by the OS. عبارة عن أي الية يقوم نظام التشغيل بتوفيرها لضمان التحكم في كيفية وصول العمليات: الحمايةProtection.والمستخدمين لموارد الجهاز n Security – defense of the system against internal and external attacks : الدفاع عن النظام ضد الهجمات الداخلية والخارجية والتي يتوفر منها عدد كبير مثل: االمنSecurity l Huge range, including denial-of-service, worms, viruses, identity theft, theft of service n Systems generally first distinguish among users, to determine who can do what :عادة ما تقوم األنظمة بالتمييز بين المستخدمين لتحديد صالحيات كال منهم l User identities (user IDs, security IDs) include name and associated number, one per user User IDs, Security IDs والتي تتضمن اسم ورقم لكل مستخدم l User ID then associated with all files, processes of that user to determine access control. مع كل الملفات والعمليات الخاصة بهUser Ids يتم ربط الـ،بغرض التحكم في الوصول Operating System Concepts – 7th Edition, Jan 12, 2005 1.46 Silberschatz, Galvin and Gagne ©2005 Group identifier (group ID) allows set of users to be l defined and controls managed, then also associated with each process, file ومن، يسمح بتعريف وإعطاء صالحيات لمجموعة من المستخدمينGroup Ids.ثم تخصيص كل مستخدم بالملفات والعمليات الالزمة له l Privilege escalation allows user to change to effective ID with more rights effective ID يسمح للمستخدم ان يحصل علىPrivilege escalation.مع صالحيات اكثر هشام القاضي/ ترتيب الطالب Operating System Concepts – 7th Edition, Jan 12, 2005 1.47 Silberschatz, Galvin and Gagne ©2005