جنبش سختافزار آزاد(1)
جنبش سختافزار آزاد(1)
جنبش سختافزار آزاد(1)
پس از گذشت چند دهه از جنبشهای آزادی طلبانه نرمافزاری، تأثیرات شگرف این فرهنگ، یكی از مهمترین دگرگونیهای تاریخ كامپیوتر را رقم زده است. فعالشدن انجمنها و اجتماعاتی بزرگ متشكل از هزاران برنامهنویس و متخصص در سراسر دنیا، روی آوردن شركتهای معظم IT به توسعه یا حمایت نرمافزارهای منبعباز، استقبال دولتها از این حركت، و موارد بیشمار دیگر، متحولشدن آینده نرمافزار را به واقعیتی انكارناپذیر تبدیل كردهاست. گرچه هیاهوی شیفتگان، مخالفان، و منتقدان منبعباز و منبع بسته همچنان ادامه دارد، اما همین تقابلات و نقطه نظرات منجر به رسیدن به سطحی از تعامل شده كه اكنون با قاطعیت میتوان این فرهنگ را جزء جدایی ناپذیر این صنعت دانست. در عین حال، پی بردن به اهمیت جایگاه آزادی در حوزه نرمافزار، تأثیرات پیرامونی دیگری را نیز به همراه داشته است. یكی از مهمترین این اثرات، درك و پذیرش واقع بینانهتر فرهنگهای مشابهی است كه در حوزههای دیگر IT پدیدار شده و یا خواهند شد. این است كه وقتی سخن از جنبش آزادی خواهانه دیگری، اینبار در حوزه سختافزار به میان میآید، پرسشها و ابهامات اولیه بیش از آنكه حول انكار یا عدم انكار اصل وجود آن باشد، به اینگونه مضامین نزدیك است كه: چه تشابهات و تضادهایی میان نرمافزار آزاد و سختافزار آزاد وجود خواهد داشت؟ مجوزهای نرمافزاری و سختافزاری چه تفاوتهایی با یكدیگر خواهند داشت؟ و ... . اما جنبش سختافزار آزاد، علیرغم سابقه طولانی خود، نسبتاً مهجور مانده است. صرفنظر از دلایل این موضوع، آگاهی از تحولات به وجودآمده در حوزه سختافزار از این منظر، میتواند فصل جدیدی را در مباحث فرهنگی، اجتماعی و فنی IT رقم بزند. نوشتار حاضر به بررسی علل تاریخی شكلگیری این جنبش، و وضعیت آن تا به امروز میپردازد. ● تاریخچه
در دهه ۱۹۶۰ میلادی، جنبشهای دانشجویی با هدف ایجاد جوامع آزاد، در تكاپو و فعالیت بودند و تقریباً در اوایل دهه هفتاد میلادی، مسجل شده بود كه شبكههای كامپیوتری میتوانند اساس گونه جدیدی از ارتباطات باشند كه باعث تقویت و گسترش جوامع شوند و میتوانند جایگزینی برای انتشار رسانهای متمركز (حتی مطبوعات زیرزمینی) باشند؛ رسانهای برای شركتكنندگان فعال.
با این حال، فناوریهای كامپیوتری موجود نمیتوانست به سادگی برای چنین هدفی مورد استفاده قرار گیرد. نخستین بولتنهای خبری چنین جنبشهایی به مین فرایمهای اهدایی وابسته بودند. منبع كمیاب و پیچیدهای كه از خارج انجمن به آنجا آورده شده بود. جایی كه تقریباً هیچ مهارتی برای اجرا، نگهداری، تعمیر، و توسعه آن وجود نداشت.
در چنین زمانی كمكم ادوات یكپارچه ۱TTL در مقیاسهای كوچك، متوسط، و بزرگ در حال رایجشدن بودند. قطعات ساده و ارزانی كه به آسانی و با استفاده از ابزارهایی نظیر سیمپیچ، كیتهای آماده و تخته مدارهای چاپی دستساز سرهم میشدند. این ادوات كاملاً مناسب افرادی بودند كه با این گونه چیزها سرگرم میشدند. به این ترتیب، سمجها به جان سیمها افتادند و در نهایت، گروه بزرگی از طراحان خودساخته پدیدار شدند. یكی از كسانی كه در آن روزگار با هر دو گروه مرتبط بود، <لی فلسناشتاین> نام داشت. یك طراح الكترونیك و یكی از اعضای جنبش آزادی بیان بركلی، مسئول اولین سیستم بولتن خبری این جنبش بود.
او در آن زمان تحتتأثیر كتابی به نام <ابزارهای یك جامعه> ۲Convivial قرار گرفته بود: <هر شخص از طریق ابزارهایی كه خود، آنها را هدایت میكند و یا ابزارهایی كه ناخواسته او را هدایت میكنند، خود را به جامعه خویش مربوطمیكند. زمانی كه این ابزارها تحت تسلط وی هستند، این خود اوست كه میتواند افكارش را به دنیا القا كند. اما زمانی كه او تحت تسلط این ابزارها قرارگیرد، آنها شكلدهنده انگارههای ذهنی او خواهند شد. ابزارهایConvivial ابزارهایی هستند كه برای كاربران آنها بزرگترین فرصت غنی ساختن محیط را با استفاده از ثمرات ذهن خود فراهم میكنند.>
حركت نبوغآمیز فلسناشتاین این بود كه دریابد چگونه این ایدههای محض میتوانند حلال مشكلات سیستمهای بولتن خبری انجمن باشند؛ كامپیوترهای جدید (در اصل همان ترمینالها) میبایست به صورت گروهی و با استفاده از تواناییهای مشتاقان سمج و خوشذوقی كه در سراسر كشور پراكنده شده بودند، طراحی و ساخته شوند و در هر انجمنی عدهای، از همه جزئیات سیستمهای مورد استفاده آگاهی داشته باشند.
بدینگونه مسئله نگهداری و تعمیر نیز حل میشد. به عبارت دیگر، استفاده از « ابزارهای» Convivial مستلزم این بود كه پروسه طراحی رایانهها بهطور كلی وارونه گردد تا از درون به یك پروسه Convivial تبدیل شود. نخستین تلاش فلسناشتاین برای تحقق این هدف، طراحی ترمینال Tom Swift بود. وی برای این منظور، تا جایی كه میتوانست به توزیع طرحها و الگوهای نموداری این ترمینال پرداخت.
او میگوید: « قابلیت اعتماد سختافزاری یك مسئله بدیهی بود... روش من صرفنظر از این مسئله طراحی یك وسیله سایبرنتیك Convivial چندمنظوره به عنوان یك ترمینال /متمركز كننده/ پردازنده بود. به نحوی كه آماتورها به كاركردن با آن تشویق شوند. از نظر تئوری، هرجا كه یكی از ترمینالهای Tom Swift استقرار مییافت، اسباب تأسیس یك باشگاه كامپیوتری را فراهم میكرد. سپس هرگاه یك ترمینال از كار میافتاد، ترمیم یك مسئله محلی محسوب میشد و افراد مجبور نبودند عقاید خود را بر روی یك سیستم مینفریم راهدور قرار دهند.»
دومین تلاش فلسناشتاین نه یك طراحی، كه تأسیس یك سازمان بود؛ باشگاه كامپیوتری Homebrew . این باشگاه كار خود را با پنج نفر آغاز كرد. در اولین گردهمایی، این تعداد به ۳۰ نفر و ظرف یكسال به ۶۰۰ نفر افزایش یافت. هدف باشگاه، ترویج طراحی مشاركتی رایانه Homebrew بود.
طرحها، حتی آنهایی كه به محصولاتی تجاری، مانند اولین رایانه اپل، تبدیل میشدند، با یكدیگر به اشتراك گذاشته شده و تلفیق میشدند و در مورد آنها بحث و تبادلنظر میشد. تأثیرات مستقیم و غیرمستقیم این باشگاه، به خارج از مرزهای ایالات متحده نیز سرایت كرد.
در واقع، صنعت نوپای رایانههای خانگی متشكل از مجموعهای نامنسجم از شركتهای تولیدی كوچك و گروههای مشتاقی (غالباً یك عده خاص) بود كه خالق فرهنگ آزادی در این حوزه بودند.
در این شرایط، شركتهای معظم و قدیمی كامپیوتری زمانی دریافتند كه میتوانند از بازار بالقوه موجود در این حوزه استفاده كنند كه رای تحمیل سیستم موردنظر آنها بسیار دیر شده بود. علیرغم این موضوع، IBM از تلاش برای حضور در این عرصه صرفنظر نكرد. یكی از مدیران وقت IBM در این مورد گفته بود: « بهتر است معماری IBM به یك معماری باز تبدیل شود؛ فراهمكردن اطلاعات و مشخصاتی كه باعث تشویق دیگران به توسعه ویژگیها و برنامههای قابلاجرا بر روی سیستمهای ما گردد.
این رویكرد، صدها فرد و شركت را قادر به توسعه صدها وسیله جانبی سختافزاری میسازد و مردم میتوانند آنها را برای كامپیوتر شخصی IBM خود انتخاب كنند.»
با این حال، كاملاً بدیهی بود كه اعضای باشگاه Homebrew درصدد تحمیل خط مشی خود هستند. فلسناشتاین میگوید: « در سال ۱۹۷۸، IBM پا را از گلیم خود درازتر كرد و با معرفی ۵۱۰۰ ، محصول عجیب و ناسازگاری كه بیانگر رویكرد IBM بود، ادعا كرد این به من تعلق دارد». البته آنها مایل نیستند در مورد آنچه كه اتفاق افتاد، توضیح دهند. ولی در سال ۱۹۸۱ آنها با ۵۱۵۰ (یك PC ) بازگشتند و از قوانین ما تبعیت كردند. طبق این قوانین، همه میتوانند به ایفای نقش بپردازند. اما شما باید معماری و كد اجرایی خود را تا آنجا كه ممكن است، همگانی كنید. در عین حال باید افرادی را به نوشتن برنامه و ساختن الحاقات آن تشویق كنید. شما میتوانید بازی كنید. اما باید دیگران را هم در انجامدادن بازی یاری كنید.»
در اواخر دهه هفتاد، این شفافیت به تدریج از میان رفت. ابعاد و پیچیدگی چیپها به شدت افزایش یافت. تولید چیپهای سفارشی از سوی طراحان، نیاز به دانش در تمام سطوح این قطعات داشت كه این امر به طور فزایندهای وضعیت را مشكلتر میكرد.
▪ اكنون به دو چیز نیاز بود: اول متمایز ساختن طراحی فیزیكی چیپ از طراحی منطقی و معماری آن و دوم، استنتاج یكی از دیگری.
این صرفاً نه یك مسئله فنی، بلكه یك مشكل اجتماعی بود. این موضوع مستلزم تربیت مهندسانی بود كه بتوانند با شیوه جدید كاركنند. در همین اثنا، انگیزه چارهجویی میان دو نفر كه این مشكل را به وضوح مشاهده میكردند، به وجود آمد.
Carver Mead و Lynne Conway روشی را اختراع كرده بودند كه از دو بخش تشكیل میشد. یك بخش فنی كه شامل كاهش طراحیهای منطقی به منظور سادهسازی نمودارهای ارائه شده همراه با پیادهسازی مستقیم و قابل ارتقای نیمه هادیها بود و یك بخش اجتماعی این بخش بخش اجتماعی. شامل اختراع همان چیزی بود كه اریك ریموند سالها بعد آن را بازار نامید. لین كانوی در رسالهای به نام « سرگذشت» MPC در باب چگونگی ایجاد جامعهای بازارگونه، شرایط را مطرح میكرد:
▪ شمول عده زیادی از مردم
▪ اشكال زدایی همزمان
▪ طراحان سیستم باید كاربران آن نیز باشند
▪ پاسخ سریع به نظرات كاربر و عرضه مستمر برطرفكننده اشكالات و بهبودها
▪ اجازه گسترش استانداردها، فراتر از كاربرد معمول
اما این شباهتها در این برداشتهای اشتباه خلاصه نمیشود. در حقیقت باید گفت كه بحث و استدلالهای مربوطبه تفسیر آزادی حامیان مجوزهای بنیاد نرمافزار آزاد و طرفداران مجوزهای BSD گونه، به حوزه سختافزار نیز قابل تعمیم هستند و از این حیث پیچیدگیهای خاص این موضوع به این حوزه نیز سرایت كردهاست.
علیرغم این موضوع جریان اصلی این جنبش مسیر خود را طی میكند. در حقیقت گمان میرود كه ایده سختافزار آزاد و مدل توسعه مشاركتی آن بتواند بسیاری از مشكلات صنعت نیمههادیها را حل كند. بسیاری از متخصصان مستقل و شركتها خواهند توانست در رفع اشكال، بهبود، ارتقا و البته تغییر طراحی سختافزار ایفای نقش كنند.
در مدل بسته و رایج فعلی، یك طرح سختافزاری متعلق به شركت سازنده آن است و برای هیچ شخص یا شركت دیگری در خارج از آن مجموعه شناخته شده نخواهد بود. (البته باید صنعت مهندسی معكوس را كه خود نمونه بارزی از اتلاف انرژی برای كشف چگونگی كاركرد یك قطعه در مدلهای بسته اختصاصی است، از این قضیه مستثنی كنیم).
بنابراین بهبود یك طرح سختافزاری صرفاً توسط تولیدكننده میسر میشود و تبع آن تمام هزینههای تحقیق و توسعه برای بهبود و پیشرفت محصولات نیز برعهده آن تولیدكننده خواهد بود.
اما بررسی دنیای نرمافزار نشان میدهد كه نرمافزارهای آزاد میتوانند از طریق اشكالزدایی، اصلاحات و بهبودها و پیشرفتهای به دست آمده توسط خیل عظیمی از مشاركتكنندگان پروژه، به روند توسعه یك پروژه نرمافزاری سرعت ببخشند. با این اوصاف و با وجود تفاوتهای ماهوی دو حوزه نرمافزار و سختافزار، ملزومات متفاوت این دو حوزه هیچ دلیل محكمی (حداقل تاكنون) برای اینكه نتوان از این مدل توسعه در طراحی سختافزار استفاده كرد بهشمار نمیآید.
شاید در عمل و در مقایسه با توسعهدهندگان نرمافزار عده كمتری با دانش طراحی سختافزار آشنایی داشته باشند، اما این امر به معنای غیرعملی بودن پیادهسازی این مدل نخواهد بود. (البته هزینههای موردنیاز برای طراحی، آزمایش و توسعه سختافزار نیز میتواند باعث كاهش مشاركتكنندگان در این حوزه گردد كه این موضوع نیازمند بحثی جداگانه است).
قطعات الكترونیكی به دلایل متعددی چون یكپارچه شدن ابزارها، به طور روزافزون پیچیدهتر میشوند و رقابت میان سازندگان هر روز افزایش مییابد. همین موضوع باعث شدهاست سازندگان سختافزار به گسترش داراییهای فكری خود علاقمند شوند و به توسعه محصولات مبتنی بر این داراییها وابستگی بیشتری پیدا كنند. به این ترتیب به نظر میرسد كه فناوریهای انقلابی همچون سیستم بر روی تراشه (system on chip یا اختصارا SOC) به واسطه عدم دسترسی بسیاری از سازندگان به این فناوریها، بهخاطر انحصاری بودن آنها، كاربردی محدود داشتهباشند.
به عنوان مثالی دیگر، مسئله مالكیت معنوی شركتها در مورد اینترفیسهای بین تراشهای و فقدان یك استاندارد جامع در این حوزه باعث شدهاست شركتهای نرمافزاری به صورت مستقل بر روی این اینترفیسها فعالیت كنند. این موضوع باعث بروز مشكلات ناسازگاری فراوانی در میان قطعات مختلف میشود. در حال حاضر برخی از شركتها به تبادل داراییهای فكری میپردازند و حتی شركتها و موسسات تخصصی ویژهای برای تسهیل این مبادلات مشغول فعالیت هستند. این حركتها به طور حتم ضروری، اما ناكافی هستند. به علاوه، كمك چندانی به گسترش این فناوریها از منظری كه جنبش سختافزار آزاد به آن نیازمند است، نمیكند.
بدون شك نگرانی شركتهای صاحب داراییهای معنوی به كاهش سودآوری آنها به واسطه دسترسی شركتهای دیگر به این داراییها مربوط میشود و به نظر میرسد تبیین مدلهای تجاری عملی در شیوه جدید توسعه میتواند تا حدودی از این نگرانیها بكاهد. در واقع جلوگیری از متعارف شدن فناوریها با استفاده از مالكیتهای معنوی انحصاری، تنها راه حفظ سودآوری نیست. كاهش هزینهها و افزایش تولید به عنوان دو عامل مهم برای رونق بخشیدن به كسبوكار ، شیوهای تثبیت شده است و طراحی و توسعه آزاد فناوریها به طور اشتراكی میتوانند در تحقق دو عامل فوق نقش شایانی داشته باشند.
پس در وهله اول توسعه یك سیستم به اشتراكگذاری داراییهای فكری نه تنها میتواند انگیزه مشاركت سازندگان سختافزار به طراحی آزاد را تقویت كند، بلكه از تلاشهای مضاعف شركتهای فاقد حق استفاده از یك فناوری خاص برای اختراع دوباره چرخ جلوگیری میكند و برای نوآوریهای فنی وضعیتی بهینه را فراهم خواهد كرد.
امروزه روش طراحی نیمه هادیها به فرایند توسعه یك سیستم نرمافزاری مهم بیشباهت نیست. به منظور توسعه یك مدار مجتمع با كاربرد خاص یا ASIC ، ابتدا با توجه مجموعه مفصلی از مشخصات پیادهسازی (كه خود تابع كاركردهای موردنیاز تعیین شده توسط گروه بازاریابی است،) از یك زبان تشریح سختافزاری (HDL) نظیر VHDLیا Verilog استفاده میشود.
كدهای منبع HDL پس از نوشته شدن و بررسی با نت لیستی (netlist) كه اتصالات گیتهای منطقی را (كه بر روی سیلیكون قرار خواهند گرفت) تشریح میكند، تطبیق داده میشود. هر گیت منطقی در نت لیست مستقیماً به تركیب خاصی از ترانزیستورها منتسب میشود. نت لیست توسط ابزار دیگری كه موقعیت قرارگیری هر ترانزیستور و سیم بر روی تراشه را انتخاب میكنند، مورد استفاده قرار میگیرد. طراحی فیزیكی به دست آمده مستقیماً توسط ماسكهای نوری كه در مرحله تولید از این طراحی الگوبرداری میكند مورد استفاده قرار میگیرد. در بسیاری از مراحل مذكور نرمافزارهای ویژهای كه برای انجام این كارها طراحی شدهاند مورد استفاده قرار میگیرند.
بنابراین میتوان اینگونه پنداشت كه طراحی سختافزار آزاد یا منبع باز در ابتدا به حوزه نرمافزاری آن مربوط میشود. از این منظر و با چنین دیدگاهی برخی طراحی سختافزاری را باز یا آزاد مینامند كه كدهای منبع زبان تشریح سختافزاری و نرمافزارهای به كار رفته در طراحی آن با استفاده از یك مجوز نرمافزاری توزیع شده باشند. بنابراین این مجوز اولاً باید حق توزیع آزادانه كدهای منبع آن را تضمین نماید و ثانیاً حق ایجاد فعالیتهای اشتقاقی مبتنی براین كدهای منبع و توزیع مجدد آنها را نیز برمبنای یك مجوز مشابه تضمینكند. حتی مثلاً میتوان با الهام از مجوز GPL بنیاد نرمافزار آزاد، شرط اینكه فعالیتهای اشتقاقی هم باید با استفاده از <همان مجوز> اولیه توزیع شوند را نیز به عنوان یكی از شروط اضافه كرد.
ریچارد استالمن پایهگذار بنیاد نرمافزار آزاد در سال ۱۹۹۹ میلادی استفاده از مجوزهایی چون GPL را برای زبانهای برنامهنویسی طراحی سختافزار به واسطه ماهیت نرمافزاری آنها كاملاً عملی میدانست. با این حال استفاده از چنین مجوزهایی فقط بخشی از ماجرای مجوزدهی سختافزاری را حل میكنند و بحث اصلی پیرامون شیوه توسعه و به كارگیری گونه جدیدی از مجوزها همچنان باقی میماند.
ارسال مقاله توسط کاربر محترم سایت: sm1372
در دهه ۱۹۶۰ میلادی، جنبشهای دانشجویی با هدف ایجاد جوامع آزاد، در تكاپو و فعالیت بودند و تقریباً در اوایل دهه هفتاد میلادی، مسجل شده بود كه شبكههای كامپیوتری میتوانند اساس گونه جدیدی از ارتباطات باشند كه باعث تقویت و گسترش جوامع شوند و میتوانند جایگزینی برای انتشار رسانهای متمركز (حتی مطبوعات زیرزمینی) باشند؛ رسانهای برای شركتكنندگان فعال.
با این حال، فناوریهای كامپیوتری موجود نمیتوانست به سادگی برای چنین هدفی مورد استفاده قرار گیرد. نخستین بولتنهای خبری چنین جنبشهایی به مین فرایمهای اهدایی وابسته بودند. منبع كمیاب و پیچیدهای كه از خارج انجمن به آنجا آورده شده بود. جایی كه تقریباً هیچ مهارتی برای اجرا، نگهداری، تعمیر، و توسعه آن وجود نداشت.
در چنین زمانی كمكم ادوات یكپارچه ۱TTL در مقیاسهای كوچك، متوسط، و بزرگ در حال رایجشدن بودند. قطعات ساده و ارزانی كه به آسانی و با استفاده از ابزارهایی نظیر سیمپیچ، كیتهای آماده و تخته مدارهای چاپی دستساز سرهم میشدند. این ادوات كاملاً مناسب افرادی بودند كه با این گونه چیزها سرگرم میشدند. به این ترتیب، سمجها به جان سیمها افتادند و در نهایت، گروه بزرگی از طراحان خودساخته پدیدار شدند. یكی از كسانی كه در آن روزگار با هر دو گروه مرتبط بود، <لی فلسناشتاین> نام داشت. یك طراح الكترونیك و یكی از اعضای جنبش آزادی بیان بركلی، مسئول اولین سیستم بولتن خبری این جنبش بود.
او در آن زمان تحتتأثیر كتابی به نام <ابزارهای یك جامعه> ۲Convivial قرار گرفته بود: <هر شخص از طریق ابزارهایی كه خود، آنها را هدایت میكند و یا ابزارهایی كه ناخواسته او را هدایت میكنند، خود را به جامعه خویش مربوطمیكند. زمانی كه این ابزارها تحت تسلط وی هستند، این خود اوست كه میتواند افكارش را به دنیا القا كند. اما زمانی كه او تحت تسلط این ابزارها قرارگیرد، آنها شكلدهنده انگارههای ذهنی او خواهند شد. ابزارهایConvivial ابزارهایی هستند كه برای كاربران آنها بزرگترین فرصت غنی ساختن محیط را با استفاده از ثمرات ذهن خود فراهم میكنند.>
حركت نبوغآمیز فلسناشتاین این بود كه دریابد چگونه این ایدههای محض میتوانند حلال مشكلات سیستمهای بولتن خبری انجمن باشند؛ كامپیوترهای جدید (در اصل همان ترمینالها) میبایست به صورت گروهی و با استفاده از تواناییهای مشتاقان سمج و خوشذوقی كه در سراسر كشور پراكنده شده بودند، طراحی و ساخته شوند و در هر انجمنی عدهای، از همه جزئیات سیستمهای مورد استفاده آگاهی داشته باشند.
بدینگونه مسئله نگهداری و تعمیر نیز حل میشد. به عبارت دیگر، استفاده از « ابزارهای» Convivial مستلزم این بود كه پروسه طراحی رایانهها بهطور كلی وارونه گردد تا از درون به یك پروسه Convivial تبدیل شود. نخستین تلاش فلسناشتاین برای تحقق این هدف، طراحی ترمینال Tom Swift بود. وی برای این منظور، تا جایی كه میتوانست به توزیع طرحها و الگوهای نموداری این ترمینال پرداخت.
او میگوید: « قابلیت اعتماد سختافزاری یك مسئله بدیهی بود... روش من صرفنظر از این مسئله طراحی یك وسیله سایبرنتیك Convivial چندمنظوره به عنوان یك ترمینال /متمركز كننده/ پردازنده بود. به نحوی كه آماتورها به كاركردن با آن تشویق شوند. از نظر تئوری، هرجا كه یكی از ترمینالهای Tom Swift استقرار مییافت، اسباب تأسیس یك باشگاه كامپیوتری را فراهم میكرد. سپس هرگاه یك ترمینال از كار میافتاد، ترمیم یك مسئله محلی محسوب میشد و افراد مجبور نبودند عقاید خود را بر روی یك سیستم مینفریم راهدور قرار دهند.»
دومین تلاش فلسناشتاین نه یك طراحی، كه تأسیس یك سازمان بود؛ باشگاه كامپیوتری Homebrew . این باشگاه كار خود را با پنج نفر آغاز كرد. در اولین گردهمایی، این تعداد به ۳۰ نفر و ظرف یكسال به ۶۰۰ نفر افزایش یافت. هدف باشگاه، ترویج طراحی مشاركتی رایانه Homebrew بود.
طرحها، حتی آنهایی كه به محصولاتی تجاری، مانند اولین رایانه اپل، تبدیل میشدند، با یكدیگر به اشتراك گذاشته شده و تلفیق میشدند و در مورد آنها بحث و تبادلنظر میشد. تأثیرات مستقیم و غیرمستقیم این باشگاه، به خارج از مرزهای ایالات متحده نیز سرایت كرد.
در واقع، صنعت نوپای رایانههای خانگی متشكل از مجموعهای نامنسجم از شركتهای تولیدی كوچك و گروههای مشتاقی (غالباً یك عده خاص) بود كه خالق فرهنگ آزادی در این حوزه بودند.
در این شرایط، شركتهای معظم و قدیمی كامپیوتری زمانی دریافتند كه میتوانند از بازار بالقوه موجود در این حوزه استفاده كنند كه رای تحمیل سیستم موردنظر آنها بسیار دیر شده بود. علیرغم این موضوع، IBM از تلاش برای حضور در این عرصه صرفنظر نكرد. یكی از مدیران وقت IBM در این مورد گفته بود: « بهتر است معماری IBM به یك معماری باز تبدیل شود؛ فراهمكردن اطلاعات و مشخصاتی كه باعث تشویق دیگران به توسعه ویژگیها و برنامههای قابلاجرا بر روی سیستمهای ما گردد.
این رویكرد، صدها فرد و شركت را قادر به توسعه صدها وسیله جانبی سختافزاری میسازد و مردم میتوانند آنها را برای كامپیوتر شخصی IBM خود انتخاب كنند.»
با این حال، كاملاً بدیهی بود كه اعضای باشگاه Homebrew درصدد تحمیل خط مشی خود هستند. فلسناشتاین میگوید: « در سال ۱۹۷۸، IBM پا را از گلیم خود درازتر كرد و با معرفی ۵۱۰۰ ، محصول عجیب و ناسازگاری كه بیانگر رویكرد IBM بود، ادعا كرد این به من تعلق دارد». البته آنها مایل نیستند در مورد آنچه كه اتفاق افتاد، توضیح دهند. ولی در سال ۱۹۸۱ آنها با ۵۱۵۰ (یك PC ) بازگشتند و از قوانین ما تبعیت كردند. طبق این قوانین، همه میتوانند به ایفای نقش بپردازند. اما شما باید معماری و كد اجرایی خود را تا آنجا كه ممكن است، همگانی كنید. در عین حال باید افرادی را به نوشتن برنامه و ساختن الحاقات آن تشویق كنید. شما میتوانید بازی كنید. اما باید دیگران را هم در انجامدادن بازی یاری كنید.»
▪ موج دوم
در اواخر دهه هفتاد، این شفافیت به تدریج از میان رفت. ابعاد و پیچیدگی چیپها به شدت افزایش یافت. تولید چیپهای سفارشی از سوی طراحان، نیاز به دانش در تمام سطوح این قطعات داشت كه این امر به طور فزایندهای وضعیت را مشكلتر میكرد.
▪ اكنون به دو چیز نیاز بود: اول متمایز ساختن طراحی فیزیكی چیپ از طراحی منطقی و معماری آن و دوم، استنتاج یكی از دیگری.
این صرفاً نه یك مسئله فنی، بلكه یك مشكل اجتماعی بود. این موضوع مستلزم تربیت مهندسانی بود كه بتوانند با شیوه جدید كاركنند. در همین اثنا، انگیزه چارهجویی میان دو نفر كه این مشكل را به وضوح مشاهده میكردند، به وجود آمد.
Carver Mead و Lynne Conway روشی را اختراع كرده بودند كه از دو بخش تشكیل میشد. یك بخش فنی كه شامل كاهش طراحیهای منطقی به منظور سادهسازی نمودارهای ارائه شده همراه با پیادهسازی مستقیم و قابل ارتقای نیمه هادیها بود و یك بخش اجتماعی این بخش بخش اجتماعی. شامل اختراع همان چیزی بود كه اریك ریموند سالها بعد آن را بازار نامید. لین كانوی در رسالهای به نام « سرگذشت» MPC در باب چگونگی ایجاد جامعهای بازارگونه، شرایط را مطرح میكرد:
▪ شمول عده زیادی از مردم
▪ اشكال زدایی همزمان
▪ طراحان سیستم باید كاربران آن نیز باشند
▪ پاسخ سریع به نظرات كاربر و عرضه مستمر برطرفكننده اشكالات و بهبودها
▪ اجازه گسترش استانداردها، فراتر از كاربرد معمول
اما این شباهتها در این برداشتهای اشتباه خلاصه نمیشود. در حقیقت باید گفت كه بحث و استدلالهای مربوطبه تفسیر آزادی حامیان مجوزهای بنیاد نرمافزار آزاد و طرفداران مجوزهای BSD گونه، به حوزه سختافزار نیز قابل تعمیم هستند و از این حیث پیچیدگیهای خاص این موضوع به این حوزه نیز سرایت كردهاست.
علیرغم این موضوع جریان اصلی این جنبش مسیر خود را طی میكند. در حقیقت گمان میرود كه ایده سختافزار آزاد و مدل توسعه مشاركتی آن بتواند بسیاری از مشكلات صنعت نیمههادیها را حل كند. بسیاری از متخصصان مستقل و شركتها خواهند توانست در رفع اشكال، بهبود، ارتقا و البته تغییر طراحی سختافزار ایفای نقش كنند.
در مدل بسته و رایج فعلی، یك طرح سختافزاری متعلق به شركت سازنده آن است و برای هیچ شخص یا شركت دیگری در خارج از آن مجموعه شناخته شده نخواهد بود. (البته باید صنعت مهندسی معكوس را كه خود نمونه بارزی از اتلاف انرژی برای كشف چگونگی كاركرد یك قطعه در مدلهای بسته اختصاصی است، از این قضیه مستثنی كنیم).
بنابراین بهبود یك طرح سختافزاری صرفاً توسط تولیدكننده میسر میشود و تبع آن تمام هزینههای تحقیق و توسعه برای بهبود و پیشرفت محصولات نیز برعهده آن تولیدكننده خواهد بود.
اما بررسی دنیای نرمافزار نشان میدهد كه نرمافزارهای آزاد میتوانند از طریق اشكالزدایی، اصلاحات و بهبودها و پیشرفتهای به دست آمده توسط خیل عظیمی از مشاركتكنندگان پروژه، به روند توسعه یك پروژه نرمافزاری سرعت ببخشند. با این اوصاف و با وجود تفاوتهای ماهوی دو حوزه نرمافزار و سختافزار، ملزومات متفاوت این دو حوزه هیچ دلیل محكمی (حداقل تاكنون) برای اینكه نتوان از این مدل توسعه در طراحی سختافزار استفاده كرد بهشمار نمیآید.
شاید در عمل و در مقایسه با توسعهدهندگان نرمافزار عده كمتری با دانش طراحی سختافزار آشنایی داشته باشند، اما این امر به معنای غیرعملی بودن پیادهسازی این مدل نخواهد بود. (البته هزینههای موردنیاز برای طراحی، آزمایش و توسعه سختافزار نیز میتواند باعث كاهش مشاركتكنندگان در این حوزه گردد كه این موضوع نیازمند بحثی جداگانه است).
قطعات الكترونیكی به دلایل متعددی چون یكپارچه شدن ابزارها، به طور روزافزون پیچیدهتر میشوند و رقابت میان سازندگان هر روز افزایش مییابد. همین موضوع باعث شدهاست سازندگان سختافزار به گسترش داراییهای فكری خود علاقمند شوند و به توسعه محصولات مبتنی بر این داراییها وابستگی بیشتری پیدا كنند. به این ترتیب به نظر میرسد كه فناوریهای انقلابی همچون سیستم بر روی تراشه (system on chip یا اختصارا SOC) به واسطه عدم دسترسی بسیاری از سازندگان به این فناوریها، بهخاطر انحصاری بودن آنها، كاربردی محدود داشتهباشند.
به عنوان مثالی دیگر، مسئله مالكیت معنوی شركتها در مورد اینترفیسهای بین تراشهای و فقدان یك استاندارد جامع در این حوزه باعث شدهاست شركتهای نرمافزاری به صورت مستقل بر روی این اینترفیسها فعالیت كنند. این موضوع باعث بروز مشكلات ناسازگاری فراوانی در میان قطعات مختلف میشود. در حال حاضر برخی از شركتها به تبادل داراییهای فكری میپردازند و حتی شركتها و موسسات تخصصی ویژهای برای تسهیل این مبادلات مشغول فعالیت هستند. این حركتها به طور حتم ضروری، اما ناكافی هستند. به علاوه، كمك چندانی به گسترش این فناوریها از منظری كه جنبش سختافزار آزاد به آن نیازمند است، نمیكند.
بدون شك نگرانی شركتهای صاحب داراییهای معنوی به كاهش سودآوری آنها به واسطه دسترسی شركتهای دیگر به این داراییها مربوط میشود و به نظر میرسد تبیین مدلهای تجاری عملی در شیوه جدید توسعه میتواند تا حدودی از این نگرانیها بكاهد. در واقع جلوگیری از متعارف شدن فناوریها با استفاده از مالكیتهای معنوی انحصاری، تنها راه حفظ سودآوری نیست. كاهش هزینهها و افزایش تولید به عنوان دو عامل مهم برای رونق بخشیدن به كسبوكار ، شیوهای تثبیت شده است و طراحی و توسعه آزاد فناوریها به طور اشتراكی میتوانند در تحقق دو عامل فوق نقش شایانی داشته باشند.
پس در وهله اول توسعه یك سیستم به اشتراكگذاری داراییهای فكری نه تنها میتواند انگیزه مشاركت سازندگان سختافزار به طراحی آزاد را تقویت كند، بلكه از تلاشهای مضاعف شركتهای فاقد حق استفاده از یك فناوری خاص برای اختراع دوباره چرخ جلوگیری میكند و برای نوآوریهای فنی وضعیتی بهینه را فراهم خواهد كرد.
▪ مجوزها
امروزه روش طراحی نیمه هادیها به فرایند توسعه یك سیستم نرمافزاری مهم بیشباهت نیست. به منظور توسعه یك مدار مجتمع با كاربرد خاص یا ASIC ، ابتدا با توجه مجموعه مفصلی از مشخصات پیادهسازی (كه خود تابع كاركردهای موردنیاز تعیین شده توسط گروه بازاریابی است،) از یك زبان تشریح سختافزاری (HDL) نظیر VHDLیا Verilog استفاده میشود.
كدهای منبع HDL پس از نوشته شدن و بررسی با نت لیستی (netlist) كه اتصالات گیتهای منطقی را (كه بر روی سیلیكون قرار خواهند گرفت) تشریح میكند، تطبیق داده میشود. هر گیت منطقی در نت لیست مستقیماً به تركیب خاصی از ترانزیستورها منتسب میشود. نت لیست توسط ابزار دیگری كه موقعیت قرارگیری هر ترانزیستور و سیم بر روی تراشه را انتخاب میكنند، مورد استفاده قرار میگیرد. طراحی فیزیكی به دست آمده مستقیماً توسط ماسكهای نوری كه در مرحله تولید از این طراحی الگوبرداری میكند مورد استفاده قرار میگیرد. در بسیاری از مراحل مذكور نرمافزارهای ویژهای كه برای انجام این كارها طراحی شدهاند مورد استفاده قرار میگیرند.
بنابراین میتوان اینگونه پنداشت كه طراحی سختافزار آزاد یا منبع باز در ابتدا به حوزه نرمافزاری آن مربوط میشود. از این منظر و با چنین دیدگاهی برخی طراحی سختافزاری را باز یا آزاد مینامند كه كدهای منبع زبان تشریح سختافزاری و نرمافزارهای به كار رفته در طراحی آن با استفاده از یك مجوز نرمافزاری توزیع شده باشند. بنابراین این مجوز اولاً باید حق توزیع آزادانه كدهای منبع آن را تضمین نماید و ثانیاً حق ایجاد فعالیتهای اشتقاقی مبتنی براین كدهای منبع و توزیع مجدد آنها را نیز برمبنای یك مجوز مشابه تضمینكند. حتی مثلاً میتوان با الهام از مجوز GPL بنیاد نرمافزار آزاد، شرط اینكه فعالیتهای اشتقاقی هم باید با استفاده از <همان مجوز> اولیه توزیع شوند را نیز به عنوان یكی از شروط اضافه كرد.
ریچارد استالمن پایهگذار بنیاد نرمافزار آزاد در سال ۱۹۹۹ میلادی استفاده از مجوزهایی چون GPL را برای زبانهای برنامهنویسی طراحی سختافزار به واسطه ماهیت نرمافزاری آنها كاملاً عملی میدانست. با این حال استفاده از چنین مجوزهایی فقط بخشی از ماجرای مجوزدهی سختافزاری را حل میكنند و بحث اصلی پیرامون شیوه توسعه و به كارگیری گونه جدیدی از مجوزها همچنان باقی میماند.
ارسال مقاله توسط کاربر محترم سایت: sm1372
مقالات مرتبط
تازه های مقالات
ارسال نظر
در ارسال نظر شما خطایی رخ داده است
کاربر گرامی، ضمن تشکر از شما نظر شما با موفقیت ثبت گردید. و پس از تائید در فهرست نظرات نمایش داده می شود
نام :
ایمیل :
نظرات کاربران
{{Fullname}} {{Creationdate}}
{{Body}}