جلسه اول سیستم عامل (مروری بر معماری و ثبات های معروفش)

خوب می خوام خلاصه ای از جلسه اول سیستم عامل براتون بنویسم که اول قسمتی از معماری را گفته و بعد در ویرگول های بعد به سراغ اصل سیستم عامل می روی یُم :)

حتما ادیت میشه مثل ویرگول های قبل و ممکنه مطالب خارج از کلاسمونم بنویسم:)

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

ویژه ی پیام نور نمی دونم فازش چجوریه ولی کتاب ما پیام نور و ازاد نداره و متاسفانه یا خوشبختانه 9فصلشو باید تدریس کنن ...این اولین عکسی بوود که گوگل داد منم گذاشتم :/
ویژه ی پیام نور نمی دونم فازش چجوریه ولی کتاب ما پیام نور و ازاد نداره و متاسفانه یا خوشبختانه 9فصلشو باید تدریس کنن ...این اولین عکسی بوود که گوگل داد منم گذاشتم :/




از دید کلی هر کامپوتر از 3بخش تشکیل شده پردازنده (cpu) حافظه اصلی (main memory) دیوایس های ورودی خروجی (I/0 device)

حافظه ی اصلی که عموما ناپایدارعه و اطلاعاتش مثل هارد دیسک نیست و بعد از خاموش و روشن شدن کامپوتر از بین میره در کامپوتر برای اتصال این 3بخش از باس(bus) یا گذرگاه استفاده می کنیم بدین شکل

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


ولی ما ثبات داریم ثبات چیه ؟

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


در پردازنده که یکی از مهم ترین وظیفه اش تبادل داده بین خودش و حافظه است میاد و از این دو ثبات یا رجیستر (register) استفاده می کنه

ثبات میانگیر حافظه (Memory Buffer Register) که در برگیرنده ی داده هایی است که قراره در حافظه نوشته یا خوانده شود

ثبات آدرس حافظه (Memory Address Register) که محل خواندن یا نوشتن بعدی در حافظه را مشخص می کند

مشابه دو ثبات فوق از یک ثبات ادرس ورودی / خروجی (I/O Address Register) که یک دستگاه ورودی یا خروجی خاص را مشخص می کند و یک ثبات میانگیر ورودی و خروجی ( I/O Buffer Register) برای تبادل داده ها بین پردازنده و یک مولفه ی ورودی خروجی استفاده می شود در اصل برای اینه که بتونه داده ها رو تا زمان انتقال انها نگداری کنه

ما دو ثبات دیگر به اسم

ثبات PC که مسئول اینه چه دستوری باید الان اجرا بشه و کدوم دستور باید الان از حافظه اورده بشه و بره توی ثبات IR

کتاب این جوری تعریف کرده که میگه :

شمارنده ی برنامه (Program Counter) حاوی آدرس دستور العمل بعدی است که باید واکشی شود

ثبات IR خود شامل operation code (اصطلاحا میگن بهش opcode) و address است که operation code عملیات جمع تفریق ضرب و شیفت و .. انجام میده

کتاب هم IR این جوری تعریف کرده که میگه :

ثبات دستورالعمل (Insruction Register) حاوی اخرین دستورالعملی است که واکشی شده است

هر دستور شامل چند زیر دستور (micro instructor) عه هرجا که pc بهش اشاره کرد قراره واکشی بشه و بیاد توی IR و اجرا بشه . این روند هی تکرار میشه

ما یه ثبات PSW هم داریم که اخرین وضعیت سیستم در اخرین دستور را به ما میگه که چجوریه شامل flag هایی میشه مثلا اگه تقسیم بر صفر اتفاق بیوفته یا سرریز رخ بده و یا حتی عملیاتی موفق بوده یا نه توسط فلگ ها مشخص می شود ...PSW مخفف کلمه ی Program Status Word می باشود :)

ثبات AC برای ذخیره موقت نتیجه ی واحد ALU پردازنده است . Accumulator register در اصطلاح فنی AX نیز میگویند.

ثباتها از یک دیدگاه به دو دسته کلی تقسیم می‌شوند:
ثباتهای نشانی پذیر (آدرس‌پذیر):درجینه‌هایی هستند که توسط برنامه‌نویس قابل دسترسی هستند.
ثباتهای آدرس ناپذیر (غیر آدرس پذیر):ثباتهایی هستند که توسط کاربر دسترس پذیر نبوده و توسط سخت‌افزار مدیریت می‌شوند.
تعریف دیگر درجینه: حافظه‌های سریعی به نام درجینه در پردازنده وجود دارند که مستقیماً با واحد CU و ALUمتصل هستند و برای نگهداری داده و کنترل اجرای برنامه بکار می‌روند.

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



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