نامنویسی انجمن درست شده و اکنون دوباره کار میکند! 🥳 کاربرانی که پیشتر نامنویسی کرده بودند نیز دسترسی‌اشان باز شده است 🌺

رتبه موضوع:
  • 1 رای - 5 میانگین
  • 1
  • 2
  • 3
  • 4
  • 5

سیستم عامل موبایل؟
#4

بهمنیار نوشته: خوب پس هنوز در موبایل نسل جدید هم سیستم عامل وابسته به پلات فرم نوشته می شود خوب آیا این مشکل سخت افزار است یا نرم افزار ؟ یعنی کسی پیدا نشده که برای موبایل سیستم عاملی بدون وابستگی به پلات فرم بنویسد یا این که اصلا نمی شود این کار را انجام داد؟

دشواری اصلی در بهینه‌سازی سیستم است. بکارگیری نابه‌جا از منابع سیستم می‌تواند در نرخ مصرف باتری دگرگونی بسیار زیادی بکند.



بهمنیار نوشته: گمان کنم این دعوا میان اپل و پی سی بود یک زمانی . ولی بعد دیگر نمی دانم سخت افزار پیشرفت کرد که مثل لینوکس را می شود روی هر دو سیستم پیاده کرد یا این که سخت افزاری ها یعنی اپل و آی بی ام و. . . کوتاه آمدند. یا یکی پیدا شد که سیست عاملی نوشت تا روی هر دو کار کند ؟ 39

نوشتن نرم‌افزار برای هر سیستم کنشگری (OS) نیازمند پیروی از یک دستورکاری آرشیتکتی CPU ویژه به خود است. CPUهای ساخت AMD و Intel
و دیگر شرکت‌های گمنام امروزین، از دو ساختار مهادین سود می‌برند که x86 و x64 هستند: http://en.wikipedia.org/wiki/Instruction...chitecture

کُد ریشه (source code) سیستم کنشگر سپس بکمک یک Compiler (هَمگردان) روی یکی از این آرشیتکت‌ها همگردانی می‌شود، برای نمونه کُد C زیر:
کد:
#include <stdio.h>

int main(void) {
    printf("Hello, world!\n");
    return 0;
}

روی آرشیتکت x86 به کُد زیر همگردانی می‌شود:
کد:
.text
LC0:
        .ascii "Hello, world!\12\0"
.globl _main
_main:
        pushl   %ebp
        movl    %esp, %ebp
        subl    $8, %esp
        andl    $-16, %esp
        movl    $0, %eax
        movl    %eax, -4(%ebp)
        movl    -4(%ebp), %eax
        call    __alloca
        call    ___main
        movl    $LC0, (%esp)
        call    _printf
        movl    $0, %eax
        leave
        ret
در اینجا دستورهای:
  • pushl
  • call
  • movl
  • ...

همگی بخشی از دستورهای زیرگردآیه از x86 instructions set هستند که برای یک CPU X86 فهمیدنی و انجام پذیر خواهند بود.

برونرفت برنامه چیزی بیشتر از نوشتن Hello World روی مونیتور البته نیست! 4


[*] http://en.wikibooks.org/wiki/X86_Assembl...ne-by-line



در نهایت، امروز همه سیستم‌های کنشگر مهادین روی یکی از این دو آرشیتکت همگردانی می‌شوند که شامل حال همه نگارش‌های *nix و windows می‌باشد.
Apple اما از آنجاییکه سخت‌افزار خود را دارد، با داشتن آرشیتکت CPU ویژه به خود نیز، نرم‌افزارهایش را وابسته به اجرا روی سخت‌افزارهای ساخت خود می‌کند.

از Mac OS X Snow Leopard (v10.6) به بالا البته، Apple هم برای سیستم‌کنشگر Mac روی به X86-64 آورده است،
ولی سیستم کنشگر iOS برای نمونه، همچنان روی آرشیتک ویژه apple کار می‌کند.

.Unexpected places give you unexpected returns
پاسخ


پیام‌های این موضوع
سیستم عامل موبایل؟ - توسط بهمنیار - 09-18-2011, 06:21 AM
سیستم عامل موبایل؟ - توسط sonixax - 09-18-2011, 07:00 PM
سیستم عامل موبایل؟ - توسط بهمنیار - 09-19-2011, 04:52 AM
سیستم عامل موبایل؟ - توسط Mehrbod - 09-19-2011, 10:47 AM
سیستم عامل موبایل؟ - توسط sonixax - 09-22-2011, 12:55 PM

موضوعات مشابه ...
موضوع / نویسنده پاسخ بازدید آخرین ارسال

پرش به انجمن:


کاربران در حال بازدید این موضوع: 2 مهمان