دالویک (نرم‌افزار)

از ویکی‌پدیا، دانشنامهٔ آزاد
پرش به: ناوبری، جستجو
دالویک
طراح(ها) دن بورنستین
سیستم‌عامل کرنل لینوکس
سکو آندروید
پروانه اجازه‌نامه آپاچی ۲
وب‌گاه http://code.google.com/p/dalvik/

دالویک پردازشگر ماشین مجازی است که در محصول معروف گوگل، سیستم‌عامل آندروید مورد استفاده قرار می‌گیرد. دالویک بخش داخلی آندروید است که به صورت معمول در دستگاه‌های همراه مانند تلفن همراه، رایانه‌های لوحی و نت بوک‌ها مورد استفاده قرار می‌گیرد. برنامه‌های آندروید به فرمت قابل اجرای (.dex) تبدیل می‌شود. این روش برای سیستم‌هایی مناسب است که از نظر فضای حافظه رم و سرعت پردازنده مرکزی دچار محدودست هستند.

دالویک، مانند باقی سامانه‌ی آندروید تا نگارش ۲.۳[۱] متن باز است. این برنامه توسط دان بورنستین نوشته‌شد، که به خاطر ماهیگری در روستایی در ایسلند به همین نام و به یاد این روستا که زمانی اعقابش در این روستا بودن؛ به نام دالویک نامگذاری نمود. [۲] [۳]

محتویات

معماری [ویرایش]

Architecture Diagram

برخلاف ماشن‌های مجازی جاوا، که ماشین‌های پشته‌ایی هستند، دالویک ماشینی مبتنی بر معماری رجیستری است. البته درباره‌ی برتری ماشین‌های مبتنی بر رجیستری نسبت به ماشنی پشته‌ایی مساله‌ای در حال بحث است.[۴] عموم ماشین‌های مجازی پشته‌ایی باید از دستورات برای بارگذاری داده‌های در پشته و اعمال تغییرات بر روی آن‌ها استفاده نماید. بنابراین نسبت به ماشین‌های مبتنی بر رجیستر به دستورات بیشتری برای کد سطح بالا نیاز دارد. ولی دستورات در ماشین رجیستری باید به صورت مبدا و مقصد باشد که منجر به بزرگ شدن دستورات خواهد شد. این تفاوت پایه‌ایی در ترجمه در زمان بسیار مهم‌است و تعیین کننده.

ابزاری که با نام dx، برای تبدیل بخشی از کد جاوا(نه تمام آن) که به صورت .class است به گونه‌ی dex. به کار می‌رود. چندین فایل کلاس می‌تواند به درون یک فایل dex. قرار گیرد. رشته‌هایی که چندین بار در کلاس‌های استفاده‌شدن‌اند تنها یکبار در dex. خروجی ظاهر می‌شود. بایت کد جاوا به شکلی از محموعه دستورات جایگزین که توسط ماشین مجازی دالویک قابل قبول است، تبدیل می‌شود. یک فایل غیر فشرده‌ی dex. معمولا چند درصد کوچکتر از فایل jar. معادل است. [۵]

کتابخانه [ویرایش]

دالویک نه کاملا منطبق با جی۲ام‌ایی است و نه منطبق بر جی۲اس‌ایی[۶][۷] برای مثال کلاس‌های جاواام‌ایی از قبیل ای‌دبیلوتی یا سوینگ مورد پشتیبانی قرار نمی‌گیرد در عوض از کلاس‌های کتابخانه‌ی مخصوص به خودش استفاده می‌نماید[۸] که مبتنی بر پیاده‌سازی آپاچی هارمونی از جاواست.

اجازه‌نامه و پتنت‌ها [ویرایش]

گوگل ادعا نمود که دالویک را طی قرآیند اتاق تمیز طراحی نموده‌است. این کار به جای انجام طراحی بر روی نسخه‌ی استاندارد جاوا انجام‌شد تا گرفتار مسائل حقوقی و مبتنی بر رعایت حق مولف نگردد[۹]. دالویک تحت اجازه‌نامه آپاچی ۲.۰ منتر شد.[۱۰]

اوراکل که بعد از خریداری شرکت سان میکروسیستمز مالک حقوق جاوا شده بود، در تاریخ ۲۱ مرداد ۱۳۹۰، از گوگل به خاطر عدم رعایت حق مولف و عدم رعایت استفاده‌ی درست از پتنت‌های جاوا، از این شرکت شکایت نمود.[۱۱][۱۲][۱۳].

پیوند [ویرایش]

منابع [ویرایش]

  1. «آندروید گوگل ۳.۰ «بستنی عسلی»: متن باز، دیگر نه!». [زی‌دی‌نت]]، ۴ فروردین ۱۳۹۰. بازبینی‌شده در ۶ شهریور ۱۳۹۰. 
  2. Journal entry اشاره به مبدا نام
  3. "Error: no |title= specified when using {{Cite web}}". 
  4. ام. آنتون ارتل، یان‌هی شی، دیوید گرگ، اندرو بیتی. «نمایش قدرت ماشین مجازی: پشته‌ایی در مقابل رجیستری». ۲۰ مرداد ۱۳۸۸. بازبینی‌شده در ۶ شهریور ۱۳۹۰. 
  5. دن بورنستین. «تشریح ساختار درونی ماشین مجازی دالویک». گوگل، ۸ مرداد ۱۳۸۷. بازبینی‌شده در ۶ شهریور ۱۳۹۰. 
  6. «کیت توسعه‌ی نرم‌افزاری اندروید، متعلق به گوگل، به نفع جاوا، جاوا ام‌ایی را به سمت آپاچی هارمونی دور زد.». infoq.com. بازبینی‌شده در ۶ شهریور ۱۳۹۰. 
  7. «جایگزینی برای پوینت ۲ بعدی». آموزش دروید، ۲۳ بهمن ۱۳۸۸. بازبینی‌شده در ۶ شهریور ۱۳۹۰. 
  8. «نمایه‌ی بسته». Open Handset Alliance. بازبینی‌شده در ۶ شهریور ۱۳۹۰. 
  9. استفانو مازوچی. «دالویک: چگونه گوگل محدودیت‌های موجود بر جاوای‌ام‌ایِ اعمال شده از سوی سان را دور زد.». ۲۱ آبان ۱۳۸۶. بازبینی‌شده در ۶ شهریور ۱۳۹۰. 
  10. Nothing to see here - only dreams of electric sheep
  11. «اوراکل، گوگل را به خاطر استفاده از جاوا در اندروید، تحت پیگرد قرار داد.». digitaltrends.com، ۲۲ مرداد ۱۳۸۹. بازبینی‌شده در ۶ شهریور ۱۳۹۰. 
  12. جیمی نیکولای. «اوراکل گوگل را به خاطر جاوای موجود در آندروید مورد پیگرد قانونی قرار داد.». ۲۱ مرداد ۱۳۸۹. بازبینی‌شده در ۶ شهریور ۱۳۹۰. 
  13. مارک هچمن. «اوراکل از گوگل به خاطر استفاده‌ی اندروید از جاوا شکایت کرد». زیف دیویس، ۲۱ مرداد ۱۳۸۹.