موضوع مقاله: رجیستری ویندوز | مخاطب: عمومی | لحن: دانشنامه‌ای | ساختار: عنوان، مقدمه، 3 بخش، جمع‌بندی | مقاله: | # رجیستری ویندوز | مقدمه: رجیستری ویندوز یک پایگاه‌داده سلسله‌مرتبی است، که «تنظیم‌های سطح پایین» را برای خود سیستم‌عامل مایکروسافت ویندوز و نیز برنامه‌های کاربردی استفاده‌کننده از رجیستری (یا دفتر ثبت) ذخیره‌سازی می‌کند. | ## بخش 1: رجیستری ویندوز | هسته، درایور دستگاه، خدمات، مدیر حساب‌های امنیتی، و دیگر واسط‌های کاربری همه‌شان امکان استفاده از رجیستری را دارند. رجیستری همچنین امکان دسترسی به شمارنده‌ها را برای رخ‌نمانگاری کارایی سامانه می‌دهد. به زبان دیگر، رجیستری یا ویندوز شامل «اطلاعات، تنظیمات، گزینه‌ها»، و دیگر مقادیر برای برنامه‌ها و سخت‌افزاری است که روی همه نسخه‌های سیستم‌عامل مایکروسافت ویندوز نصب شده‌اند. برای مثال، موقعی که یک برنامه نصب می‌شود، یک «زیرکلید» جدید شامل تنظیماتی مثل محل برنامه، ورژن آن، نحوه شروع آن برنامه، و غیره به رجیستری ویندوز اضافه می‌شود. رجیستری در ویندوز ۳٫۱ معرفی شد، و در آن زمان رجیستری ویندوز، در اصل فقط اطلاعات پیکربندی را برای مولفه‌های مبتنی بر COM ذخیره می‌کرد. اما ویندوز ۹۵ و ویندوز NT استفاده از آن را گسترش دادند و برای منطقی‌سازی و متمرکزسازی اطلاعات موجود در فایل‌های INI که بسیار فراوان هم بودند، آن را به کار بردند. این فایل‌های INI اطلاعات پیکربندی را برای برنامه‌های منفرد (که در مکان‌های متنوعی ذخیره شده بودند) نگهداری می‌کردند. برای مثال، برنامه‌های کاربردی چارچوب دات‌نت از فایل‌های XML برای پیکربندی استفاده می‌کنند، درحالی‌که برنامه‌های انتقال‌پذیر معمولاً فایل‌های پیکربندی‌شان را همراه با اجراپذیرشان ذخیره می‌کنند. رجیستری ویندوز جایی است که تنظیمات نرم‌افزارها و سخت‌افزارها در سیستم‌عامل ویندوز در آن به ثبت می‌رسند. در پنجمین ویراست از کتاب «فرهنگ رایانه‌ای مایکروسافت» دربارهٔ رجیستری چنین آمده‌است: رجیستری، یکی از مهم‌ترین و اصلی‌ترین بخش‌های سیستم‌عامل ویندوز است. این بخش، نقشی کلیدی در پیکربندی و کنترل سیستم‌عامل ویندوز ایفا کرده و همچون انباره‌ای است که تنظیمات کلیِ سیستم (اعم از نرم‌افزاری و سخت‌افزاری) و تنظیمات خاصِ هر کاربر را در خود جای می‌دهد. نقش این بخش در ویندوز چنان است که تغییر در آن، تأثیرات بنیادینی بر عملکرد کل این سیستم‌عامل خواهد داشت. به خاطر همین اهمیت و حساسیت، رجیستری از دید و دسترسی کاربران عادی به دور نگاه داشته می‌شود. اما کاربر خبره می‌تواند از طریق ابزارهای تعبیه شده در ویندوز - نظیر regedit.exe - مستقیماً در محتوای رجیستری، دخل و تصرف کند. فایل‌های INI فایل‌هایی متنی هستند که از یک یا چند بخش تشکیل می‌شوند و یک یا چند مورد از تنظیمات در هر بخش قرار می‌گیرد. مشکل فایل‌های INI آن است که فاقد ساختار سلسله مراتبی می‌باشند، ذخیره‌سازی فایل‌های باینری در آن دشوار بوده و هیچ گونه استانداردی برای ذخیره‌سازی انواع تنظیمات مشابه ارائه نمی‌کنند. مشکل بزرگ‌تر فایل‌های INI و نگارشهای اولیه ویندوز تعداد زیاد این فایل‌ها در کامپیوترها بود. | ## بخش 2: رجیستری ویندوز | ویندوز ۳٫۱ رجیستری را به عنوان ابزاری برای ذخیره‌سازی تنظیمات OLE (گنجاندن و مرتبط کردن شیئ‌ها) معرفی نمود، و ویندوزهای ۹۵ وnt 3.5 نیز آن را به بانک اطلاعاتی پیکربندی گسترش دادند که ویندوز xp و نسخه‌های جدیدتر ویندوز از آن استفاده می‌کنند. اگرچه فایل‌های INI دیگر به دلیل آن که برنامه‌های کاربردی روش بسیار بهتری برای ذخبره‌سازی تنظیمات دارند، ضروری نیستند، اما هنوز هم تعدادی از آن‌ها را در برخی کامپیوترها خواهید یافت، مثلاً win.ini. رجیستری در عمل در حالت کلی، داده‌های مندرج در رجیستری، در سه وضعیت یا مرحله خوانده می‌شوند: بوت‌شدن سیستم سیستم، فهرست درایورهای لازم جهت بارگذاریِ سخت‌افزارها و نحوهٔ پیکربندی بخش‌های زیرسیستمی (مثل مدیر حافظه و مدیر پردازش) را از رجیستری می‌خواند. ورود به ویندوز برنامهٔ Explorer و سایر اجزای ویندوز، تنظیمات مربوط به هر کاربر را از رجیستری می‌خوانند، از قبیل: راهنمای درایوهای سیستم و شبکه و حروفِ مُعرفِ آنها، تصویر پس زمینهٔ میزکار، محافظِ صفحه‌نمایش، وضعیت منوها و مکان آیکونها. آغاز به کار برنامه‌های کاربردی هر برنامه، تنظیمات کلیِ سیستم (مثل فهرست اجزای نصب شدهٔ اختیاری و داده‌های پروانهٔ بهره‌برداری از برنامه) و تنظیمات مخصوصِ کاربر فعلی (مثل مکان منوها، نوار ابزار، و فهرست مستنداتی که اخیراً مورد دسترسی قرار گرفته‌اند) را از رجیستری می‌خواند. البته رجیستری ممکن است در وضعیتهای دیگری هم خوانده شود، مثل زمانی که تغییراتی در یکی از مقادیر یا کلیدهای رجیستری لازم باشد (در ادامه این مقاله، دربارهٔ اصطلاحات کلید و مقدار توضیح داده خواهد شد). برخی از برنامه‌ها هم، مرتباً محتوای رجیستری را بررسی می‌کنند تا در صورت بروز تغییر در آن، سریعاً پیکربندیهای خود را روزآمد و به هنگام کنند. اما به‌طور کلی، در یک سیستم که در حالت بیکاری (Idle) قرار دارد، فعالیتی در رجیستری به چشم نمی‌خورد. معمولاً محتوای رجیستری در موارد زیر تغییر می‌کند: نصب نرم‌افزار روال‌هایی که به نام Setup مشهور بوده و وظیفهٔ آن‌ها نصب نرم‌افزارهای جدید بر روی رایانه است، تنظیمات پیش‌فرضِ هر برنامه را در خلال عملیات نصبِ آن، در رجیستری ثبت می‌کنند. نصب راه انداز سخت‌افزار در حین نصب راه اندازِ یک دستگاه، بخشِ موسوم به Plug & Play، تنظیمات مربوط به دستگاه را در رجیستری ثبت می‌کند. این تنظیمات، نحوهٔ آغاز به کار و عملکرد دستگاه را برای «مدیر I/O» مشخص خواهند کرد. با تغییرات کاربر هنگامی که کاربر، تنظیمات مربوط به یک برنامه یا کلِ سیستم را از طریق «کنترل پانل» تغییر می‌دهد، تنظیمات جدید در رجیستری به ثبت می‌رسند. البته باید توجه داشت که عملکرد این ویرایشگر با ویرایشگرهای متن متفاوت است و مثلاً امکان انجام عمل واگرد (Undo) در آن وجود ندارد. به همین دلیل، در به‌کارگیری و استفاده از آن باید محتاط بود، چرا که هرگونه دستکاریِ ناشیانه در رجیستری، می‌تواند به مختل شدن عملکرد کل سیستم بینجامد. از این رو، همیشه توصیه می‌شود که پیش از شروع عملِ ویرایش، یک کپی پشتیبان از رجیستری تهیه شود. ساختار رجیستری ساختار رجیستری، شباهت زیادی به ساختارِ منطقیِ یک دیسک دارد؛ رجیستری، شامل چندین کلید (Key) است که مفهوم آن‌ها مشابه دایرکتوری در دیسک بوده و هر کلید هم، شامل چندین مقدار (Value) است که مثل فایل‌هایی درون دایرکتوری‌ها قرار دارند. مقادیر که در واقع خانه‌هایی برای نگهداری داده‌ها هستند، از سه مؤلفه تشکیل می‌شوند: نام، نوع و داده. | ## بخش 3: رجیستری ویندوز | هر کلید می‌تواند شامل تعدادی کلید دیگر هم باشد که در این صورت به آن‌ها زیر-کلید (Sub-key) گفته می‌شود. زیر-کلیدها هم به نوبهٔ خود می‌توانند شامل زیر-کلیدهای دیگری باشد و الخ کلیدهایی که در بالاترین سطح قرار دارند، ریشه (Root) خوانده می‌شوند؛ بنابراین، بجز ریشه‌ها، تمام کلیدهای دیگر را می‌توان زیر-کلید به حساب آورد. در ادبیات علم رایانه، منظور از درخت، نوعی ساختار دادهٔ پویا (دینامیک) است که شرح و وصف آن در مبحث «ساختمان داده‌ها» ذکر می‌شود. در اینجا به ذکر همین نکته بسنده می‌کنیم که رجیستری شامل چندین درخت است که گره‌های آن‌ها حاوی کلید و برگ‌های آن‌ها حامل مقدار هستند. گفتنی است ساختار اولیهٔ رجیستری که به صورت یک پیش‌الگو (Prototype) تدوین شده و شامل یک سِری تنظیمات اولیه و پیش‌فرض است که همراه با خودِ ویندوز و در خلالِ عملیاتِ نصبِ سیستم‌عامل، بر روی دیسک‌سخت کپی می‌شود. ضمناً تعداد ریشه‌ها، ثابت است؛ بدین معنا که نه می‌توان ریشهٔ جدیدی ایجاد کرد و نه ریشهٔ موجودی را حذف کرد. این شاخه شامل متغییرهای محیطی، تنظیمات دسک تاپ، اتصالات شبکه، چاپگرها و موارد ترجیهی برنامه‌های کاربردی است. محدوده این تنظیمات از پیکربندی‌های نرم‌افزارهای راه اندازی گرفته تا تنظیمات ویندوز می‌باشد. نخستین دسته، ارتباط فایل هاست که انواع مختلف فایل‌ها را با برنامه‌هایی مرتبط می‌کند که می‌توانند آن‌ها را باز، چاپ و ویرایش نمایند. به عنوان مثال، صداها را با رویدادهایی چون بازشدن منوها؛ کمینه شدن پنجره‌ها و قطع ارتباط با ویندوز مرتبط می‌کند. زیر سیستم کنسول میزبانی تمام برنامه‌های کاربری مد کاراکتر، از جمله فرمان‌ها ام اس داس را بر عهده دارد. هر مقدار، یک متغیر محیطی را با رشته‌ای مرتبط می‌کند که ویندوز جایگزین آن را تتغیر می‌دهد. اوت لوکس اکسپرس با هویت‌های شناسایی به چندین کاربر امکان می‌دهد تا یک سرویس گیرنده پستی را به اشتراک بگذارند. با وجود پشتیبانی ویندوز xp به بعد از پروفایل‌های کاربری، تنظیمات هر کاربر از تنظیمات کاربران دیگر جدا می‌شود، بنابراین کلید ذکرشده به ندرت لازم می‌شود. ویندوز از پروفایل مذکور برای ایجاد تنظیمات کاربران برای نخستین مرتبه‌ای که با کامپیوتر ارتباط برقرار می‌کنند، استفاده می‌کند. این کلید شامل اطلاعاتی است که به هنگام کار با شبکه برای متخصصان IT مفید واقع می‌شود. ACL این کلید حتی به مدیران نیز امکان مشاهده نمی‌دهد مگر آنکه مالکیت آن را بر عهده بگیرند. | ## جمع‌بندی | سیستم‌عامل حداقل دو مجموعه کنترلی دارد تا تضمین نماید که همیشه می‌تواند به درستی راه اندازی شود.