جنبش سختافزار آزاد، عليرغم سابقه طولاني خود ، نسبتاً مهجور مانده است. صرفنظر از دلايل اين موضوع، آگاهي از تحولات به وجودآمده در حوزه سختافزار از اين منظر ، ميتواند فصل جديدي را در مباحث فرهنگي، اجتماعي و فني IT رقم بزند.
پس از گذشت چند دهه از جنبشهاي آزادي طلبانه نرمافزاري، تأثيرات شگرف اين فرهنگ، يكي از مهمترين دگرگونيهاي تاريخ كامپيوتر را رقم زده است. فعالشدن انجمنها و اجتماعاتي بزرگ متشكل از هزاران برنامهنويس و متخصص در سراسر دنيا، روي آوردن شركتهاي معظم 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 در باب چگونگي ايجاد جامعهاي بازارگونه، شرايط را مطرح ميكرد:
? شمول عده زيادي از مردم
? اشكال زدايي همزمان
? طراحان سيستم بايد كاربران آن نيز باشند
? پاسخ سريع به نظرات كاربر و عرضه مستمر برطرفكننده اشكالات و بهبودها
? اجازه گسترش استانداردها، فراتر از كاربرد معمول
اما اين شباهتها در اين برداشتهاي اشتباه خلاصه نميشود. در حقيقت بايد گفت كه بحث و استدلالهاي مربوطبه تفسير آزادي حاميان مجوزهاي بنياد نرمافزار آزاد و طرفداران مجوزهاي BSD گونه، به حوزه سختافزار نيز قابل تعميم هستند و از اين حيث پيچيدگيهاي خاص اين موضوع به اين حوزه نيز سرايت كردهاست.
عليرغم اين موضوع جريان اصلي اين جنبش مسير خود را طي ميكند. در حقيقت گمان ميرود كه ايده سختافزار آزاد و مدل توسعه مشاركتي آن بتواند بسياري از مشكلات صنعت نيمههاديها را حل كند. بسياري از متخصصان مستقل و شركتها خواهند توانست در رفع اشكال، بهبود، ارتقا و البته تغيير طراحي سختافزار ايفاي نقش كنند.
در مدل بسته و رايج فعلي، يك طرح سختافزاري متعلق به شركت سازنده آن است و براي هيچ شخص يا شركت ديگري در خارج از آن مجموعه شناخته شده نخواهد بود. (البته بايد صنعت مهندسي معكوس را كه خود نمونه بارزي از اتلاف انرژي براي كشف چگونگي كاركرد يك قطعه در مدلهاي بسته اختصاصي است، از اين قضيه مستثني كنيم).
بنابراين بهبود يك طرح سختافزاري صرفاً توسط توليدكننده ميسر ميشود و تبع آن تمام هزينههاي تحقيق و توسعه براي بهبود و پيشرفت محصولات نيز برعهده آن توليدكننده خواهد بود.
اما بررسي دنياي نرمافزار نشان ميدهد كه نرمافزارهاي آزاد ميتوانند از طريق اشكالزدايي، اصلاحات و بهبودها و پيشرفتهاي به دست آمده توسط خيل عظيمي از مشاركتكنندگان پروژه، به روند توسعه يك پروژه نرمافزاري سرعت ببخشند. با اين اوصاف و با وجود تفاوتهاي ماهوي دو حوزه نرمافزار و سختافزار، ملزومات متفاوت اين دو حوزه هيچ دليل محكمي (حداقل تاكنون) براي اينكه نتوان از اين مدل توسعه در طراحي سختافزار استفاده كرد بهشمار نميآيد.
شايد در عمل و در مقايسه با توسعهدهندگان نرمافزار عده كمتري با دانش طراحي سختافزار آشنايي داشته باشند، اما اين امر به معناي غيرعملي بودن پيادهسازي اين مدل نخواهد بود. (البته هزينههاي موردنياز براي طراحي، آزمايش و توسعه سختافزار نيز ميتواند باعث كاهش مشاركتكنندگان در اين حوزه گردد كه اين موضوع نيازمند بحثي جداگانه است).
قطعات الكترونيكي به دلايل متعددي چون يكپارچه شدن ابزارها، به طور روزافزون پيچيدهتر ميشوند و رقابت ميان سازندگان هر روز افزايش مييابد. همين موضوع باعث شدهاست سازندگان سختافزار به گسترش داراييهاي فكري خود علاقمند شوند و به توسعه محصولات مبتني بر اين داراييها وابستگي بيشتري پيدا كنند. به اين ترتيب به نظر ميرسد كه فناوريهاي انقلابي همچون سيستم بر روي تراشه (system on chip يا اختصارا SOC) به واسطه عدم دسترسي بسياري از سازندگان به اين فناوريها، بهخاطر انحصاري بودن آنها، كاربردي محدود داشتهباشند.
به عنوان مثالي ديگر، مسئله مالكيت معنوي شركتها در مورد اينترفيسهاي بين تراشهاي و فقدان يك استاندارد جامع در اين حوزه باعث شدهاست شركتهاي نرمافزاري به صورت مستقل بر روي اين اينترفيسها فعاليت كنند. اين موضوع باعث بروز مشكلات ناسازگاري فراواني در ميان قطعات مختلف ميشود. در حال حاضر برخي از شركتها به تبادل داراييهاي فكري ميپردازند و حتي شركتها و موسسات تخصصي ويژهاي براي تسهيل اين مبادلات مشغول فعاليت هستند. اين حركتها به طور حتم ضروري، اما ناكافي هستند. به علاوه، كمك چنداني به گسترش اين فناوريها از منظري كه جنبش سختافزار آزاد به آن نيازمند است، نميكند.
بدون شك نگراني شركتهاي صاحب داراييهاي معنوي به كاهش سودآوري آنها به واسطه دسترسي شركتهاي ديگر به اين داراييها مربوط ميشود و به نظر ميرسد تبيين مدلهاي تجاري عملي در شيوه جديد توسعه ميتواند تا حدودي از اين نگرانيها بكاهد. در واقع جلوگيري از متعارف شدن فناوريها با استفاده از مالكيتهاي معنوي انحصاري، تنها راه حفظ سودآوري نيست. كاهش هزينهها و افزايش توليد به عنوان دو عامل مهم براي رونق بخشيدن به كسبوكار ، شيوهاي تثبيت شده است و طراحي و توسعه آزاد فناوريها به طور اشتراكي ميتوانند در تحقق دو عامل فوق نقش شاياني داشته باشند.
پس در وهله اول توسعه يك سيستم به اشتراكگذاري داراييهاي فكري نه تنها ميتواند انگيزه مشاركت سازندگان سختافزار به طراحي آزاد را تقويت كند، بلكه از تلاشهاي مضاعف شركتهاي فاقد حق استفاده از يك فناوري خاص براي اختراع دوباره چرخ جلوگيري ميكند و براي نوآوريهاي فني وضعيتي بهينه را فراهم خواهد كرد.
? مجوزها
پيادهسازي عملي سختافزار آزاد مستلزم يك سيستم مجوزدهي كارآمد است. در حقيقت مهمترين بخش رسيدن به يك مدل اجرايي قابل پذيرش از سوي شركتهاي سازنده ، ايجاد يك شيوه مجوزدهي جديد و متناسب با حوزه سختافزار است. يكي از ملزومات اصلي ايجاد اين شيوه، بررسي وضعيت فعلي طراحي و توليد سختافزار است.
امروزه روش طراحي نيمه هاديها به فرايند توسعه يك سيستم نرمافزاري مهم بيشباهت نيست. به منظور توسعه يك مدار مجتمع با كاربرد خاص يا ASIC ، ابتدا با توجه مجموعه مفصلي از مشخصات پيادهسازي (كه خود تابع كاركردهاي موردنياز تعيين شده توسط گروه بازاريابي است،) از يك زبان تشريح سختافزاري (HDL) نظير VHDLيا Verilog استفاده ميشود.
كدهاي منبع HDL پس از نوشته شدن و بررسي با نت ليستي (netlist) كه اتصالات گيتهاي منطقي را (كه بر روي سيليكون قرار خواهند گرفت) تشريح ميكند، تطبيق داده ميشود. هر گيت منطقي در نت ليست مستقيماً به تركيب خاصي از ترانزيستورها منتسب ميشود. نت ليست توسط ابزار ديگري كه موقعيت قرارگيري هر ترانزيستور و سيم بر روي تراشه را انتخاب ميكنند، مورد استفاده قرار ميگيرد. طراحي فيزيكي به دست آمده مستقيماً توسط ماسكهاي نوري كه در مرحله توليد از اين طراحي الگوبرداري ميكند مورد استفاده قرار ميگيرد. در بسياري از مراحل مذكور نرمافزارهاي ويژهاي كه براي انجام اين كارها طراحي شدهاند مورد استفاده قرار ميگيرند.
بنابراين ميتوان اينگونه پنداشت كه طراحي سختافزار آزاد يا منبع باز در ابتدا به حوزه نرمافزاري آن مربوط ميشود. از اين منظر و با چنين ديدگاهي برخي طراحي سختافزاري را باز يا آزاد مينامند كه كدهاي منبع زبان تشريح سختافزاري و نرمافزارهاي به كار رفته در طراحي آن با استفاده از يك مجوز نرمافزاري توزيع شده باشند. بنابراين اين مجوز اولاً بايد حق توزيع آزادانه كدهاي منبع آن را تضمين نمايد و ثانياً حق ايجاد فعاليتهاي اشتقاقي مبتني براين كدهاي منبع و توزيع مجدد آنها را نيز برمبناي يك مجوز مشابه تضمينكند. حتي مثلاً ميتوان با الهام از مجوز GPL بنياد نرمافزار آزاد، شرط اينكه فعاليتهاي اشتقاقي هم بايد با استفاده از <همان مجوز> اوليه توزيع شوند را نيز به عنوان يكي از شروط اضافه كرد.
ريچارد استالمن پايهگذار بنياد نرمافزار آزاد در سال 1999 ميلادي استفاده از مجوزهايي چون GPL را براي زبانهاي برنامهنويسي طراحي سختافزار به واسطه ماهيت نرمافزاري آنها كاملاً عملي ميدانست. با اين حال استفاده از چنين مجوزهايي فقط بخشي از ماجراي مجوزدهي سختافزاري را حل ميكنند و بحث اصلي پيرامون شيوه توسعه و به كارگيري گونه جديدي از مجوزها همچنان باقي ميماند.
ارسال مقاله توسط کاربر محترم سايت: sm1372