فایلکو

مرجع دانلود فایل ,تحقیق , پروژه , پایان نامه , فایل فلش گوشی

فایلکو

مرجع دانلود فایل ,تحقیق , پروژه , پایان نامه , فایل فلش گوشی

دانلود مهمترین نقاط آسیب پذیر یونیکس و لینوکس14 169 ص

اختصاصی از فایلکو دانلود مهمترین نقاط آسیب پذیر یونیکس و لینوکس14 169 ص دانلود با لینک مستقیم و پر سرعت .

لینک دانلود و خرید پایین توضیحات

فرمت فایل word  و قابل ویرایش و پرینت

تعداد صفحات: 169

 

مقدمه

سیستم عامل بدون شک مهمترین  نرم افزار در کامپیوتر است . پس از روشن کردن کامپیوتر اولین نرم افزاری که مشاهده می گردد سیستم عامل بوده و آخرین نرم افزاری که  قبل از خاموش کردن کامپیوتر مشاهده خواهد شد، نیز سیستم عامل است . سیستم عامل نرم افزاری است که امکان اجرای تمامی برنامه های کامپیوتری را فراهم می آورد. سیستم عامل با سازماندهی ، مدیریت و کنترل منابع  سخت افزاری امکان استفاده بهینه و هدفمند آنها را فراهم می آورد. سیتم عامل فلسفه بودن سخت افزار را بدرستی تفسیر  و در این راستا امکانات متعدد و ضروری جهت حیات سایر برنامه های کامپیوتری را فراهم می آورد.

تمام کامپیوترها از سیستم عامل استفاده نمی نمایند. مثلا"  اجاق های مایکرویو که در آشپزخانه استفاده شده دارای نوع خاصی از کامپیوتر بوده که از سیستم عامل استفاده نمی نمایند. در این نوع سیستم ها بدلیل انجام عملیات محدود و ساده، نیازی به وجود سیستم عامل نخواهد بود. اطلاعات ورودی و خروجی با استفاده از دستگاههائی نظیر صفحه کلید و نمایشگرهای LCD ، در اختیار سیستم گذاشته می گردند. ماهیت عملیات انجام شده در یک اجاق گاز مایکروویو بسیار محدود  و مختصر است، بنابراین همواره یک برنامه در تمام حالات و اوقات اجراء خواهد شد.

برای سیستم های کامپیوتری که دارای عملکردی بمراتب پیچیده تر از اجاق گاز مایکروویو می باشند، بخدمت گرفتن یک سیستم عامل باعث افزایش کارآئی سیستم و تسهیل در امر پیاده سازی برنامه های کامپیوتری می گردد. تمام کامپیوترهای شخصی دارای سیستم عامل می باشند. ویندوز یکی از متداولترین سیستم های عامل است . یونیکس یکی دیگر از سیستم های عامل مهم در این زمینه است .  صدها نوع سیستم عامل تاکنون با توجه به اهداف متفاوت طراحی و عرضه شده است. سیستم های عامل مختص کامپیوترهای بزرگ، سیستم های روبوتیک، سیستم های کنترلی بلادرنگ ، نمونه هائی در این زمینه می باشند.

سیستم عامل با ساده ترین تحلیل و بررسی دو عملیات اساسی را در کامپیوتر انجام می دهد :

-  مدیریت منابع نرم افزاری و سخت افزاری یک سِستم کامپیوتری را برعهده دارد. پردازنده ، حافظه، فضای ذخیره سازی  نمونه هائی از منابع اشاره شده می باشند .

- روشی پایدار و یکسان برای دستیابی و استفاده  از سخت افزار را بدو ن نیاز از جزئیات عملکرد هر یک از سخت افزارهای موجود را برای برنامه های کامپیوتری فراهم می نماید 

اولین وظیفه یک سیستم عامل،  مدیریت منابع سخت افزاری و نرم افزاری است . برنامه های متفاوت برای دستیابی به منابع سخت افزاری نظیر: پردازنده ، حافظه،  دستگاههای ورودی و خروجی، حافطه های جانبی، در رقابتی سخت شرکت خواهند کرد.  سیستم های عامل بعنوان یک مدیر عادل و مطمئن زمینه استفاده بهینه از منابع موجود را برای هر یک از برنامه های کامپیوتری فراهم می نمایند.

وظیفه دوم یک سیستم عامل ارائه یک رابط ( اینترفیس ) یکسان برای سایر برنامه های کامپیوتری است . در این حالت زمینه استفاده بیش از یک نوع کامپیوتر از سیستم عامل فراهم شده و در صورت بروز تغییرات در سخت افزار سیستم های کامپیوتری نگرانی خاصی از جهت اجرای برنامه وجود نخواهد داشت، چراکه سیستم عامل بعنوان میانجی بین برنامه های کامپیوتری و سخت افزار ایفای وظیفه کرده و مسئولیت مدیریت منابع سخت افزاری به وی سپرده شده است .برنامه نویسان کامپیوتر نیز با استفاده از نقش سیستم عامل بعنوان یک میانجی براحتی برنامه های خود را طراحی و پیاده سازی کرده و در رابطه با اجرای برنامه های نوشته شده بر روی سایر کامپیوترهای مشابه  نگرانی نخواهند داشت . ( حتی اگر میزان حافظه موجود در دو کامپیوتر مشابه نباشد ) . در صورتیکه سخت افزار یک کامپیوتر بهبود و ارتقاء یابد، سیستم عامل این تضمین را ایجاد خواهد کرد که برنامه ها، در ادامه بدون بروز اشکال قادر به ادامه حیات وسرویس دهی خود باشند. مسئولیت مدیریت منابع سخت افزاری برعهده سیتم عامل خواهد بود نه برنامه های کامپیوتری، بنابراین در زمان ارتقای سخت افزار یک کامپیوتر مسئولیت سیتستم عامل در این راستا اولویت خواهد داشت . ویندوز 98 یکی از بهترین نمونه ها در این زمینه است . سیستم عامل فوق بر روی سخت افزارهای متعدد تولید شده توسط تولیدکنندگان متفاوت اجراء می گردد.  ویندوز 98 قادر به مدیریت و استفاده از هزاران نوع چاپگر دیسک و سایر تجهیزات جانبی است .

سیستم های عامل را از بعد نوع کامپیوترهائی که قادر به کنترل آنها بوده و نوع برنامه های کاربردی که قادر به حمایت از آنها می باشند به چهار گروه عمده تقسیم می نمایند.

- سیستم عامل بلادرنگ (RTOS). از این نوع سیستم های عامل برای کنترل  ماشین آلات صنعتی ، تجهیزات علمی و سیستم های صنعتی استفاده می گردد. یک سیستم عامل بلادرنگ دارای امکانات محدود در رابطه با بخش رابط کاربر و برنامه های کاربردی مختص کاربران می باشند.  یکی از بخش های مهم این نوع سیستم های عامل ، مدیریت منابع موجود کامپیوتری بگونه ای است که یک عملیات خاص در زمانی که می بایست ، اجراء خواهند شد. 

- تک کاربره - تک کاره . همانگونه که از عنوان این نوع سیستم های عامل مشخص است، آنها بگونه ای طراحی شده اند که قادر به مدیریت کامپیوتر بصورتی باشند که یک کاربر در هر لحظه قادر به انجام یک کار باشد. سیستم عامل Palm OS برای کامپیوترهای PDA نمونه ای مناسب از یک سیستم عامل مدرن تک کاربره و تک کاره است . 

- تک کاربره - چندکاره . اکثر سیستم های عامل استفاده شده در کامپیوترهای شخصی از این نوع می باشند. ویندوز 98 و MacOS  نمونه هائی در این زمینه بوده که امکان اجرای چندین برنامه بطور همزمان را برای یک کاربر فراهم می نمایند. مثلا" یک کاربر ویندوز 98 قادر به تایپ یک نامه با استفاده از یک واژه پرداز بوده و در همان زمان اقدام به دریافت یک فایل از اینترنت نموده و در همان وضعیت محتویات نامه الکترونیکی خود را برای چاپ بر روی چاپگر ارسال کرده باشد.

- چندکاربره . یک سیستم عامل چند کاربره ، امکان استفاده همزمان چندین کاربر از منابع موجود کامپیوتر را فراهم می آورند. منابع مورد نیاز هر یک از کاربران می بایست توسط سیستم عامل بدرستی مدیریت تا  در صورت بروز اشکال در منابع تخصیص یافته به یک


دانلود با لینک مستقیم


دانلود مهمترین نقاط آسیب پذیر یونیکس و لینوکس14 169 ص

دانلود تحقیق رشته مخابرات با عنوان نرم افزار یونیکس - word

اختصاصی از فایلکو دانلود تحقیق رشته مخابرات با عنوان نرم افزار یونیکس - word دانلود با لینک مستقیم و پر سرعت .

دانلود تحقیق رشته مخابرات با عنوان نرم افزار یونیکس - word


دانلود تحقیق رشته مخابرات با عنوان نرم افزار یونیکس  - word

موضوع:

نرم افزار یونیکس

 

با فرمت قابل ویرایش word

تعداد صفحات: 25 صفحه

تکه های از عناوین متن :

پیشگفتار

سیستم عامل یا os (Operating system ) نرم افزاری است که بعنوان یک رابط بین کاربر و کاربر عمل می کند و مانند یک مدیر بر کلیه عملیات سیستم نظارت دارد و وظیفه آن ارائه یکسری خدمات پر مصرف به استفاده کننده است .

 سیستم عامل بدون شک مهمترین  نرم افزار در کامپیوتر است . پس از روشن کردن کامپیوتر اولین نرم افزاری که مشاهده می گردد سیستم عامل بوده و آخرین نرم افزاری که  قبل از خاموش کردن کامپیوتر مشاهده خواهد شد، نیز سیستم عامل است . سیستم عامل نرم افزاری است که امکان اجرای تمامی برنامه های کامپیوتری را فراهم می آورد. سیستم عامل با سازماندهی ، مدیریت و کنترل منابع  سخت افزاری امکان استفاده بهینه و هدفمند آنها را فراهم می آورد. سیتم عامل فلسفه بودن سخت افزار را بدرستی تفسیر  و در این راستا امکانات متعدد و ضروری جهت حیات سایر برنامه های کامپیوتری را فراهم می آورد.

تمام کامپیوترها از سیستم عامل استفاده نمی کنند. مثلا"  اجاق های مایکرویو که در آشپزخانه استفاده شده دارای نوع خاصی از کامپیوتر بوده که از سیستم عامل استفاده نمیکنند. در این نوع سیستم ها بدلیل انجام عملیات محدود و ساده، نیازی به وجود سیستم عامل نخواهد بود. اطلاعات ورودی و خروجی با استفاده از دستگاههائی نظیر صفحه کلید و نمایشگرهایLCD ، در اختیار سیستم گذاشته می گردند. ماهیت عملیات انجام شده در یک اجاق گاز مایکروویو بسیار محدود  و مختصر است، بنابراین همواره یک برنامه در تمام حالات و اوقات اجراء خواهد شد.

چکیده

یونیکس یک سیستم عامل است که در سال 1960 و 1970 به‌وسیلهٔ گروهی از کارمندان آزمایشگاههای بل متعلق به شرکت اِی‌تی اَند تی (AT&T Bell Labs) شامل کن تامپسون (طراح اصلی و پایه‌گذار) و دنیس ریچی نوشته شد. بتدریچ دیگران نیز به تیم کوچک آن‌ها پیوستند، کسانی مانند داگلاس مَکیلروی.اگر گفته شود یونیکس آغازگر «دوره اطلاعات» و در امتداد آن «عصر اینترنت» است، کوچک‌ترین سخنی به گزافه گفته نشده است. درواقع تا همین امروز هم، تقریباً %100 پیمان‌های مهم و باز که جنبش اینترنت را پدید آورده‌اند، مانند وب، از خوانوادهٔ یونیکس آمده و می‌آیند. اینترنت در آغاز در یونیکس گسترش یافت و تا سال‌ها، واژهٔ «اینترنت» در میان کاربران یونیکس واژه‌ای کاملاً عادی و روزمرّه بود، درحالیکه دیگران حتی این واژه را نشنیده بودند و یا با اکراه تمام به آن بی اعتنائی و حتی آن را مسخره می‌کردند.سیستم‌های یونیکس امروزی به شاخه‌های مختلفی که در مرور زمان توسط AT&T توسعه داده شده، تبدیل گشته است. یونیکس طوری طراحی شده است تا قابل انتقال به هر سیستمی، چند کاره و همچنین چند کاربره باشد. سیستم‌های یونیکس با ایده‌های جدیدی که مطرح کرده‌اند،شناخته می‌‌شوند: پرونده‌های متنی ساده، مترجم‌های خط فرمان و سامانه پرونده‌گردانی (File System) سلسله مراتبی و غیره. در مهندسی نرم افزار، یونیکس به خاطر زبان برنامه‌نویسی سی و فلسفه یونیکس ذکر می‌‌شود.صاحب علامت تجاری یونیکس در حال حاضر open group است.در حالی که مدعی در حال حاضر متن برنامه‌های یونیکس The sco group و Novell است.

ش

و........


دانلود با لینک مستقیم


دانلود تحقیق رشته مخابرات با عنوان نرم افزار یونیکس - word

دانلود پایان نامه رشته کامپیوتر مهمترین نقاط آسیب پذیر یونیکس و لینوکس

اختصاصی از فایلکو دانلود پایان نامه رشته کامپیوتر مهمترین نقاط آسیب پذیر یونیکس و لینوکس دانلود با لینک مستقیم و پر سرعت .

دانلود پایان نامه رشته کامپیوتر مهمترین نقاط آسیب پذیر یونیکس و لینوکس


دانلود پایان نامه رشته کامپیوتر مهمترین نقاط آسیب پذیر یونیکس و لینوکس

متن کامل این مقاله را  با فرمت ورد word دانلود نمائید

 

 مقدمه

سیستم عامل بدون شک مهمترین  نرم افزار در کامپیوتر است . پس از روشن کردن کامپیوتر اولین نرم افزاری که مشاهده می گردد سیستم عامل بوده و آخرین نرم افزاری که  قبل از خاموش کردن کامپیوتر مشاهده خواهد شد، نیز سیستم عامل است . سیستم عامل نرم افزاری است که امکان اجرای تمامی برنامه های کامپیوتری را فراهم می آورد. سیستم عامل با سازماندهی ، مدیریت و کنترل منابع  سخت افزاری امکان استفاده بهینه و هدفمند آنها را فراهم می آورد. سیتم عامل فلسفه بودن سخت افزار را بدرستی تفسیر  و در این راستا امکانات متعدد و ضروری جهت حیات سایر برنامه های کامپیوتری را فراهم می آورد.

تمام کامپیوترها از سیستم عامل استفاده نمی نمایند. مثلا”  اجاق های مایکرویو که در آشپزخانه استفاده شده دارای نوع خاصی از کامپیوتر بوده که از سیستم عامل استفاده نمی نمایند. در این نوع سیستم ها بدلیل انجام عملیات محدود و ساده، نیازی به وجود سیستم عامل نخواهد بود. اطلاعات ورودی و خروجی با استفاده از دستگاههائی نظیر صفحه کلید و نمایشگرهای LCD ، در اختیار سیستم گذاشته می گردند. ماهیت عملیات انجام شده در یک اجاق گاز مایکروویو بسیار محدود  و مختصر است، بنابراین همواره یک برنامه در تمام حالات و اوقات اجراء خواهد شد.

برای سیستم های کامپیوتری که دارای عملکردی بمراتب پیچیده تر از اجاق گاز مایکروویو می باشند، بخدمت گرفتن یک سیستم عامل باعث افزایش کارآئی سیستم و تسهیل در امر پیاده سازی برنامه های کامپیوتری می گردد. تمام کامپیوترهای شخصی دارای سیستم عامل می باشند. ویندوز یکی از متداولترین سیستم های عامل است . یونیکس یکی دیگر از سیستم های عامل مهم در این زمینه است .  صدها نوع سیستم عامل تاکنون با توجه به اهداف متفاوت طراحی و عرضه شده است. سیستم های عامل مختص کامپیوترهای بزرگ، سیستم های روبوتیک، سیستم های کنترلی بلادرنگ ، نمونه هائی در این زمینه می باشند.

سیستم عامل با ساده ترین تحلیل و بررسی دو عملیات اساسی را در کامپیوتر انجام می دهد :

–  مدیریت منابع نرم افزاری و سخت افزاری یک سِستم کامپیوتری را برعهده دارد. پردازنده ، حافظه، فضای ذخیره سازی  نمونه هائی از منابع اشاره شده می باشند .

– روشی پایدار و یکسان برای دستیابی و استفاده  از سخت افزار را بدو ن نیاز از جزئیات عملکرد هر یک از سخت افزارهای موجود را برای برنامه های کامپیوتری فراهم می نماید 

اولین وظیفه یک سیستم عامل،  مدیریت منابع سخت افزاری و نرم افزاری است . برنامه های متفاوت برای دستیابی به منابع سخت افزاری نظیر: پردازنده ، حافظه،  دستگاههای ورودی و خروجی، حافطه های جانبی، در رقابتی سخت شرکت خواهند کرد.  سیستم های عامل بعنوان یک مدیر عادل و مطمئن زمینه استفاده بهینه از منابع موجود را برای هر یک از برنامه های کامپیوتری فراهم می نمایند.

وظیفه دوم یک سیستم عامل ارائه یک رابط ( اینترفیس ) یکسان برای سایر برنامه های کامپیوتری است . در این حالت زمینه استفاده بیش از یک نوع کامپیوتر از سیستم عامل فراهم شده و در صورت بروز تغییرات در سخت افزار سیستم های کامپیوتری نگرانی خاصی از جهت اجرای برنامه وجود نخواهد داشت، چراکه سیستم عامل بعنوان میانجی بین برنامه های کامپیوتری و سخت افزار ایفای وظیفه کرده و مسئولیت مدیریت منابع سخت افزاری به وی سپرده شده است .برنامه نویسان کامپیوتر نیز با استفاده از نقش سیستم عامل بعنوان یک میانجی براحتی برنامه های خود را طراحی و پیاده سازی کرده و در رابطه با اجرای برنامه های نوشته شده بر روی سایر کامپیوترهای مشابه  نگرانی نخواهند داشت . ( حتی اگر میزان حافظه موجود در دو کامپیوتر مشابه نباشد ) . در صورتیکه سخت افزار یک کامپیوتر بهبود و ارتقاء یابد، سیستم عامل این تضمین را ایجاد خواهد کرد که برنامه ها، در ادامه بدون بروز اشکال قادر به ادامه حیات وسرویس دهی خود باشند. مسئولیت مدیریت منابع سخت افزاری برعهده سیتم عامل خواهد بود نه برنامه های کامپیوتری، بنابراین در زمان ارتقای سخت افزار یک کامپیوتر مسئولیت سیتستم عامل در این راستا اولویت خواهد داشت . ویندوز 98 یکی از بهترین نمونه ها در این زمینه است . سیستم عامل فوق بر روی سخت افزارهای متعدد تولید شده توسط تولیدکنندگان متفاوت اجراء می گردد.  ویندوز 98 قادر به مدیریت و استفاده از هزاران نوع چاپگر دیسک و سایر تجهیزات جانبی است .

سیستم های عامل را از بعد نوع کامپیوترهائی که قادر به کنترل آنها بوده و نوع برنامه های کاربردی که قادر به حمایت از آنها می باشند به چهار گروه عمده تقسیم می نمایند.

– سیستم عامل بلادرنگ (RTOS). از این نوع سیستم های عامل برای کنترل  ماشین آلات صنعتی ، تجهیزات علمی و سیستم های صنعتی استفاده می گردد. یک سیستم عامل بلادرنگ دارای امکانات محدود در رابطه با بخش رابط کاربر و برنامه های کاربردی مختص کاربران می باشند.  یکی از بخش های مهم این نوع سیستم های عامل ، مدیریت منابع موجود کامپیوتری بگونه ای است که یک عملیات خاص در زمانی که می بایست ، اجراء خواهند شد. 

– تک کاربره – تک کاره . همانگونه که از عنوان این نوع سیستم های عامل مشخص است، آنها بگونه ای طراحی شده اند که قادر به مدیریت کامپیوتر بصورتی باشند که یک کاربر در هر لحظه قادر به انجام یک کار باشد. سیستم عامل Palm OS برای کامپیوترهای PDA نمونه ای مناسب از یک سیستم عامل مدرن تک کاربره و تک کاره است . 

– تک کاربره – چندکاره . اکثر سیستم های عامل استفاده شده در کامپیوترهای شخصی از این نوع می باشند. ویندوز 98 و MacOS  نمونه هائی در این زمینه بوده که امکان اجرای چندین برنامه بطور همزمان را برای یک کاربر فراهم می نمایند. مثلا” یک کاربر ویندوز 98 قادر به تایپ یک نامه با استفاده از یک واژه پرداز بوده و در همان زمان اقدام به دریافت یک فایل از اینترنت نموده و در همان وضعیت محتویات نامه الکترونیکی خود را برای چاپ بر روی چاپگر ارسال کرده باشد.

– چندکاربره . یک سیستم عامل چند کاربره ، امکان استفاده همزمان چندین کاربر از منابع موجود کامپیوتر را فراهم می آورند. منابع مورد نیاز هر یک از کاربران می بایست توسط سیستم عامل بدرستی مدیریت تا  در صورت بروز اشکال در منابع تخصیص یافته به یک کاربر، بر روند استفاده سایر کاربران از منابع مورد نظر اختلالی ایجاد نگردد. یونیکس، VMS و سیستم های عامل کامپیوترهای بزرگ نظیر MVS نمونه هائی از سیستم های عامل چندکاربره می باشند. 

در اینجا لازم است که به تفاوت های موجود  سیستم های عامل ” چند کاربر ” و ” تک کاربر”  در رابطه با امکانات شبکه ای اشاره گردد.  ویندوز 2000 و ناول قادر به حمایت از صدها و هزاران کاربر شبکه می باشند این نوع سیستم های عامل بعنوان سیستم عامل چند کاربره واقعی در نظر گرفته  نمی شوند.

در ادامه با توجه به شناخت مناسب بوجود آمده در دررابطه با انواع سیستم های عامل به عملیات و وظایف سیستم عامل اشاره می گردد.

وظایف سیستم عامل

پس از روشن نمودن کامپیوتر، لولین برنامه ای که اجراء می گردد ، مجموعه دستوراتی می باشند که در حافظه ROM ذخیره و مسئول بررسی صحت عملکرد امکانات سخت افزاری موجود می باشند. برنامه فوق (POST) ، پردازنده ، حافظه و سایر عناصر سخت افزاری را بررسی خواهد کرد . پس از بررسی موفقیت آمیز برنامه POST ، در ادامه درایوهای ( هارد ، فلاپی ) سیستم فعال خواهند شد. در اکثر کامپیوترها  ، پس از فعال شدن هارد دیسک ، اولین بخش سیستم عامل با نام Bootstrap Loader فعال خواهد شد. برنامه فوق صرفا” دارای یک وظیفه اساسی است : انتقال ( استقرار ) سیستم عامل در حافظه اصلی و امکان اجرای آن . برنامه فوق عملیات متفاوتی را بمنظور استفرار سیستم عامل در حافظه انجام خواهد داد.

سیستم عامل دارای وظایف زیر است :

  • مدیریت پردازنده
  • مدیریت حافظه
  • مدیریت دستگاهها ( ورودی و خروجی )
  • مدیریت حافظه جانبی
  • اینترفیس برنامه های کاربردی
  • رابط کاربر

وظایف شش گانه فوق ، هسته عملیات در اکثر سیستم های عامل است . در ادامه به تشریح  وظایف فوق اشاره می گردد :

 مدیریت پردازنده

مدیریت پردازنده دو وظیفه مهم اولیه زیر را دارد :

  • ایجاد اطمینان که هر پردازه و یا برنامه به میزان مورد نیاز پردازنده را برای تحقق عملیات خود ، اختیار خواهد کرد.
  • استفاده از بیشترین سیکل های پردازنده برای انجام عملیات

ساده ترین واحد نرم افزاری  که سیستم عامل بمنظور زمانبندی پردازنده با آن درگیر خواهد شد ، یک پردازه و یا یک Thread خواهد بود. موقتا” می توان یک پردازه را مشابه یک برنامه در نظر گرفت ، در چنین حالتی مفهوم فوق ( پردازه ) ، بیانگر یک تصویر واقعی از نحوه پردازش های مرتبط با سیستم عامل و سخت افزار نخواهد بود. برنامه های کامپیوتری ( نظیر واژه پردازها ، بازیهای کامپیوتری و …) در حقیقت خود یک پردازه می باشند ، ولی برنامه های فوق ممکن است از خدمات چندین پردازه دیگر استفاده نمایند. مثلا” ممکن است یک برنامه از پردازه ای بمنظور برقراری ارتباط با سایر دستگاههای موجود در کامپیوتر استفاده نماید. پردازه های فراوان دیگری نیز وجود دارد که با توجه به ماهیت عملیات مربوطه ، بدون نیاز به محرک خارجی ( نظیر یک برنامه ) فعالیت های خود را انجام می دهند. یک پردازه ، نرم افزاری است که عملیات خاص و کنترل شده ای را انجام می دهد. کنترل یک پردازه ممکن است توسط کاربر ، سایر برنامه های کاربردی و یا سیستم عامل صورت پذیرد.

سیستم عامل با کنترل و زمانبندی مناسب پردازه ها زمینه استفاده از پردازنده را برای آنان ، فراهم  می نماید. در سیستم های ” تک – کاره ” ، سیستم زمانبندی بسیار روشن و مشخص است . در چنین مواردی،  سیستم عامل امکان اجرای برنامه را فراهم و صرفا” در زمانیکه کاربر اطلاعاتی را وارد و یا سیستم با وقفه ای برخورد نماید ، روند اجراء متوقف خواهد شد. وقفه ، سیگنال های خاص ارسالی توسط نرم افزار و یا سخت افزار برای  پردازنده می باشند. در چنین مواردی منابع صادر کننده وقفه درخواست برقراری یک ارتباط زنده با پردازنده برای اخذ سرویس و یا سایر مسائل بوجود آمده ، را می نمایند. در برخی حالات سیستم عامل پردازه ها  را با یک اولویت خاص زمانبندی می نماید . در چنین حالتی هر یک از پردازه ها با توجه به اولویت نسبت داده شده به آنان ، قادر به استفاده از زمان پردازنده خواهند بود. در اینچنین موارد ، در صورت بروز وقفه ، پردازنده آنها را نادیده گرفته و تا زمان عدم تکمیل عملیات مورد نظر توسط پردازنده ، فرصت پرداختن به وقفه ها وجود نخواهد داشت . بدیهی است با توجه به نحوه برخورد پردازنده ( عدم توجه به وقفه ها ) ، در سریعترین زمان ممکن عملیات و فعالیت جاری پردازنده به اتمام خواهد رسید. برخی از وقفه ها با توجه به اهمیت خود ( نظیر بروز اشکال در حافظه و یا سایر موارد مشابه ) ، قابل اغماص توسط پردازنده نبوده و می بایست صرفنظر از نوع و اهمیت فعالیت جاری ،  سریعا” به وقفه ارسالی پاسخ مناسب را ارائه گردد.

پردازنده ، با توجه به سیاست های اعمال شده سیستم عامل و بر اساس یک الگوریتم خاص ، در اختیار پردازه های متفاوت قرار خواهد گرفت . در چنین مواردی پردازنده مشغول بوده و برای اجراء ، پردازه ای را در اختیار دارد. در زمانیکه پردازنده درگیر یک پردازه است ، ممکن است وقفه هائی از منابع متفاوت نرم افزاری و یا سخت افزاری محقق گردد. در چنین وضعیتی با توجه به اهمیت و جایگاه یک وقفه ، پردازنده برخی از آنها را نادیده گرفته و همچنان به فعالیت جاری خود ادامه داده و در برخی موارد با توجه به اهمیت وقفه ، فعالیت جاری متوقف و سرویس دهی به وقفه آغاز خواهد شد.

در سیستم های عامل ” تک – کاره ” ، وجود وقفه ها و نحوه مدیریت آنها در روند اجرای پردازه ها تاثیر و پیچیدگی های خاص خود را از بعد مدیریتی بدنبال خواهد داشت . در سیستم های عامل |”چند – کاره ” عملیات بمراتب پیچیده تر خواهد بود. در چنین مواردی می بایست این اعتقاد بوجود آید که چندین فعالیت بطور همزمان در حال انجام است . عملا” پردازنده در هر لحظه قادر به انجام یک فعالیت است و بدیهی است رسیدن به مرز اعتقادی فوق ( چندین فعالیت بطور همزمان ) مستلزم یک مدیریت قوی و طی مراحل پیچیده ای خواهد بود.  در چنین حالتی لازم است که پردازنده در مدت زمان یک ثانیه هزاران مرتبه از یک پردازه به پردازه ه دیگر سوئیچ  تا امکان استفاده چندین پردازه از پردازنده را فراهم نماید . در ادامه نحوه انجام عملیات فوق ، تشریح می گردد :

  • یک پردازه بخشی از حافظه RAM را اشغال خواهد کرد
  • پس از استفرار بیش از یک پردازه در حافظه ، پردازنده بر اساس یک زمانبندی خاص ، فرصت اجراء را به یکی از پردازه ها خواهد داد.
  • پردازنده ، بر اساس تعداد سیکل های خاصی پردازه را اجراء خواهد کرد .
  • پس ازاتمام تعداد سیکل های مربوطه ، پردازنده وضعیت پردازه ( مقایر ریجسترها و …) را ذخیره و به پردازه اتمام زمان مربوطه را اعلام می نماید.
  • پردازنده در ادامه اطلاعات ذخیره شده در رابطه با پردازه دیگر را فعال ( ریجسترها و …) و زمینه اجرای پردازه دوم فراهم می گردد.
  • پس ازاتمام تعداد سیکل های مربوطه ، پردازنده وضعیت پردازه ( مقایر ریجسترها و …) را ذخیره و به پردازه اتمام زمان مربوطه را اعلام و مجددا” پردازه اول جهت اجراء فعال خواهد گردید.

تمام اطلاعات مورد نیاز بمنظور مدیریت یک پردازه در  ساختمان داده ای خاص با نام PCB)Process Control Block) ، نگهداری می گردد. پردازنده در زمان سوئیچ بین پردازه ها ، از آخرین وضعیت هر پردازه  با استفاده از اطلاعات ذخیره شده در PCB آگاهی پیدا کرده و در ادامه زمینه اجرای پردازه مورد نظر بر اساس تعداد سیکل های در نظر گرفته شده فراهم خواهد شد. برای هر پردازه یک PCB ایجاد و اطلاعات زیر در آن ذخیره خواهد گردید :

  • یک مشخصه عددی (ID) که نمایانگر پردازه خواهد بود .
  • اشاره گری که نشاندهنده آخرین محل اجرای پردازه است
  • محتویات ریجستر ها
  • وضعیت سوئیچ ها و متغیرهای مربوطه
  • اشاره گره هائی که حد بالا و پایین حافظه مورد نیاز پردازه را مشخص خواهد کرد.
  • اولویت پردازه
  • وضعیت دستگاههای ورودی و خروجی مورد نیاز پردازه

هر زمان که اطلاعات مربوط به پردازه ای تغییر یابد ، ( پردازه از حالت “آماده ” تبدیل به حالت “اجراء ” و یا از حالت ” اجراء ” به حالت “انتظار” و یا “آماده ” سوئیچ نماید ) اطلاعات ذخیره شده در PCB استفاده و بهنگام خواهند شد.

عملیات جایگزینی پردازها،  بدون نظارت و ارتباط مستقیم کاربر انجام و هر پردازه به میزان کافی از زمان پردازنده برای اتمام عملیات خود استفاده خواهد کرد. در این راستا ممکن است ، کاربری قصد اجرای تعداد بسیار زیادی از پردازه ها را بسورت همزمان داشته باشد. در چنین مواردی است ، پردازنده خود نیازمند استفاده از چندین سیکل زمانی برای ذخیره و بازیابی اطلاعات مربوط به هر یک از پردازه ها خواهد بود .در صورتیکه سیستم عامل با دقت طراحی نشده باشد و یا پردازه های زیادی فعالیت خود را آغاز کرده باشند ، مدت زمان زیادی از پردازنده صرف انجام عملیات سوئیچینگ بین پردازها شده و عملا” در روند اجرای پردازها اختلال ایجاد می گردد. وضعیت بوجود آمده فوق را Thrashing می گویند. در چنین مواردی کاربر می بایست نسبت به غیرفعال نمودن برخی از پردازه ها اقدام تا سیستم مجددا” در وضعیت طبیعی قرار گیرد.

یکی از روش هائی که طراحان سیستم عامل از آن استفاده تا امکان ( شانس) تحقق Thrashing را کاهش  دهند ، کاهش نیاز به پردازه های جدید برای انجام فعالیت های متفاوت است . برخی از سیستم های عامل ازیک  ” پردازه -lite ” با نام Thread استفاده می نمایند.  Thread از لحاظ کارآئی همانند یک پردازه معمولی رفتار نموده ولی نیازمند عملیات متفاوت ورودی و خروجی و یا ایجاد ساختمان داده PCB مشابه یک پردازه عادی نخواهد بود. یک پردازه ممکن است باعث اجرای چندین Threads و یا سایر پردازه های دیگر گردد. یک Thread نمی تواند باعث اجرای یک پردازه گردد.

تمام موارد اشاره شده در رابطه با زمانبندی با فرض وجود یک پردازنده مطرح گردیده است . در سیستم هائی که دارای دو و یا بیش از دو پردازنده می باشند ، سیستم عامل حجم عملیات مربوط به هر گردازنده را تنظیم و مناسب ترین روش اجراء برای یک پردازه در نظر گرفته شود .  سیستم های عامل نامتقارن ، از یک پردازنده برای انجام عملیات مربوط به سیستم عامل استفاده و پردازه های مربوط به برنامه های کاربردی را بین سایر پردازه ها تقسیم می نمایند. سیستم های عامل متقارن ،  عملیات مربوط به خود و عملیات مربوط به سایر پردازه ها را بین پردازه های موجود تقسیم می نمایند. در این راستا سعی می گردد که توزیع عملیات برای هر یک از پردازه ها بصورت متعادل انجام گردد.

 

(ممکن است هنگام انتقال از فایل ورد به داخل سایت بعضی متون به هم بریزد یا بعضی نمادها و اشکال درج نشود ولی در فایل دانلودی همه چیز مرتب و کامل است)

متن کامل را می توانید دانلود نمائید

چون فقط تکه هایی از متن پایان نامه در این صفحه درج شده (به طور نمونه)

ولی در فایل دانلودی متن کامل پایان نامه

همراه با تمام ضمائم (پیوست ها) با فرمت ورد word که قابل ویرایش و کپی کردن می باشند

موجود است


دانلود با لینک مستقیم


دانلود پایان نامه رشته کامپیوتر مهمترین نقاط آسیب پذیر یونیکس و لینوکس

پایان نامه رشته کامپیوتر درباره مهمترین نقاط آسیب پذیر یونیکس و لینوکس

اختصاصی از فایلکو پایان نامه رشته کامپیوتر درباره مهمترین نقاط آسیب پذیر یونیکس و لینوکس دانلود با لینک مستقیم و پر سرعت .

پایان نامه رشته کامپیوتر درباره مهمترین نقاط آسیب پذیر یونیکس و لینوکس


پایان نامه رشته کامپیوتر درباره مهمترین نقاط آسیب پذیر یونیکس و لینوکس

تعداد صفحات پایان نامه: 169 صفحه

در این پست می توانید متن کامل این پایان نامه را  با فرمت ورد word دانلود نمائید:

 

 مقدمه

سیستم عامل بدون شک مهمترین  نرم افزار در کامپیوتر است . پس از روشن کردن کامپیوتر اولین نرم افزاری که مشاهده می گردد سیستم عامل بوده و آخرین نرم افزاری که  قبل از خاموش کردن کامپیوتر مشاهده خواهد شد، نیز سیستم عامل است . سیستم عامل نرم افزاری است که امکان اجرای تمامی برنامه های کامپیوتری را فراهم می آورد. سیستم عامل با سازماندهی ، مدیریت و کنترل منابع  سخت افزاری امکان استفاده بهینه و هدفمند آنها را فراهم می آورد. سیتم عامل فلسفه بودن سخت افزار را بدرستی تفسیر  و در این راستا امکانات متعدد و ضروری جهت حیات سایر برنامه های کامپیوتری را فراهم می آورد.

تمام کامپیوترها از سیستم عامل استفاده نمی نمایند. مثلا”  اجاق های مایکرویو که در آشپزخانه استفاده شده دارای نوع خاصی از کامپیوتر بوده که از سیستم عامل استفاده نمی نمایند. در این نوع سیستم ها بدلیل انجام عملیات محدود و ساده، نیازی به وجود سیستم عامل نخواهد بود. اطلاعات ورودی و خروجی با استفاده از دستگاههائی نظیر صفحه کلید و نمایشگرهای LCD ، در اختیار سیستم گذاشته می گردند. ماهیت عملیات انجام شده در یک اجاق گاز مایکروویو بسیار محدود  و مختصر است، بنابراین همواره یک برنامه در تمام حالات و اوقات اجراء خواهد شد.

برای سیستم های کامپیوتری که دارای عملکردی بمراتب پیچیده تر از اجاق گاز مایکروویو می باشند، بخدمت گرفتن یک سیستم عامل باعث افزایش کارآئی سیستم و تسهیل در امر پیاده سازی برنامه های کامپیوتری می گردد. تمام کامپیوترهای شخصی دارای سیستم عامل می باشند. ویندوز یکی از متداولترین سیستم های عامل است . یونیکس یکی دیگر از سیستم های عامل مهم در این زمینه است .  صدها نوع سیستم عامل تاکنون با توجه به اهداف متفاوت طراحی و عرضه شده است. سیستم های عامل مختص کامپیوترهای بزرگ، سیستم های روبوتیک، سیستم های کنترلی بلادرنگ ، نمونه هائی در این زمینه می باشند.

سیستم عامل با ساده ترین تحلیل و بررسی دو عملیات اساسی را در کامپیوتر انجام می دهد :

–  مدیریت منابع نرم افزاری و سخت افزاری یک سِستم کامپیوتری را برعهده دارد. پردازنده ، حافظه، فضای ذخیره سازی  نمونه هائی از منابع اشاره شده می باشند .

– روشی پایدار و یکسان برای دستیابی و استفاده  از سخت افزار را بدو ن نیاز از جزئیات عملکرد هر یک از سخت افزارهای موجود را برای برنامه های کامپیوتری فراهم می نماید 

اولین وظیفه یک سیستم عامل،  مدیریت منابع سخت افزاری و نرم افزاری است . برنامه های متفاوت برای دستیابی به منابع سخت افزاری نظیر: پردازنده ، حافظه،  دستگاههای ورودی و خروجی، حافطه های جانبی، در رقابتی سخت شرکت خواهند کرد.  سیستم های عامل بعنوان یک مدیر عادل و مطمئن زمینه استفاده بهینه از منابع موجود را برای هر یک از برنامه های کامپیوتری فراهم می نمایند.

وظیفه دوم یک سیستم عامل ارائه یک رابط ( اینترفیس ) یکسان برای سایر برنامه های کامپیوتری است . در این حالت زمینه استفاده بیش از یک نوع کامپیوتر از سیستم عامل فراهم شده و در صورت بروز تغییرات در سخت افزار سیستم های کامپیوتری نگرانی خاصی از جهت اجرای برنامه وجود نخواهد داشت، چراکه سیستم عامل بعنوان میانجی بین برنامه های کامپیوتری و سخت افزار ایفای وظیفه کرده و مسئولیت مدیریت منابع سخت افزاری به وی سپرده شده است .برنامه نویسان کامپیوتر نیز با استفاده از نقش سیستم عامل بعنوان یک میانجی براحتی برنامه های خود را طراحی و پیاده سازی کرده و در رابطه با اجرای برنامه های نوشته شده بر روی سایر کامپیوترهای مشابه  نگرانی نخواهند داشت . ( حتی اگر میزان حافظه موجود در دو کامپیوتر مشابه نباشد ) . در صورتیکه سخت افزار یک کامپیوتر بهبود و ارتقاء یابد، سیستم عامل این تضمین را ایجاد خواهد کرد که برنامه ها، در ادامه بدون بروز اشکال قادر به ادامه حیات وسرویس دهی خود باشند. مسئولیت مدیریت منابع سخت افزاری برعهده سیتم عامل خواهد بود نه برنامه های کامپیوتری، بنابراین در زمان ارتقای سخت افزار یک کامپیوتر مسئولیت سیتستم عامل در این راستا اولویت خواهد داشت . ویندوز 98 یکی از بهترین نمونه ها در این زمینه است . سیستم عامل فوق بر روی سخت افزارهای متعدد تولید شده توسط تولیدکنندگان متفاوت اجراء می گردد.  ویندوز 98 قادر به مدیریت و استفاده از هزاران نوع چاپگر دیسک و سایر تجهیزات جانبی است .

سیستم های عامل را از بعد نوع کامپیوترهائی که قادر به کنترل آنها بوده و نوع برنامه های کاربردی که قادر به حمایت از آنها می باشند به چهار گروه عمده تقسیم می نمایند.

– سیستم عامل بلادرنگ (RTOS). از این نوع سیستم های عامل برای کنترل  ماشین آلات صنعتی ، تجهیزات علمی و سیستم های صنعتی استفاده می گردد. یک سیستم عامل بلادرنگ دارای امکانات محدود در رابطه با بخش رابط کاربر و برنامه های کاربردی مختص کاربران می باشند.  یکی از بخش های مهم این نوع سیستم های عامل ، مدیریت منابع موجود کامپیوتری بگونه ای است که یک عملیات خاص در زمانی که می بایست ، اجراء خواهند شد. 

– تک کاربره – تک کاره . همانگونه که از عنوان این نوع سیستم های عامل مشخص است، آنها بگونه ای طراحی شده اند که قادر به مدیریت کامپیوتر بصورتی باشند که یک کاربر در هر لحظه قادر به انجام یک کار باشد. سیستم عامل Palm OS برای کامپیوترهای PDA نمونه ای مناسب از یک سیستم عامل مدرن تک کاربره و تک کاره است . 

– تک کاربره – چندکاره . اکثر سیستم های عامل استفاده شده در کامپیوترهای شخصی از این نوع می باشند. ویندوز 98 و MacOS  نمونه هائی در این زمینه بوده که امکان اجرای چندین برنامه بطور همزمان را برای یک کاربر فراهم می نمایند. مثلا” یک کاربر ویندوز 98 قادر به تایپ یک نامه با استفاده از یک واژه پرداز بوده و در همان زمان اقدام به دریافت یک فایل از اینترنت نموده و در همان وضعیت محتویات نامه الکترونیکی خود را برای چاپ بر روی چاپگر ارسال کرده باشد.

– چندکاربره . یک سیستم عامل چند کاربره ، امکان استفاده همزمان چندین کاربر از منابع موجود کامپیوتر را فراهم می آورند. منابع مورد نیاز هر یک از کاربران می بایست توسط سیستم عامل بدرستی مدیریت تا  در صورت بروز اشکال در منابع تخصیص یافته به یک کاربر، بر روند استفاده سایر کاربران از منابع مورد نظر اختلالی ایجاد نگردد. یونیکس، VMS و سیستم های عامل کامپیوترهای بزرگ نظیر MVS نمونه هائی از سیستم های عامل چندکاربره می باشند. 

در اینجا لازم است که به تفاوت های موجود  سیستم های عامل ” چند کاربر ” و ” تک کاربر”  در رابطه با امکانات شبکه ای اشاره گردد.  ویندوز 2000 و ناول قادر به حمایت از صدها و هزاران کاربر شبکه می باشند این نوع سیستم های عامل بعنوان سیستم عامل چند کاربره واقعی در نظر گرفته  نمی شوند.

در ادامه با توجه به شناخت مناسب بوجود آمده در دررابطه با انواع سیستم های عامل به عملیات و وظایف سیستم عامل اشاره می گردد.

وظایف سیستم عامل

پس از روشن نمودن کامپیوتر، لولین برنامه ای که اجراء می گردد ، مجموعه دستوراتی می باشند که در حافظه ROM ذخیره و مسئول بررسی صحت عملکرد امکانات سخت افزاری موجود می باشند. برنامه فوق (POST) ، پردازنده ، حافظه و سایر عناصر سخت افزاری را بررسی خواهد کرد . پس از بررسی موفقیت آمیز برنامه POST ، در ادامه درایوهای ( هارد ، فلاپی ) سیستم فعال خواهند شد. در اکثر کامپیوترها  ، پس از فعال شدن هارد دیسک ، اولین بخش سیستم عامل با نام Bootstrap Loader فعال خواهد شد. برنامه فوق صرفا” دارای یک وظیفه اساسی است : انتقال ( استقرار ) سیستم عامل در حافظه اصلی و امکان اجرای آن . برنامه فوق عملیات متفاوتی را بمنظور استفرار سیستم عامل در حافظه انجام خواهد داد.

سیستم عامل دارای وظایف زیر است :

  • مدیریت پردازنده
  • مدیریت حافظه
  • مدیریت دستگاهها ( ورودی و خروجی )
  • مدیریت حافظه جانبی
  • اینترفیس برنامه های کاربردی
  • رابط کاربر

وظایف شش گانه فوق ، هسته عملیات در اکثر سیستم های عامل است . در ادامه به تشریح  وظایف فوق اشاره می گردد :

 مدیریت پردازنده

مدیریت پردازنده دو وظیفه مهم اولیه زیر را دارد :

  • ایجاد اطمینان که هر پردازه و یا برنامه به میزان مورد نیاز پردازنده را برای تحقق عملیات خود ، اختیار خواهد کرد.
  • استفاده از بیشترین سیکل های پردازنده برای انجام عملیات

ساده ترین واحد نرم افزاری  که سیستم عامل بمنظور زمانبندی پردازنده با آن درگیر خواهد شد ، یک پردازه و یا یک Thread خواهد بود. موقتا” می توان یک پردازه را مشابه یک برنامه در نظر گرفت ، در چنین حالتی مفهوم فوق ( پردازه ) ، بیانگر یک تصویر واقعی از نحوه پردازش های مرتبط با سیستم عامل و سخت افزار نخواهد بود. برنامه های کامپیوتری ( نظیر واژه پردازها ، بازیهای کامپیوتری و …) در حقیقت خود یک پردازه می باشند ، ولی برنامه های فوق ممکن است از خدمات چندین پردازه دیگر استفاده نمایند. مثلا” ممکن است یک برنامه از پردازه ای بمنظور برقراری ارتباط با سایر دستگاههای موجود در کامپیوتر استفاده نماید. پردازه های فراوان دیگری نیز وجود دارد که با توجه به ماهیت عملیات مربوطه ، بدون نیاز به محرک خارجی ( نظیر یک برنامه ) فعالیت های خود را انجام می دهند. یک پردازه ، نرم افزاری است که عملیات خاص و کنترل شده ای را انجام می دهد. کنترل یک پردازه ممکن است توسط کاربر ، سایر برنامه های کاربردی و یا سیستم عامل صورت پذیرد.

سیستم عامل با کنترل و زمانبندی مناسب پردازه ها زمینه استفاده از پردازنده را برای آنان ، فراهم  می نماید. در سیستم های ” تک – کاره ” ، سیستم زمانبندی بسیار روشن و مشخص است . در چنین مواردی،  سیستم عامل امکان اجرای برنامه را فراهم و صرفا” در زمانیکه کاربر اطلاعاتی را وارد و یا سیستم با وقفه ای برخورد نماید ، روند اجراء متوقف خواهد شد. وقفه ، سیگنال های خاص ارسالی توسط نرم افزار و یا سخت افزار برای  پردازنده می باشند. در چنین مواردی منابع صادر کننده وقفه درخواست برقراری یک ارتباط زنده با پردازنده برای اخذ سرویس و یا سایر مسائل بوجود آمده ، را می نمایند. در برخی حالات سیستم عامل پردازه ها  را با یک اولویت خاص زمانبندی می نماید . در چنین حالتی هر یک از پردازه ها با توجه به اولویت نسبت داده شده به آنان ، قادر به استفاده از زمان پردازنده خواهند بود. در اینچنین موارد ، در صورت بروز وقفه ، پردازنده آنها را نادیده گرفته و تا زمان عدم تکمیل عملیات مورد نظر توسط پردازنده ، فرصت پرداختن به وقفه ها وجود نخواهد داشت . بدیهی است با توجه به نحوه برخورد پردازنده ( عدم توجه به وقفه ها ) ، در سریعترین زمان ممکن عملیات و فعالیت جاری پردازنده به اتمام خواهد رسید. برخی از وقفه ها با توجه به اهمیت خود ( نظیر بروز اشکال در حافظه و یا سایر موارد مشابه ) ، قابل اغماص توسط پردازنده نبوده و می بایست صرفنظر از نوع و اهمیت فعالیت جاری ،  سریعا” به وقفه ارسالی پاسخ مناسب را ارائه گردد.

پردازنده ، با توجه به سیاست های اعمال شده سیستم عامل و بر اساس یک الگوریتم خاص ، در اختیار پردازه های متفاوت قرار خواهد گرفت . در چنین مواردی پردازنده مشغول بوده و برای اجراء ، پردازه ای را در اختیار دارد. در زمانیکه پردازنده درگیر یک پردازه است ، ممکن است وقفه هائی از منابع متفاوت نرم افزاری و یا سخت افزاری محقق گردد. در چنین وضعیتی با توجه به اهمیت و جایگاه یک وقفه ، پردازنده برخی از آنها را نادیده گرفته و همچنان به فعالیت جاری خود ادامه داده و در برخی موارد با توجه به اهمیت وقفه ، فعالیت جاری متوقف و سرویس دهی به وقفه آغاز خواهد شد.

در سیستم های عامل ” تک – کاره ” ، وجود وقفه ها و نحوه مدیریت آنها در روند اجرای پردازه ها تاثیر و پیچیدگی های خاص خود را از بعد مدیریتی بدنبال خواهد داشت . در سیستم های عامل |”چند – کاره ” عملیات بمراتب پیچیده تر خواهد بود. در چنین مواردی می بایست این اعتقاد بوجود آید که چندین فعالیت بطور همزمان در حال انجام است . عملا” پردازنده در هر لحظه قادر به انجام یک فعالیت است و بدیهی است رسیدن به مرز اعتقادی فوق ( چندین فعالیت بطور همزمان ) مستلزم یک مدیریت قوی و طی مراحل پیچیده ای خواهد بود.  در چنین حالتی لازم است که پردازنده در مدت زمان یک ثانیه هزاران مرتبه از یک پردازه به پردازه ه دیگر سوئیچ  تا امکان استفاده چندین پردازه از پردازنده را فراهم نماید . در ادامه نحوه انجام عملیات فوق ، تشریح می گردد :

  • یک پردازه بخشی از حافظه RAM را اشغال خواهد کرد
  • پس از استفرار بیش از یک پردازه در حافظه ، پردازنده بر اساس یک زمانبندی خاص ، فرصت اجراء را به یکی از پردازه ها خواهد داد.
  • پردازنده ، بر اساس تعداد سیکل های خاصی پردازه را اجراء خواهد کرد .
  • پس ازاتمام تعداد سیکل های مربوطه ، پردازنده وضعیت پردازه ( مقایر ریجسترها و …) را ذخیره و به پردازه اتمام زمان مربوطه را اعلام می نماید.
  • پردازنده در ادامه اطلاعات ذخیره شده در رابطه با پردازه دیگر را فعال ( ریجسترها و …) و زمینه اجرای پردازه دوم فراهم می گردد.
  • پس ازاتمام تعداد سیکل های مربوطه ، پردازنده وضعیت پردازه ( مقایر ریجسترها و …) را ذخیره و به پردازه اتمام زمان مربوطه را اعلام و مجددا” پردازه اول جهت اجراء فعال خواهد گردید.

تمام اطلاعات مورد نیاز بمنظور مدیریت یک پردازه در  ساختمان داده ای خاص با نام PCB)Process Control Block) ، نگهداری می گردد. پردازنده در زمان سوئیچ بین پردازه ها ، از آخرین وضعیت هر پردازه  با استفاده از اطلاعات ذخیره شده در PCB آگاهی پیدا کرده و در ادامه زمینه اجرای پردازه مورد نظر بر اساس تعداد سیکل های در نظر گرفته شده فراهم خواهد شد. برای هر پردازه یک PCB ایجاد و اطلاعات زیر در آن ذخیره خواهد گردید :

  • یک مشخصه عددی (ID) که نمایانگر پردازه خواهد بود .
  • اشاره گری که نشاندهنده آخرین محل اجرای پردازه است
  • محتویات ریجستر ها
  • وضعیت سوئیچ ها و متغیرهای مربوطه
  • اشاره گره هائی که حد بالا و پایین حافظه مورد نیاز پردازه را مشخص خواهد کرد.
  • اولویت پردازه
  • وضعیت دستگاههای ورودی و خروجی مورد نیاز پردازه

هر زمان که اطلاعات مربوط به پردازه ای تغییر یابد ، ( پردازه از حالت “آماده ” تبدیل به حالت “اجراء ” و یا از حالت ” اجراء ” به حالت “انتظار” و یا “آماده ” سوئیچ نماید ) اطلاعات ذخیره شده در PCB استفاده و بهنگام خواهند شد.

عملیات جایگزینی پردازها،  بدون نظارت و ارتباط مستقیم کاربر انجام و هر پردازه به میزان کافی از زمان پردازنده برای اتمام عملیات خود استفاده خواهد کرد. در این راستا ممکن است ، کاربری قصد اجرای تعداد بسیار زیادی از پردازه ها را بسورت همزمان داشته باشد. در چنین مواردی است ، پردازنده خود نیازمند استفاده از چندین سیکل زمانی برای ذخیره و بازیابی اطلاعات مربوط به هر یک از پردازه ها خواهد بود .در صورتیکه سیستم عامل با دقت طراحی نشده باشد و یا پردازه های زیادی فعالیت خود را آغاز کرده باشند ، مدت زمان زیادی از پردازنده صرف انجام عملیات سوئیچینگ بین پردازها شده و عملا” در روند اجرای پردازها اختلال ایجاد می گردد. وضعیت بوجود آمده فوق را Thrashing می گویند. در چنین مواردی کاربر می بایست نسبت به غیرفعال نمودن برخی از پردازه ها اقدام تا سیستم مجددا” در وضعیت طبیعی قرار گیرد.

یکی از روش هائی که طراحان سیستم عامل از آن استفاده تا امکان ( شانس) تحقق Thrashing را کاهش  دهند ، کاهش نیاز به پردازه های جدید برای انجام فعالیت های متفاوت است . برخی از سیستم های عامل ازیک  ” پردازه -lite ” با نام Thread استفاده می نمایند.  Thread از لحاظ کارآئی همانند یک پردازه معمولی رفتار نموده ولی نیازمند عملیات متفاوت ورودی و خروجی و یا ایجاد ساختمان داده PCB مشابه یک پردازه عادی نخواهد بود. یک پردازه ممکن است باعث اجرای چندین Threads و یا سایر پردازه های دیگر گردد. یک Thread نمی تواند باعث اجرای یک پردازه گردد.

تمام موارد اشاره شده در رابطه با زمانبندی با فرض وجود یک پردازنده مطرح گردیده است . در سیستم هائی که دارای دو و یا بیش از دو پردازنده می باشند ، سیستم عامل حجم عملیات مربوط به هر گردازنده را تنظیم و مناسب ترین روش اجراء برای یک پردازه در نظر گرفته شود .  سیستم های عامل نامتقارن ، از یک پردازنده برای انجام عملیات مربوط به سیستم عامل استفاده و پردازه های مربوط به برنامه های کاربردی را بین سایر پردازه ها تقسیم می نمایند. سیستم های عامل متقارن ،  عملیات مربوط به خود و عملیات مربوط به سایر پردازه ها را بین پردازه های موجود تقسیم می نمایند. در این راستا سعی می گردد که توزیع عملیات برای هر یک از پردازه ها بصورت متعادل انجام گردد.

 

(ممکن است هنگام انتقال از فایل ورد به داخل سایت بعضی متون به هم بریزد یا بعضی نمادها و اشکال درج نشود ولی در فایل دانلودی همه چیز مرتب و کامل است)

متن کامل را می توانید دانلود نمائید

چون فقط تکه هایی از متن پایان نامه در این صفحه درج شده (به طور نمونه)

ولی در فایل دانلودی متن کامل پایان نامه

همراه با تمام ضمائم (پیوست ها) با فرمت ورد word که قابل ویرایش و کپی کردن می باشند

موجود است

 


دانلود با لینک مستقیم


پایان نامه رشته کامپیوتر درباره مهمترین نقاط آسیب پذیر یونیکس و لینوکس

دانلود مقاله سیستم عامل یونیکس - 52 صفحه ای

اختصاصی از فایلکو دانلود مقاله سیستم عامل یونیکس - 52 صفحه ای دانلود با لینک مستقیم و پر سرعت .

دانلود مقاله سیستم عامل یونیکس - 52 صفحه ای


دانلود مقاله سیستم عامل یونیکس - 52 صفحه ای

یونیکس

همه چیز در مورد سیستم عامل یونیکس

 
 

 

 

لینک پرداخت و دانلود *پایین مطلب* 

فرمت فایل:Word (قابل ویرایش و آماده پرینت)

تعداد صفحه:52

چکیده :

کوچک زیباست . این اساس یونیکس است. برای درک مفهوم این جمله باید سیستم عاملهای نسل سوم را ( که یونیکس نیز از آنهاست) به یاد آورید . سیستم های دایناسورواری بودند که برای انجام همه کار طراحی شده بودند . سیستم عامل ماشینهای IBM 360 نمونه خوبی در این مقوله است. سیستم عاملی که توان شبیه سازی تقریبا تمامی سیستم های عرضه شده تا قبل از خود را داشت و فهرست اشکالات آن یک دفتر به قطر دفتر راهنمای تلفن را تشکیل می داد! ساختارهای اطلاعاتی غول آسا سیستم های ذخیره سازی پرونده بسیار پیچیده زبانهای برنامه نویسیی چون پی ال وان و کوبول که کاربران را تنها در یک سو جهت می داد و در کل دیکتارتوری IBM که هر استفاده کننده ای را در شبکه ایغول آسا اسیر می کرد. تیم های برنامه نوسی IBM که چون خدایان غیر قابل دسترسی بودند و همه جا با احترام درباره آنها صحبت می شد. چیزی که هیچ کس حتی جرات فکر کردن درباره آن را نمی کرد اصلاح در کاری بود که IBM و دیگر پیروان آن عرضه می کردند. دورانی که یک برنامه نوسی حرفه ای سیستم، مدت زمان درازی را فقط برای یادگیری سیستم عامل صرف می کرد و با احساس شرم اشکالات سیستم عامل را اگر از کم هوشی خود نمی دانست به IBM اطلاع می داد. چه بسیار برنامه های بزرگ تجاری که دوباره نویسی می شدند، زیرا سیست معامل امکان اتصال برنامههای دیگر را به آنها نمی داد.

به هر حال یونیکس وارد بازار شد. سیستم عاملی که همه چیز در آن به هم شبیه بود، نحوه چاپ روی چاپگر نوشتن روی صفحه پایانی ویا ذخیره اطلاعات در پرونده ها همه و همه به یک صورت انجام می پذیرفت. و از همه مهمتر لیست برنامه سیستم عامل را در هر کتابخانه ای می شد پیدا کرد. برنام های یونیکس به راحتی می توانند ورودی و خروجی خود را به برنامه های دیگر بدهند و بدین صورت هیچگاه نیازی به برنامه های غول آسا پیدا نمی شود. هر سیستمی هر چقدر هم پیچیده باشد می تواند از مجموعه از برنامه های کوچک به وجود آید که ورودی و خروجی خود را به یکدیگر متصل نموده اند.

برای به دست آوردن دیدی کلی از یونیکس، شناخت عوامل زیر ضروری است:

1- پیکر بندی سیستم عامل: هسته مرکزی سیستم عامل یونیکس جز کوچکی از آن را تشکیل می دهد ولی ای جز از اهمیت اساسی برخوردار استکه رابط کاربر و سیستم عامل می باشد و در شکل 1 مشهود است.

این ساختار کلی شبیه به ساختار PC-DOS است. Kernal یا هسته مرکزی در آنجا از دو پرونده IBMBIO.sys و IBMDOS.sys تشکیل می شود و پیوست پرونده ای به نام command.com است. تفاوت در ویژگیهای هسته مرکزی و قدرت بسیار بیشتر پوسته های یونیکس است. اولا هر سیستم یونیکس دارای چند پوسته است که کاربر می تواند هر کدام را که بخواهد انتخاب کند. (پوسته استاندارد، پوسته محدود، پوسته تصویری، پوسته C، پوسته UUCP) هر کدام از این پوسته ها قابلیت های متفاوتی دارند.

و...

NikoFile


دانلود با لینک مستقیم


دانلود مقاله سیستم عامل یونیکس - 52 صفحه ای