شاخه‌گاه (سیستم فایل‌بندی)

در سیستم فایل‌بندی رایانه، یک شاخه‌گاه  یک مجموعه است که شامل داده‌های مرتبط با یک شیء سیستم فایل‌بندی می‌باشد. اگر سیستم فایل «شاخه‌گاه» نداشته باشد، آنوقت تنها یک مجموعهٔ داده برای محتوای آن مجاز می‌باشد، در حالیکه اگر در سیستم فایل بندی شاخه‌گاه موجود باشد، امکان وجود چندین نوع از همین محتواها وجود دارد. هر شاخه‌گاه می‌تواند برای فایل، تجمیع دادهٔ اولیه، یا فقط فراداده ایجاد کند.

برخلاف ویژگی‌های تعمیم یافته، که یک ویژگی سیستم فایل‌بندی آشنا است و معمولاً اندازه (سایز) ثابت دارد، «شاخه‌گاه» ها می‌توانند سایزهای متغیری داشته باشند، که حتی می‌تواند بزرگتر از «شاخه‌گاه داده» ی اصلی فایل باشد. سایز یک فایل، مجموع سایزهای هر شاخه‌گاه می‌باشد.

«شاخه‌گاه‌های منبع» معمولاً توسط اجراپذیر‌ها استفاده می‌شوند.

یک مثال از شاخه‌گاه‌ها برای اسناد تولید شده توسط واژه پردازها می‌باشد: تکه کردن یک سند پردازش کلمه به «محتوا» و «نمایش»، و سپس ذخیره‌سازی هر قسمت در یک منبع مجزا.

 راه کارهای پیاده‌سازی بدون شاخه‌گاه 
 فایل سیستم بدون شاخه‌گاه: باید از چندین فایل مجزا استفاده کرد، که این فایل‌ها به هم مرتبط هستند، مثلاً باید از فایل‌های متصل رفیق استفاده کرد. در اینجا برنامه ای که روی فایل‌ها کار می‌کند باید اتصال بین فایل‌ها را اداره کند و نه فایل سیستم.
 راهکار استفاده از فایل‌های بایگانی(Archive file): داده‌های اضافی در یک قالب پروندهٔ از قبل معین شده، یا فایل بایگانی، ذخیره می‌شود. در این راهکار چندین فایل و فراداده در یک فایل (در یک شاخه‌گاه منفرد) ذخیره می‌شود. در اینجا برنامه باید فایل ظرفی یا فایل بایگانی را پردازش کند، نه آنکه فایل سیستم شاخه‌گاه‌ها را اداره نماید.

 ایراد اصلی فقدان شاخه‌گاه 
 برنامهٔ استفاده‌کننده از داده باید کارهای اضافی انجام دهد.

 اهمیت و هدف از ایجاد شاخه‌گاه‌ها 
شاخه گاه منبع برای سه هدف در سیستم فایل‌بندی مکینتاش استفاده می‌شود:
 برای ذخیرهٔ همهٔ داده‌های گرافیکی روی دیسک، تا زمانیکه نیاز باشد، سپس بازیابی می‌شود، روی نمایشگر رسم می‌گردد، و سپس دور ریخته می‌شود. این نوع نرم‌افزاری حافظهٔ مجازی به اپل کمک کرد تا نیازمندی‌های حافظه را از ۱ مگابایت در اپل لیزا به ۱۲۸ کلیو بایت در مکینتاش کاهش دهد.
 به دلیل آنکه همهٔ تصاویر و متن‌ها به صورت مجزا در یک شاخه‌گاه منبع ذخیره‌سازی می‌شوند، یک غیر برنامه‌نویس از آن استفاده می‌کند تا برای یک بازار خارجی یک برنامه را ترجمه کند. فرایندی که بین‌المللی‌سازی و محلی‌سازی نام دارد.
 از شاخه‌گاه می‌توان برای توزیع تقریباً همهٔ اجزای یک برنامه کاربردی در یک فایل منفرد استفاده کرد، که درهم و برهمی را کاهش می‌دهد و نصب و حذف برنامه کاربردی را ساده می‌سازد.

 انواع شاخه‌گاه 
 شاخه گاه منبع: برای ذخیره‌سازی داده‌های ساخت‌یافته استفاده می‌شود.
 شاخه گاه داده: برای ذخیره‌سازی داده‌های بدون ساختار استفاده می‌شود.

 اجزای یک شاخه‌گاه 
یک شاخه گاه منبع اطلاعاتی را به روش بخصوصی ذخیره‌سازی می‌کند، و شامل جزییاتی مثل
 نقشک‌ها با فرمت bitmap
 شکل‌های ویندوز
 تعاریف فهرست‌ها (منوها) و محتوای فهرست‌ها
 کدهای کاربردی (کد ماشین)

می‌شود.

یک فایل واژه پرداز می‌تواند:
 متن خود را در یک «شاخه‌گاه داده» ذخیره کند،
 در حالیکه هر تصویر جاسازی شده را در «شاخه‌گاه منبع» همان فایل ذخیره‌سازی نماید.

شاخه‌گاه‌های منبع در همهٔ سیستم‌های فایل بندی پیاده‌سازی شده‌است، و از آن برای سامانه ران‌ها روی مکینتاش (MFS, HFS، و HFS Plus) استفاده می‌شود. وجود یک شاخه‌گاه امکان ذخیرهٔ انواع مختلفی از داده‌های اضافی را ساده می‌سازد، مثلاً به سیستم امکان می‌دهد تا آیکون درست را برای یک فایل نمایش دهد، و آن را بدون نیاز به یک پسوند نام در نام یک فایل، باز کند.

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

 پیاده‌سازی‌های شاخه‌گاه‌ها 

 در اپل 
شاخه گاه‌های سیستم فایل با سیستم فایل بندی سلسله مراتبی اپل (HFS) مرتبط می‌باشند. HFS اپل و سیستم فایل بندی مکینتاش اپل (MFS) اجازه می‌دهند تا یک شیی سیستم فایل بندی دارای دو نوع شاخه گاه باشند: شاخه گاه داده، و شاخه گاه منبع.
 شاخه گاه منبع برای ذخیرهٔ داده‌های کامپایل نشده که توسط رابط کاربری گرافیکی سیستم استفاده می‌شود، طراحی شده‌است، مثل:
 رشته متن‌های قابل محل دهی
 آیکون فایل که توسط یابنده استفاده می‌شود
 فهرست (منو)ها
 جعبه‌های گفتگو که با یک برنامه کاربردی مرتبط اند.

به دلیل آنکه کدهای کامپایل شدهٔ نرم‌افزاری نیز در یک منبع ذخیره‌سازی می‌شوند، برنامه‌های کاربردی معمولاً شامل فقط یک «شاخه‌گاه منبع» هستند و «شاخه‌گاه داده» ندارند.

یکی از ویژگی‌های بسیار مبهم و گنگ اچ اف اس پلاس آن است که یک فایل می‌تواند به تعداد دلخواهی «شاخه گاه نام دار» داشته باشد، علاوه بر شاخه گاه‌های منبع و داده. این ویژگی به صورت گسترده بدون استفاده مانده‌است؛ و اپل هیچ‌گاه پشتیبانی از آن را در Mac OS 8.1-10.3.9 اضافه نکرد. با شروع ۱۰٫۴ یک پیاده‌سازی جزئی برای پشتیبانی از ویژگی‌های برخز گسترش یافته اپل انجام گردید.

تا Mac OS X v10.4 کاربرانی که امکانات خط فرمان Unix را اجرا می‌کردند (مثل tar) که در Mac OS X نیز موجود است، در خطر از دست رفتن داده بودند، زیرا امکانات برای دستکاری شاخه گاه‌های منبع فایل‌ها تا ورژن v10.4 به روز رسانی نشده بود.

 در NTFS مایکروسافت 
جریان داده‌های متفاوت (Alternate data streams) امکان می‌دهد تا بیش از یک جریان داده با یک نام فایل مرتبط گردد (یک شاخه گاه) در اینجا باید از فرمت "filename:streamname" استفاده کرد (مثلاً "text.txt:extrastream").

 انواع اصلی منبع 
کدهای نوع زیر، به عنوان شناسانه نوع در شاخه‌گاه‌ها، برای شناسایی مواردی غیر از خود شاخه‌گاه‌های منبع استفاده می‌شوند: مثلاً برای شناسایی خود فایل‌ها، توصیف داده در کلیپ برد، و بسیاری موارد دیگر.

در اینجا طول نوع باید ۴ بایت باشند، بنابراین برای انواعی مثل snd و STR یک فاصله خالی (0x20) در انتهای آن می‌باشد.
نام نوع منبعنام واقعیتوصیفalisنام مستعار
aliasیک نام مستعار برای یک فایل دیگر ذخیره‌سازی می‌کند، در یک شاخه‌گاه منبع برای یک فایل که در آن ویژگی بیت «alias» تنظیم شده‌است.ALRTهشدار
alertتوصیف کنندهٔ شکل جعبه هشدار یک برنامه کاربردی است.APPLبرنامه کاربردی
applicationذخیره کنندهٔ اطلاعات برنامه کاربردی است.BNDLبسته
bundleتوصیف کنندهٔ داده‌هایی مثل نوع فایل آیکون استفاده شده در یک برنامه کاربردی است.cicnرنگ آیکون
color iconتعریف کنندهٔ رنگ آیکون استفاده شده در داده‌است.clutجدول جستجوی رنگ
color look-up tableتوصیف کننده یک جعبه رنگ نقاشی استفاده شده در داده‌است.CNTLکنترل
controlتعریف کنندهٔ جزئیات یک پیکر پار (مولفه) موجود در یک پنجره است.CODEکد منبع
code resourceکد منبع را برای برنامه ذخیره می‌کند.CURSمکان نما
cursorشکل یک مکان نمای تک رنگ را تعریف می‌کند (مربع ۸ بیت در ۸ بیت)DITLلیست آیتم گفتگو
dialog item listتعریف کنندهٔ یک مولفهٔ یک پنجره است.DLOGگفتگو
dialogشکل یک جعبه گفتگو را برای یک برنامه کاربردی تعریف می‌کند.FREFارجاع فایل
file referenceتعریف کنندهٔ یک نوع فایل اداره شده توسط یک برنامه کاربردی است.hfdrآیکون کمک بالون
icon balloon helpبرای بالون کمک محتوا و شکل را تعریف می‌کند، و موقعی که مکان‌نما روی فایل در یابنده می‌رود نمایش می‌یابد.icl8لیست آیکون بیت ۸
8 bit icon listیک آیکون نمایش داده شده در یابنده را تعریف می‌کند.icnsلیست آیکون ۳۲ بیت
32 bit icon listیک آیکون نمایش داده شده در یابنده را تعریف می‌کند.ICONآیکون
iconیک آیتم تک رنگ استفاده شده در داده را تعریف می‌کند.kindتوصیف فایل
file descriptionتعریف کنندهٔ توصیفی از یک نوع فایل است.MBARنوار منو
menu barبرای یک برنامه کاربردی یک منو و یک نوار منو تعریف می‌کند.MDEFتعریف منو
menu definitionیک منو برای یک برنامه کاربردی تعریف می‌کند. از آن می‌توان برای تعریف منوهای با اشکال پیچیده، مثل جعبه رنگ استفاده کرد.MENUمنو
menuآیتم‌های یک منو را در یک برنامه کاربردی تعریف می‌کند.MooVفیلم
movieیک فیلم QuickTime را ذخیره‌سازی می‌کند.openباز
openیک نوع فایل که برنامه کاربردی می‌تواند آن را باز کند را تعریف می‌کند.PICTتصویر
pictureیک تصویر PICT موجود در فایل را ذخیره‌سازی می‌کند.PREFارجحیت
preferenceتنظیمات محیطی برای یک برنامه کاربردی را ذخیره‌سازی می‌کند.sndصدا
soundصدای استفاده شده در فایل را ذخیره‌سازی می‌کند.STRرشته
stringیک رشته یا دادهٔ هگزادسیمال استفاده شده در فایل را ذخیره‌سازی می‌کند.STR#لیست رشته
string listچندین رشتهٔ استفاده شده در فایل را ذخیره‌سازی می‌کند.stylسبک نگارش
styleاطلاعات سبک نگارش، مثل فونت، رنگ، و سایز متن را تعریف می‌کند.TEXTمتن
textمتن را ذخیره می‌کند.TMPLالگو
templateفرمت را برای دادهٔ منبع تعریف می‌کند.versورژن
versionورژن یا محدودهٔ استفاده از فایل را تعریف می‌کند.WDEFتعریف پنجره
window definitionیک پنجره برای برنامه کاربردی تعریف می‌کند. پنجره‌های دارای شکل از قبل معین نشده نیز می‌توانند تعریف شوند.WINDپنجره
windowشکل یک پنجرهٔ برنامه کاربردی را تعریف می‌کند.

 منابع 

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