اشاره :
پس
از گذشت چند دهه از جنبشهای آزادی طلبانه نرمافزاری، تأثیرات شگرف این
فرهنگ، یکی از مهمترین دگرگونیهای تاریخ کامپیوتر را رقم زده است.
فعالشدن انجمنها و اجتماعاتی بزرگ متشکل از هزاران برنامهنویس و متخصص
در سراسر دنیا، روی آوردن شرکتهای معظم IT به توسعه یا حمایت
نرمافزارهای منبعباز، استقبال دولتها از این حرکت، و موارد بیشمار
دیگر، متحولشدن آینده نرمافزار را به واقعیتی انکارناپذیر تبدیل
کردهاست. گرچه هیاهوی شیفتگان، مخالفان، و منتقدان منبعباز و منبع بسته
همچنان ادامه دارد، اما همین تقابلات و نقطه نظرات منجر به رسیدن به سطحی
از تعامل شده که اکنون با قاطعیت میتوان این فرهنگ را جزء جدایی ناپذیر
این صنعت دانست. در عین حال، پی بردن به اهمیت جایگاه آزادی در حوزه
نرمافزار، تأثیرات پیرامونی دیگری را نیز به همراه داشته است. یکی از
مهمترین این اثرات، درک و پذیرش واقع بینانهتر فرهنگهای مشابهی است که
در حوزههای دیگر IT پدیدار شده و یا خواهند شد. این است که وقتی سخن از
جنبش آزادی خواهانه دیگری، اینبار در حوزه سختافزار به میان میآید،
پرسشها و ابهامات اولیه بیش از آنکه حول انکار یا عدم انکار اصل وجود آن
باشد، به اینگونه مضامین نزدیک است که: چه تشابهات و تضادهایی میان
نرمافزار آزاد و سختافزار آزاد وجود خواهد داشت؟ مجوزهای نرمافزاری و
سختافزاری چه تفاوتهایی با یکدیگر خواهند داشت؟ و ... . اما جنبش
سختافزار آزاد، علیرغم سابقه طولانی خود، نسبتاً مهجور مانده است.
صرفنظر از دلایل این موضوع، آگاهی از تحولات به وجودآمده در حوزه
سختافزار از این منظر، میتواند فصل جدیدی را در مباحث فرهنگی، اجتماعی و
فنی IT رقم بزند. نخستین بخش نوشتار حاضر به بررسی علل تاریخی شکلگیری
این جنبش، و وضعیت آن تا به امروز میپردازد.
تاریخچه در
دهه 1960 میلادی، جنبشهای دانشجویی با هدف ایجاد جوامع آزاد، در تکاپو
و فعالیت بودند و تقریباً در اوایل دهه هفتاد میلادی، مسجل شده بود که
شبکههای کامپیوتری میتوانند اساس گونه جدیدی از ارتباطات باشند که باعث
تقویت و گسترش جوامع شوند و میتوانند جایگزینی برای انتشار رسانهای
متمرکز (حتی مطبوعات زیرزمینی) باشند؛ رسانهای برای شرکتکنندگان فعال.
با
این حال، فناوریهای کامپیوتری موجود نمیتوانست به سادگی برای چنین هدفی
مورد استفاده قرار گیرد. نخستین بولتنهای خبری چنین جنبشهایی به مین
فرایمهای اهدایی وابسته بودند. منبع کمیاب و پیچیدهای که از خارج انجمن
به آنجا آورده شده بود. جایی که تقریباً هیچ مهارتی برای اجرا، نگهداری،
تعمیر، و توسعه آن وجود نداشت.
در چنین زمانی کمکم ادوات یکپارچه 1TTL
در مقیاسهای کوچک، متوسط، و بزرگ در حال رایجشدن بودند. قطعات ساده و
ارزانی که به آسانی و با استفاده از ابزارهایی نظیر سیمپیچ، کیتهای
آماده و تخته مدارهای چاپی دستساز سرهم میشدند. این ادوات کاملاً مناسب
افرادی بودند که با این گونه چیزها سرگرم میشدند. به این ترتیب، سمجها
به جان سیمها افتادند و در نهایت، گروه بزرگی از طراحان خودساخته
پدیدار شدند. یکی از کسانی که در آن روزگار با هر دو گروه مرتبط بود،
<لی فلسناشتاین> نام داشت. یک طراح الکترونیک و یکی از اعضای جنبش
آزادی بیان برکلی، مسئول اولین سیستم بولتن خبری این جنبش بود.
او در آن زمان تحتتأثیر کتابی به نام <ابزارهای یک جامعه> 2Convivial قرار
گرفته بود: <هر شخص از طریق ابزارهایی که خود، آنها را هدایت میکند و
یا ابزارهایی که ناخواسته او را هدایت میکنند، خود را به جامعه خویش
مربوطمیکند. زمانی که این ابزارها تحت تسلط وی هستند، این خود اوست که
میتواند افکارش را به دنیا القا کند. اما زمانی که او تحت تسلط این
ابزارها قرارگیرد، آنها شکلدهنده انگارههای ذهنی او خواهند شد.
ابزارهایConvivial ابزارهایی هستند که برای کاربران آنها بزرگترین فرصت
غنی ساختن محیط را با استفاده از ثمرات ذهن خود فراهم میکنند.>
حرکت
نبوغآمیز فلسناشتاین این بود که دریابد چگونه این ایدههای محض
میتوانند حلال مشکلات سیستمهای بولتن خبری انجمن باشند؛ کامپیوترهای
جدید (در اصل همان ترمینالها) میبایست به صورت گروهی و با استفاده از
تواناییهای مشتاقان سمج و خوشذوقی که در سراسر کشور پراکنده شده بودند،
طراحی و ساخته شوند و در هر انجمنی عدهای، از همه جزئیات سیستمهای مورد
استفاده آگاهی داشته باشند.
بدینگونه مسئله نگهداری و تعمیر نیز
حل میشد. به عبارت دیگر، استفاده از <ابزارهای> Convivial مستلزم
این بود که پروسه طراحی رایانهها بهطور کلی وارونه گردد تا از درون به
یک پروسه Convivial تبدیل شود. نخستین تلاش فلسناشتاین برای تحقق این
هدف، طراحی ترمینال Tom Swift بود. وی برای این منظور، تا جایی که
میتوانست به توزیع طرحها و الگوهای نموداری این ترمینال پرداخت.
او
میگوید: <قابلیت اعتماد سختافزاری یک مسئله بدیهی بود... روش من
صرفنظر از این مسئله طراحی یک <وسیله سایبرنتیک>
Convivial چندمنظوره به عنوان یک ترمینال /متمرکز کننده/ پردازنده بود. به
نحوی که آماتورها به کارکردن با آن تشویق شوند. از نظر تئوری، هرجا که یکی
از ترمینالهای Tom Swift استقرار مییافت، اسباب تأسیس یک باشگاه
کامپیوتری را فراهم میکرد. سپس هرگاه یک ترمینال از کار میافتاد، ترمیم
یک مسئله محلی محسوب میشد و افراد مجبور نبودند عقاید خود را بر روی یک
سیستم مینفریم راهدور قرار دهند.>
دومین تلاش فلسناشتاین
نه یک طراحی، که تأسیس یک سازمان بود؛ باشگاه کامپیوتری Homebrew . این
باشگاه کار خود را با پنج نفر آغاز کرد. در اولین گردهمایی، این تعداد به
30 نفر و ظرف یکسال به 600 نفر افزایش یافت. هدف باشگاه، ترویج طراحی
مشارکتی رایانه Homebrew بود.
طرحها، حتی آنهایی که به محصولاتی
تجاری، مانند اولین رایانه اپل، تبدیل میشدند، با یکدیگر به اشتراک
گذاشته شده و تلفیق میشدند و در مورد آنها بحث و تبادلنظر میشد.
تأثیرات مستقیم و غیرمستقیم این باشگاه، به خارج از مرزهای ایالات متحده
نیز سرایت کرد.
در واقع، صنعت نوپای رایانههای خانگی متشکل از
مجموعهای نامنسجم از شرکتهای تولیدی کوچک و گروههای مشتاقی (غالباً یک
عده خاص) بود که خالق فرهنگ آزادی در این حوزه بودند.
در این
شرایط، شرکتهای معظم و قدیمی کامپیوتری زمانی دریافتند که میتوانند از
بازار بالقوه موجود در این حوزه استفاده کنند که رای تحمیل سیستم موردنظر
آنها بسیار دیر شده بود. علیرغم این موضوع، IBM از تلاش برای حضور در این
عرصه صرفنظر نکرد. یکی از مدیران وقت IBM در این مورد گفته بود: <بهتر
است معماری IBM به یک معماری باز تبدیل شود؛ فراهمکردن اطلاعات و مشخصاتی
که باعث تشویق دیگران به توسعه ویژگیها و برنامههای قابلاجرا بر روی
سیستمهای ما گردد.
این رویکرد، صدها فرد و شرکت را قادر به
توسعه صدها وسیله جانبی سختافزاری میسازد و مردم میتوانند آنها را
برای کامپیوتر شخصی IBM خود انتخاب کنند.>
با این حال، کاملاً
بدیهی بود که اعضای باشگاه Homebrew درصدد تحمیل خط مشی خود هستند.
فلسناشتاین میگوید: < در سال 1978، IBM پا را از گلیم خود درازتر کرد
و با معرفی 5100، محصول عجیب و ناسازگاری که بیانگر رویکرد IBM بود، ادعا
کرد این به من تعلق دارد>. البته آنها مایل نیستند در مورد آنچه که
اتفاق افتاد، توضیح دهند. ولی در سال 1981 آنها با 5150 (یک PC )
بازگشتند و از قوانین ما تبعیت کردند. طبق این قوانین، همه میتوانند به
ایفای نقش بپردازند. اما شما باید معماری و کد اجرایی خود را تا آنجا که
ممکن است، همگانی کنید. در عین حال باید افرادی را به نوشتن برنامه و
ساختن الحاقات آن تشویق کنید. شما میتوانید بازی کنید. اما باید دیگران
را هم در انجامدادن بازی یاری کنید.>
لی فلسن اشتاین
موج دوم موج
اول جنبش سختافزارآزاد در خارج از دانشگاهها به وقوع پیوسته بود. اما
موج دوم این جنبش را دانشگاهها برپاکردند که شامل عدهای از افراد مستقل
نیز میشد. در موج اول، موضوع به اشتراک گذاشتن طراحی برمبنای IC های
موجود مطرح بود. مستندات اجزای داخلی این ICها، موجود بود. بنابراین مشکلی
وجود نداشت. طراحیها همانند طرحهای موجود، عمدتاً دستی بودند. طراحی
چیپها از لحاظ منطقی چندان پیچیده نبود، اما تولید آنها به دانش بالا از
فیزیک نیمه هادیها نیازداشت که محدود به مهندسان شرکتهای معدود
تولیدکننده آنها بود. زیرا آنها دارای تجهیزات تولید اختصاصی خود بودند.
در اواخر دهه هفتاد، این شفافیت به تدریج از میان رفت. ابعاد و
پیچیدگی چیپها به شدت افزایش یافت. تولید چیپهای سفارشی از سوی طراحان،
نیاز به دانش در تمام سطوح این قطعات داشت که این امر به طور فزایندهای
وضعیت را مشکلتر میکرد.
اکنون به دو چیز نیاز بود: اول متمایز
ساختن طراحی فیزیکی چیپ از طراحی منطقی و معماری آن و دوم، استنتاج یکی از
دیگری. این صرفاً نه یک مسئله فنی، بلکه یک مشکل اجتماعی بود. این موضوع
مستلزم تربیت مهندسانی بود که بتوانند با شیوه جدید کارکنند. در همین
اثنا، انگیزه چارهجویی میان دو نفر که این مشکل را به وضوح مشاهده
میکردند، به وجود آمد.
Carver Mead و Lynne Conway روشی را
اختراع کرده بودند که از دو بخش تشکیل میشد. یک بخش فنی که شامل کاهش
طراحیهای منطقی به منظور سادهسازی نمودارهای ارائه شده همراه با
پیادهسازی مستقیم و قابل ارتقای نیمه هادیها بود و یک بخش اجتماعی این
بخش بخش اجتماعی. شامل اختراع همان چیزی بود که اریک ریموند سالها بعد آن
را <بازار> نامید. لین کانوی در رسالهای به نام <سرگذشت> MPC
در باب چگونگی ایجاد جامعهای بازارگونه، شرایط را مطرح میکرد:
- شمول عده زیادی از مردم
- اشکال زدایی همزمان
- طراحان سیستم باید کاربران آن نیز باشند
- پاسخ سریع به نظرات کاربر و عرضه مستمر برطرفکننده اشکالات و بهبودها
- اجازه گسترش استانداردها، فراتر از کاربرد معمول
پیش
نیاز تحقیق این امر، وجود یک شبکه (در آن زمان ARPANET) و همچنین شفافیت
کامل بود. به واسطه همکاری مشترک عده زیادی از طراحان و با تلفیق چند طرح
روی یک ویفر، امکان تولید چیپهایی ارزان میسر شد. این شیوه به سرعت از یک
مبنای اولیه در زیراکس پارک، Caltech و MIT در سراسر ایالات متحده و سپس
در اروپا گسترش یافت. در آغاز، مهمترین کاربرد نرمافزار، در طراحی بود.
اما برای تقویت گسترش این روش، لازم بود این نرمافزار آزاد باشد.
این
موضوع پیش از به وجود آمدن بنیاد نرمافزار آزاد و GPL بود. اما بعدها
نرمافزار Chipmunk به عنوان الگوی قبلی نرمافزار اصلی مید و کانوی، که
هنوز هم برای تدریس و پژوهش از آن استفاده میشود، تحت مجوز GPL ارائه شد.
با
گسترش این شیوه، خیل کسانی که قادر به طراحی ICها بودند، به شدت رو به
فزونی نهاد و مجموعهای از نرمافزارهای اتوماسیون طراحیِ توسعهیافته در
محیط دانشگاهی، غالباً برکلی و استانفورد و البته برخی دانشگاههای
اروپایی مانند Delft، ارائه شد. Magic برای طرحبندی، SIS و Espresso برای
حداقلسازی طراحی منطقی، Ocean برای طراحی چیپهای Sea - Of - Gate (نوع
خاصی از چیپها) و Olympus برای پیوندها.
همه این نرمافزارها
تحت مجوز آزاد ارائه میشدند. به این ترتیب ،در یک دوره زمانی،
نرمافزارهای دارای طراحی بسیار پیشرفته، نرمافزارهای آزاد بودند تا جایی
که اکنون نیز ابزارهای طراحی منبع بسته امروزی، شامل برخی از اجزای
برنامههای مذکور هستند.
موج سوم
وضعیت
مطلوبی که برای طراحی آزاد سختافزار به وجود آمده بود، چندان دوام
نیاورد. در واقع در اوایل دهه نود میلادی موج دوم این جنبش دچار توقف شد.
دانشگاهها به جای تولید نرمافزارآزاد که میتوانست کاربرد تجاری نیز
داشته باشد، یا به سمت توسعه نرمافزارها با بستن قرارداد با شرکتهای
طراح قطعات الکترونیکی گرویدند و یا برای تجاری کردن محصولات خود به تأسیس
شرکتهای خصوصی روی آوردند. (نرمافزارهای EDA منبع بسته، خارج از دسترس
عموم و یا بخشی از یک محصول خاص شرکتها بودند.)
گذشته از این
امر، بازماندگان موج اول شاهد دگرگونی فناوری بودند؛ افزایش کوچکسازی،
سرعتهای کلاک بالا، تخته مدارهای چاپی چند لایه، مدارهای مبتنی بر ICهای
سفارشی و ... همه باعث شد تا مصائب طراحیهای آزادی که در مقابل
نمونههای غیرآزاد منسوخ و کهنه جلوه نکنند، فزونی یابد. این عوامل سبب شد
تا نیمه نخست دهه نود عصر تاریک جنبش سختافزار آزاد لقب بگیرد.
با تمام این احوال، بسیاری از طراحان راه خود را به صورت مستقل ادامه دادند و گروهی نیز سرگرم کار بر روی نرمافزار 3EDA شدند. اما از اواسط دههنود و پس از وقوع تحولات فنی و اجتماعی آن زمان، جنبش سختافزار آزاد دوباره پا گرفت.
بهعنوان برخی از مهمترین دلایل این موضوع، میتوان بهموارد زیر اشاره کرد:
1 - تغییر مقیاس IC ها
مقیاس ICها بهنحوی تغییر کرد که Socها (System - On - chips) رواج گستردهای یافتند و تقاضا برای آنها بالا گرفت.
2 - گسترش استفاده از FPGAها
استفاده
از FPGAها امکان ساخت و تکمیل طرحهای پیچیده حتی بدون دسترسی به
کارخانهها را فراهم میکند.FPGAها تقریباً تمام مشکلات طراحان دهه هشتاد
را حلمیکنند. در حقیقت، همه گروههای طراح سختافزار آزاد، از برخی
مزایای FPGA ها استفاده میکنند.
3 - گسترش بازار سیستمهای embed
سیستمهایی
در مقیاسی که طراحان شخصی قادر به ساختن آن هستند. رایانه دیگر صرفاً یک
جعبه بزرگ و داغ نیست، بلکه میتواند یک سیستم کوچک و ارزان با کاربرد خاص
باشد.
4 - گسترش اینترنت:
پوشش
جهانی شبکه اینترنت و گسترش بیحد و حصر آن باعث شد تا طراحی سختافزار
آزاد به ایالات متحده، اروپا و یا انگلیسی زبانها محدود نباشد.
5
- پررنگ شدن نقش جنبش نرمافزارآزاد در صنعت رایانه و حضور تأثیرگذار،
ثابت و پایدار جامعه نرمافزارآزاد به عنوان الگویی عملی برای طراحی
سختافزار آزاد.
در حال حاضر یکی از فعالترین
گروههای حامی سختافزارآزاد، Opencores نام دارد. از سال 1998
پایگاهOpencores.org به عنوان پورتالی برای پروژه سختافزار آزاد با
کارکرد تقریباً مشابه پایگاه sourceforg برای پروژه نرمافزار منبعباز
مشغول فعالیت میباشد. Opencores بر روی پروژه توسعه مداراهای یکپارچه با
کاربرد خاص یا ASICها متمرکز کردهاست. هدف Opencores کمک به جامعه
سختافزار برای تولید و انتشار طراحی هسته تحت یک مجوز خاص مشابه GPL است.
بهطور قطع، هر یک از عوامل مذکور در کنار حرکتهایی چون
Opencores، تأثیری مثبت و به سزا بر روند پیشرفت طراحی آزاد سختافزار
داشته و دارند. اما شاید بتوان نقطه عطف این جنبش را حرکت یکی از غولهای
رایانه در این مسیر قلمداد کرد. IBM در سال 2004 میلادی اعلام کرد که
معماری پردازندههای خود موسوم به Power را به یک معماری باز
تبدیلخواهدکرد.
IBM در ماه مارس سال 2004 میلادی کنسرسیومی به
نام Power.org متشکل از 15 شرکت را معرفی کرد که هدف آن، توسعه
استانداردهای باز برای تراشهها و سیستمهای مبتنی بر معماریPower
میباشد. ناول، ردهت و سونی از صاحب نامترین شرکتهای عضو این کنسرسیوم
هستند.
IBM با استراتژی
با باز شدن معماری پردازندهها،
IBM این امکان را در اختیار دیگر توسعهدهندگان قرارمیدهد تا به طراحی
وتولید تراشههایی دقیقاً منطبق با نیازهای خود بپردازند.
پرازندههای
Power که مبتنی بر معماری RISC میباشند، هماکنون کارایی بالای خود را در
حوزههای مختلفی چون صنعت سرگرمی، تجهیزات embedded و سرورها نشان
دادهاند. اما هیچ یک از اینها به معنای موفقیت قطعیIBM نخواهند بود.
زیرا
فوجیستو و سان از مدتها قبل بخشی از معماری پردازندههای sparc را به
صورت باز ارائه کردهاند. اما همچنان در جذب مشتریان بیشتر و تبدیل شدن به
یکی از بازیگران اصلی این حوزه ناکام ماندهاند.
در مورد IBM نیز
باید تا به ثمررسیدن تلاشهای توسعهدهندگان منتظر بود. IBM اعلام کرده
است که قصد دارد معماری پردازنده نسل جدید کنسول بازی سونی، Playstation3،
را که محصول مشترک تلاشهای این دو شرکت و توشیبا میباشد را به صورت باز
ارائهکند.
علاوهبر نمونههای مطرحشده در موج نوین جنبش
سختافزار آزاد، موارد متعدد دیگری نیز موجود و قابلذکر میباشد که البته
از حوصله این نوشتار خارج است. اما آنچه بیش از همه در این جا مورد تاکید
قرار گرفته توجه به ماهیت اجتماعی این حرکت و پیوند آن با دیگر تحولات
فرهنگی است. استنتاج این واقعیت بر اساس ریشه ها وعلل تاریخی این جنبش
میتواند به روشنی برخی از کارکردهای آن را نمایان سازد و سمت وسوی بخش
پیموده نشده این راه را به تصویر بکشد. البته مسلم ایناستکه پیشبرد و
تحقق اهداف این جنبش، مستلزم درک صحیح شرایط و نیازها، ارائه تعاریفی دقیق
و شناخت چالشهای پیش روی آن است.
پی نوشت:1- واژه
2- TTLهاگروه خاصی از مدارهای دیجیتال هستند که بهطور گسترده در ابزارهای الکترونیکی متنوع مورد استفاده قرار میگیرند.
3- نرمافزارهای EDA نرمافزارهای خاصی هستند که برای طراحی قطعات الکترونیکی، مورداستفاده قرارمیگیرن