تراژدی Winfs

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

 Winfs نام کد( Code Name ) برای پروژه است که در سال ۲۰۰۳ مایکروسافت آن را توضیح داد. Winfs به هیچ وجه یک File System مجزا نیست. بلکه پلفورمی است که روی فایل سیستم NTFS می تواند کار کند. از آنجایی کاربران فقط لغت Winfs را خواهند دید ممکن است فکر کنند Winfs یک فایل سیستم است و دو حرف fs پایانی بر این سوء تفاهم بیشتر دامن می زند. Winfs کوتاه شده عبارت Windows Future Storage است که روی فایل سیستم NTFS کار می کند. Winfs هم همانند ۶ پروژه دیگر مایکروسافت در خصوص ذخیره سازی اطلاعات شکست خورده و پروژه نا موفق بسته شده. در اینجا قدری این بیشینه را بررسی کنیم:

Cairo (قاهره) نام کد پروژه مایکروسافت بود بعدا با نام Windows NT 4.0 وارد بازار شد. این ویندوز بر اساس نظریه مشهور آقای Bill Gates به نام information at your fingertips بنا شده بود. برای این نظریه مایکروسافت تحقیقات بسیار سنگینی را در خصوص فایل سیستمی به نام Object File System آغاز کرد. از آنجایی که Cairo با شکست رو به رو شد پروژه OFS نیز به بعد موکول شد و برخی از تکنولوژی های مطرح در Cairo در ویندوز NT 4.0 و بعدها ارائه شد.

 در سال ۱۹۹۳ مایکروسافت یک استاندارد اینترفیس به نام ( Component Object Model ( COM ارائه کرد. بر اساس این استاندارد مایکروسافت پروژه ای دیگر به نام +Storage را آغاز کرد که ویژگی هایی مشابه با OFS داشت. یک پروژه نیز قرار بود از SQL Server 7.0 استفاده کند در هر حال +Storage هیچ گاه عملی نشد. پروژه ی دیگری به نام ( Relational File System ( RFS که ویژگی ها مشابهی داشت، نیز قرار بود این بار با SQL Server 2000 پیاده سازی شود، اما SQL 2000 تنها یک به روز رسانی کوچک از SQL 7.0 بود و این سبب شد SQL 2000 توانایی پیاده سازی پروژه RFS را نداشته باشد. پروژه های Outlook LIS و Exchange Webstore هم که مایکرسافت از ابتدا به آنها دل نبسته بود به علت هایی مثل ضعف در نظریه و یا کافی نبودن ویژگی ها ناتمام بسته شد. LIS کوتاه شده local information store که یک تلاش ناتمام با تئوری خلاقانه بود اما در ابعاد بزرگ جوابگو نبود.

مایکروسافت به آرزوی دوازده ساله خود در پروژه Winfs بسیار نزدیک شده بود و برنامه ریزی کرده بود که در ویندوز نام کد لانگهورن ( Longhorn ) این آرزو محقق شود. اما در سال ۲۰۰۳ یک نسخه ویندوز لانگهورن را همراه Winfs منتشر کرد اما با مشکل بزرگی به عنوان عملکرد ( performance ) رو به رو شد. شایعه پردازان از همان زمان شروع به بزرگنمایی این مشکل کردند و مدیران مایکروسافت از این مسئله نیز بسیار ترسیدند. در آگوست ۲۰۰۴ مایکروسافت رسما اعلام کرد که Winfs جزئی از ویندوز نام کد لانگهورن نخواهد بود و به صورت یک پک اضافی پس از انتشار ویندوز نام کد لانگهورن قابل دانلود خواهد بود.
در ۲۹ آگوست ۲۰۰۵ مایکروسافت خیلی بدوت سر و صدا نسخه Winfs Beta1 را تنها برای مشترکین MSDN که MCP بودند قابل دسترسی کرد. این نسخه روی ویندوز XP کار می کرد و به Net Framework. وابسته بود. این نسخه بتا در ۱ دسامبر ۲۰۰۵ نیز به روز شد و با Net Framework ورژن ۲ سازگار شد. برنامه ریزی شد که برای اواخر سال ۲۰۰۶ همراه با نرم افزار Windows Desktop Search ارائه شود. در ۲۳ ژوئن ۲۰۰۶ مایکروسافت رسما اعلام کرد که با Winfs خداحافظی کنید و اجزای به کار رفته در Winfs بعدا زیر چتر تکنولوژی های دیگر عرضه خواهد شد. در سال ۲۰۰۶ آقای استیو بالمر در یک مصاحبه گفت که Winfs همچنان ادامه دارد ولی پیوستن آن به ویندوز پس از تکامل این تکنولوژی صورت می گیرد. آقای بیل گیتس نیز در سخنرانی خود گفتند مایکروسافت قصد دارد به زودی نحوه ذخیره سازی اطلاعات برای برنامه هایی همانند Windows Media Player ، Microsoft Office Outlook و… را بر اساس تکنولوژی مثل Winfs انجام دهد.

زود یا دیر، روزی فرا خواهد رسید که شما بتوانید به دنبال چهره آقای X  یا به دنبال هر اطلاعاتی که به نحوی به آقای X رابطه دارد بگردید. مایکروسافت از سال ۲۰۰۶ تاکنون کاملا بدون هیچ حرفی مسئله را رها کرده اما حدس زده می شود در ویندوز ۷ شاده تغییراتی باشیم. هرچند رشد باو نکردنی سرویس indexing در ویندوز ویستا نیز مدیون همین تحقیقات است.

Winfs از متور relational engine که در SQL Server 2005 است جهت یافتن ارتباط اطلاعات بهره می برد. Winfs اطلاعات جدول خود را در یک جدول SQL با پسوند mdf ذخیره می کرد. Winfs به صورت یک سرویس و سه پردازش (processes) در سیستم اجرا می شد که عبارت اند از:

۱٫ Winfs.exe که وظیفه پردازش های دیتابیس رابطه ها را داشت.
۲٫ WinFsSearch.exe که همان طور که مشخص است وظیفه ی فهرست بندی و بررسی Query های جستجو را داشت.
۳٫ WinFSPM.exe که واسط Winfs و فایل سیستم بود.

Winfs توانایی آدرس دهی برای دسترسی به حافظه را ندارد و در پایین ترین لایه صف عملیاتی خود با فایل سیستم مرتبط است. مسئله جالب تر زمانی است که تکنولوژی همانند Winfs را با Distributed Computing مخلوط می کنید و نتیجه یک رویای بزرگ است که پیش بینی می کنم تا ۸ سال دیگر آن را روی کامپیوتر شخصی خود که در آن زمان در تاثیر نانو تکنولوژی و نظریه فازی و… به این سبک نخواهد بود خواهید داشت. مطالب بسیاری در این زمینه در حال حاضر موجود و نظریه هایی مطرح شده، اما افسوس که این مطلب به پایان رسیده.

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

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

7 دیدگاه در تراژدی Winfs

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

  2. من توی پست هام از < div > استفاده می کنم… و خوب به راحتی می توانید با استفاده از Style و معین کردن font-family این کارو انجام بدید. اگر از < p > یا حتی < span > هم استفاده کنید، می توانید این کارو انجام بدید. اگر به HTML وارد هستید که هیچی، اگر نه، بفرمایید تا این کد DIV را برایتان بگذارم و در نمای HTML پست هاتون به اول پست ها کپی پیست کنید.

پاسخ دهید

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