تازه ها: 
از وای فای رایگان بترسید!

از وای فای رایگان بترسید!

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

مراقب باشید در تلگرام هک نشوید!

مراقب باشید در تلگرام هک نشوید!

آیا تلگرام قابل هک شدن است؟ هک تلگرام چگونه انجام می‌پذیرد؟ چگونه از هک شدن تلگرام خود جلوگیری کنیم؟ هر آنچه که درباره هک تلگرام باید بدانید. تلگرام چقدر امن است؟ بیشتر

ردیابی و فرمت گوشی سرقتی از طریق جیمیل

ردیابی و فرمت گوشی سرقتی از طریق جیمیل

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

ردیابی افراد از طریق شماره موبایل!!!

ردیابی افراد از طریق شماره موبایل!!!

هر آنچه که باید درباره ردیابی و بدست آوردن موقعیت از طریق شماره موبایل بدانید. با تکنولوژی‌های ردیابی آشنا شوید و در دام کلاه برداران نیفتید. در چند سال اخیر با توجه به افزایش چشمگیر استفاده از گوشی‌های هوشمند (اسمارت فون‌ها)، کلاه برداران زیادی هم بازار خود را پیدا کرده و با روش‌های گوناگون سعی می‌کنند کاربران را مورد هدف قرار داده اند بیشتر

افزایش سرعت گوشی اندرویدی

افزایش سرعت گوشی اندرویدی

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

 

سیستم عامل (operating system) چیست؟

سیستم عامل ( operating system = os ) اصلی ترین برنامه سیستمی است که به عنوان رابط بین کاربر و سخت افزار کامپیوتر عمل می‌کند .

سیستم عامل معمولا اولین برنامه‌های است که پس از بوت شدن در حافظه بار می‌شود. پس از بار شدن قسمتی از سیستم عامل بطور دائم در حافظه باقی (Resident)می‌ماند. قسمتهای دیگر با توجه به کاربرد کامپیوتر توسط کاربر از دیسک به حافظه آورده می‌شود.

به قسمت اصلی سیستم عامل که وظایف مهم آن را انجام می‌دهد هسته یا Kernel گفته می‌شود.

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

هر چند که تطبیق نسلهای کامپیوتر با نسلهای سیستم عامل کار درستی نیست ولی این تطبیق که در ادامه انجام می‌دهیم علت ایجاد سیستم عاملهای جدید را مشخص می‌سازد.

 

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

-۱ سیستم عامل استفاده از کامپیوتر را ساده می‌سازد. این بدان معناست که مثلاً کاربر یا برنامه نویس بدون درگیر شدن با مسائل سخت افزاری دیسکها به راحتی فایلی را بر روی دیسک ذخیره و حذف کند . این کار در واقع با به کاربردن دستورات ساده‌ای که فراخوان های سیستمی (System Calls) را صدا می‌زنند انجام پذیرد .
در صورت عدم وجود سیستم عامل کاربرو یا برنامه نویس می‌بایست آشنایی کاملی با سخت افزارهای مختلف کامپیوتر (مثل مونیتور ,فلاپی , کی بورد و غیره) داشته باشدو روتین‌هایی برای خواندن و یا نوشتن آنها به زبانهای سطح پائین بنویسد. از این جنبه به سیستم عامل با عنوان ماشین توسعه یافته(Extended machine ) یا

نکته :ماشین مجازی ( Virtual machine ) یاد می‌شود که واقعیت سخت افزار را از دید برنامه نویسان مخفی می‌سازد.

حتما بخوانید  انواع سیستم عامل از نظر پردازش

-۲ وظیفه دوم سیستم عامل مدیریت منابع  (Resource Management ) می‌باشد, یعنی سیستم عامل باعث استفاده بهینه و سودمند ( اقتصادی ) از منابع سیستم می‌گردد. منظور از منابع پردازنده‌ها ,حافظه‌ها ,دیسکها,ماوس ها , چاپگرها , فایلها , پورتها و غیره هستند. یک سیستم کامپیوتری منابع نرم افزاری و سخت افزاری بسیار دارد که ممکن است در حین اجراء برنامه لازم باشند , سیستم عامل همانند مدیر منابع عمل کرده و آنها را بر حسب نیاز به برنامه‌های مشخصی تخصیص می‌دهد.

 

نرم افزار های کاربردی>>

 

مرورگر وب رزرواسیون   هوایی سیستم بانکی
نرم افزار های سیستمی>> مفسر ها ی فرمان ویرایشگر ها مترجم ها
سیستم عامل
سخت افزار>> ریز برنامه نویسی(BIOS) در ROM
دستگاه های فیزیکی

اجزای اصلی رایانه

 

 

سیستم عامل از دو بخش  مهم  تشکیل شده است:

  • هسته(Kernel)
  • پوسته(Shell)

 

 

 

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

 

پوسته سیستم عامل :فقط واسط بین کاربر ( نه برنامه های کاربردی ) با هسته را دارد و فرامین کاربر را گرفته در صورت صحیح بودن آنها  یکی از توابع درون هسته را برای انجام آن در خواست فراخوانی می کند.

 

پوسته های سیستم عامل:

  • Command Driver   مثل DOS
  • Menu driver مثلDOS SHELL
  • Icon Driver    مثل Windows

 

نکته :در واقع سیستم عامل خود  هسته است. پوسته تقریباٌ ارزش علمی ندارد. Interrupt  Handler ها و Device Driver ها همه در Kernel هستند.

نکته مهم : سیستم عامل،نرم افزاری است که در مود هسته (Kernel mode ) راهبری (Supervisor mode) کار می کند.که این بخش توسط سخت افزار (CPU) در مقابل مداخله کاربران محافظت می شود.

مترجم ها و ویرایشگر ها در مود کاربر(User Mode)  اجرا می شوند.

 

کاربر حق ندارد  که اداره کننده وقفه (Interupt  handler )  دیسک را که بخشی از سیستم عامل است تغییر دهد. ولی  کاربر  آزاد است که برای خودش یک مترجم بنویسد.

 

اهداف سیستم عامل به عنوان مدیر منابع چیست؟

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

 

زبان های پیاده سازی سیستم عامل

سیستم  عاملهای اولیه به زبان اسمبلی نوشته می‌شدند ولی امروز, اکثر سیستم عاملها به زبان C یا C++ نوشته می‌شوند . سیستم عامل UNIX ,OS/2 و   ویندوز بیشتر به زبان C نوشته‌ شده‌اند و قسمت اندکی از آنها به زبان اسمبلی است.
مهمترین مزیت استفاده از زبان سطح بالا برای پیاده سازی سیستم عامل قابلیت حمل آن بر روی انواع کامپیوترها و سادگی پیاده سازی , تغییر و بسط دادن سیستم عامل می‌باشد.

ممکن است ادعا شود پیاده سازی سیستم عامل به زبان C باعث کاهش سرعت و افزایش مصرف حافظه می‌گردد . اگر چه یک برنامه نویس ماهر زبان اسمبلی , می‌تواند برنامه‌های کوچک و بسیار بهینه بنویسد ولی برای برنامه‌های بزرگ یک کامپایلر خوب, می‌تواند تحلیل پیچیده تری نسبت به مغز انسان ماهر انجام داده و بهینه سازی‌های کاملی را انجام دهد.

لذا در عمل برنامه‌های بزرگ C کد اسمبلی بهینه تر و کمتری را تولید می‌کنند, نسبت به حالتی که برنامه‌نویس بخواهد همان کاری به زبان اسمبلی انجام دهد . از طرف دیگر در عمل کارایی اصلی نتیجه ساختمان داده و الگوریتم‌های بهتر است نه نتیجه نوشتن برنامه به زبان اسمبلی .
همچنین اگر چه سیستم عاملها برنامه‌های بزرگی هستند ولی تنها بخش کوچکی از کد آنها, نسبت به کارایی , بحرانی( Critical ) می‌باشد مثل مدیریت حافظه و زمانبندی CPU .لذا پس از آنکه سیستم عامل به زبان سطح بالا نوشته شد و به درستی عمل کرد می توان روتین های گلوگاه ( bottleneck ) و مهم را شناسایی کرد و سپس آنها را با روتین‌های معادل زبان اسمبلی جایگزین نمود.

 

فراخوان سیستمی (System Call ) چیست؟

هرگاه یک نرم افزار سطح کاربر نیاز به دسترسی به منابع سیستم داشته باشد و سخت افزار یکی از Functionهای درون سیستم را فراخوانی می کند. که به این عمل  فراخوان سیستمی (System Call )  می گویند.

 

فرق System call با یک فراخوان Function  عادی چیست؟

  • همه در سطح  کاربرند ولی در حالت فراخوان سیستم  باید مد آن تغییر کند از مد کاربر به مد هسته برود . چرا  مد آن عوض می شود ؟ برای امنیت ، حدود اختیارات برنامه های سطح کاربر خیلی کمتر از سطح هسته است .

 

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

در Unix     فراخوان سیستمی () وجود دارد به نام :Fork()

Fork()  که یک فرآیند  فرزند می سازد و عین پدرش  به شماره فرزند بر می گردد و به فرزند شماره صفر .

و صفر شماره هیچ فرآیندی نیست یعنی فرزند است.

If    fork() !=0

پدر

Else

فرزند

 

نکته :  Source همه Function ها در هسته است.

 

نکته مهم :

سیستم عامل، نرم افزاری است  که در مود هسته (Kernel mode  ) یا راهبری(Supervisor  mode )  کار می کند که این بخش توسط سخت افزار (CPU) در مقابل مداخله کاربران محافظت می شود. مترجم ها و ویرایشگر ها در مود کاربر(User Mode)  اجرا می شوند.

کاربر حق ندارد  که اداره کننده وقفه (Interupt  handler )  دیسک را که بخشی از سیستم عامل است تغییر دهد. ولی  کاربر  آزاد است که برای خودش یک مترجم بنویسد.

حتما بخوانید  نصب ویندوز با استفاده از فلش مموری (بوتیبل کردن فلش مموری)

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *