آخرین اخبار
facebook Telegram RSS ارسال به دوستان نسخه چاپی
کد خبر : 265178
تاریخ انتشار : 24 دی 1398 11:57
تعداد بازدید : 17

روزهای پایانی قانون مور و نیاز به رویکردهای تازه در برنامه نویسی

گوردون مور، هم بنیان گذار اینتل، در سال 1965 کشفی کرد که به قانون مور معروف شد. او دریافت که تعداد ترانزیستورهایی که می توان در یک تراشه سیلیکونی با مساحت ثابت جا داد، هر دو سال تقریبا دو برابر می شود. از آنجا که تعداد ترانزیستورها رابطه مستقیم با قدرت پردازش دارد، این بدان معناست که قدرت پردازش تراشه ها نیز هر دو سال دو برابر خواهد شد.
undefined

جان ناتون
 (John Naughton)
قانون مور در طول سال ها برای صنعت کامپیوتر، همان نقشی را داشت که قوانین نیوتون برای مهندسان مکانیک؛ با این تفاوت که قانون مور حاصل برآوردی تجربی بود که در یک دوره خاص زمانی از تاریخ به دست آمد و ما رفته رفته به مرزهای کاربرد این قانون نزدیک شده ایم.
خود مور در سال 2010 پیش بینی کرد که قوانین فیزیک می تواند این رشد نمایی را با محدودیت مواجه کند. وی گفت: ترانزیستورها از نظر ابعاد دارند به اندازه یک اتم نزدیک می شوند. این اندازه یک محدودیت اساسی است. اما تا پیش از رسیدن به این محدودیت، 10 تا 20 سال دیگر زمان مانده است.
اکنون به سال 2020 رسیده ایم و این اعتقاد که ما همیشه سخت افزارهای رایانشی قدرتمند متناسب با نیازهای رو به گسترش خود خواهیم داشت، در حال رنگ باختن است. البته این وضعیت، چند دهه است که برای متخصصان صنعت رایانش قابل پیش بینی بوده و تحقیقات بسیاری برای یافتن راه های تازه افزایش قدرت پردازشی ماشین ها در جریان بوده است؛ معماری چند هسته ای نیز که در آن  یک CPU دارای دو یا چند واحد پردازش مجزا با نام هسته است، با هدف به تعویق انداختن روزی طراحی شد که تراشه های سیلیکونی بالاخره به پایان راه برسند. برای  مثال کامپیوتر مک پرو جدید اپل دارای پردازشگر اینتل زئون 28 هسته ای است. از سوی دیگر، تحقیقات جدی در زمینه رایانش کوانتومی نیز درجریان است که می تواند به یک پیشرفت چشمگیر در توان پردازشی منجر شود.
اما توان سخت افزاری، تنها عامل مهم در رایانش نیست و در این زمینه نرم افزارها هم نقش مهمی بازی می کنند. این در حالی است که قانون مور در طول زمان به نوعی موجب تنبل تر شدن برنامه نویسان شده است.
واقعیت این است که برنامه نویسی، فعالیتی هنرمندانه و ظریف است که برخی افراد در این زمینه، تواناتر از دیگران هستند و می توانند کدهای بهتر و از آن مهم تر، کم حجم (لاغر) بنویسند که سریع تر هم اجرا شود.
در سال هایی که سخت افزارها چندان پیشرفته و پیچیده نبودند، این هنرمندی واقعا اهمیت داشت. وقتی بیل گیتس پسربچه ای بیش نبود، برای کامپیوتر TRS-80 یک مفسر بیسیک نوشت و از آنجا که این میکروکامپیوتر حافظه بسیار کم حجمی داشت، گیتس مجبور بود این مفسر را در حجم 16 کیلوبایت بنویسد. او این مفسر را به زبان اسمبلی نوشت تا کارایی آن را افزایش دهد و در عین حال فضای کمی هم اشغال کند. گفته می شود که تا سال ها بعد، بیل گیتس کل این برنامه را خط به خط از بر بود.
هزاران داستان مانند این از روزهای اولیه رایانش می توان مثال زد. اما به لطف قانون مور، نیاز به نوشتن برنامه های کم حجم به تدریج از بین رفت و اولویت ها تغییر کرد. برنامه نویسی که روزی مانند صنایع دستی، به استادکارهای خلاق و زبردست وابسته بود، رفته رفته در قالب مهندسی نرم افزار، صنعتی شد. ساخت اکوسیستم های نرم افزاری گسترده، مانند سیستم عامل ها و اپلیکیشن های تجاری به تیم های بزرگی از توسعه دهندگان نیاز داشت. سپس فرایندهای بوروکراتیک به ماجرا وارد شد و به این ترتیب مدیرپروژه ها و مدیران اجرایی پا به میدان گذاشتند. پروژه های بزرگ نرم افزاری به چیزی تبدیل شدند که در کتاب پرفروش فرد بروکس از آن با نام «راهپیمایی مرگ» نام برده شده است. در این فرایند، نرم افزار تبدیل به چیزی متورم و پر حجم و اغلب ناکارآ تبدیل شد. کتاب بروکس با نام «نفر-ماه اسطوره ای» در سال 1975 منتشر شد و پس از آن مرتب تجدید چاپ شده است، زیرا هنوز هم مرجعیت دارد.
اما از آنجا که سخت افزار همیشه قدرت پردازشی زیادی ارایه می کرد که موجب پنهان ماندن نقاط ضعف نرم افزارهای متورم می شد، این مساله چندان اهمیتی نداشت. اما برنامه نویسان با وجدان همواره از این وضعیت ناراضی و ناراحت بوده اند. یکی از این برنامه نویسان روزی نوشت: تنها نتیجه سخت افزارهای قدرتمند این بوده که برنامه نویسان، روز به روز نرم افزارهای چاق تری روی آن سوار کرده اند. آنها تنبل تر شده اند، زیرا سخت افزارهای آنقدر سریع اند که دیگر لازم نیست برنامه نویسان برای یادگیری الگوریتم ها یا برای بهینه سازی کدهای شان تلاش کنند. این مسخره است.
ناتان میرولد (Nathan Myhrvold) که روزی مدیر ارشد فناوری بیل گیتس بود، در سال 1997 در یک سخنرانی، چهار قانون نرم افزار را به این شرح ارایه کرد: 1- نرم افزار مانند گاز است و برای پر کردن ظرف خود گسترش می یابد. 2- نرم افزار تا جایی که با قانون مور محدود شود، بزرگ می شود. 3- رشد نرم افزار موجب تحقق قانون مور می شود؛ مردم سخت افزار جدید می خرند چون برای اجرای نرم افزارها به آن نیاز دارند. و در نهایت 4- تنها مرز نرم افزار فقط جاه طلبی و انتظارات بشر است.
حالا که قانون مور به پایان دوره فرمانروایی اش نزدیک می شود، بر اساس قوانین میرولد ما فقط دو گزینه داریم. یا جاه طلبی مان را کنترل کنیم یا به روزهای برنامه نویسی کم حجم و کارآتر بازگردیم. به بیان دیگر، باید بازگشت به آینده بکنیم.
 منبع: گاردین


نظر شما



نمایش غیر عمومی
تصویر امنیتی :