PDA

View Full Version : مقاله : سیستم عامل Symbian



Developer Programmer
چهارشنبه 02 دی 1383, 09:43 صبح
سیستم عامل Symbian
مقدمه:
در ابتدا تلفن های همراه دارای ساختار پیچیده ای نبودند . سخت افزار محدود نیاز به نرم افزارهای پیچیده نداشت ، تا اینکه شرکتهای تلفن همراه نسل های دوم و سوم گوشی های خود را عرضه کردند . این گوشی ها دارای امکانات سخت افزاری بیشتری بودند و تقریبا به صورت یک کامپیوتر کوچک طراحی شدند . در این زمان بود که این شرکتها به اهمیت نرم افزار در این گوشی های پی برده و رقابت نرم افزاری در کنار رقابت سخت افزاری شروع شد . مایکروسافت یکی از شرکتهایی بود که قبلا روی سیستم عامل کامپیوتر های جیبی خود کار کرده بود و Windows CE را به همین منظور طراحی کرده بود . این ویندوز قابلیت این را داشت که روی موبایل ها نیز نصب شود . بعد از رسمیت یافتن موبایل های نسل جدید شرکت های مطرح در این صنعت که به مشکلات بی شمار Windows CE پی برده بودند و نمی خواستند نرم افزار این صنعت را در انحصار یک شرکت نگه دارند با همکاری هم سیستم عامل جدیدی برای موبایل ها به وجودد آوردند که Symbian نام گرفت . البته رقبای دیگری نیز مثل سیستم عامل Linux در این صنعت وجود دارند که فعلا به صورت عمده استفاده نشده اند . در اصطلاح به موبایل هایی که از این سیستم عامل استفاده می کنند Smart Phone گفته می شود .

پیدایش و حیات Symbian :

شرکت نرم افزاری Symbian برای اولین بار در ماه ژوئن سال 1998 به صورت کاملا مخفی و خصوصی برای کار بر روی سیستم عاملی برای کار روی موبایل ها تاسیس شد . مقر اصلی این شرکت در انگلیس تاسیس شد اما هم اکنون دارای حدود 750 کارمند در کشورهای انگلیس ، ژاپن ، سوئد و آمریکاست که درکار تحقیق و برنامه نویسی برای گسترش سیستم عامل و نرم افزارهای آن هستند . تا اواخر سال 2003 هیجده موبایل از پنج شرکت معروف سونی ، نوکیا ، فوجیتسو ، موتورولا و زیمنس با این سیستم عامل عرضه شد و علی رغم قیمت بالا مورد استقبال قرار گرفت و حدود 26 موبایل هم در برنامه این شرکتها و چند شرکت دیگر با این سیستم عامل در برنامه ساخت قرار گرفت . هم اینک نیز 48 مورد از این موبایل ها به بازار عرضه شده و یا به زودی عرضه خواهد شد . آمار فروش موبایل های Symbian تا پایان سال 2003 به 6.7 میلیون موبایل رسید و در سال 2004 نیز با رشد بی سابقه فروش مواجه شد به طوری که طبق آمار شرکت در سال 2004 فروش این نوع موبایل ها رشد 201 درصدی داشته است . به علت فروش بالای موبایل های Symbian هر روزه بر تعداد برنامه نویسان آن افزوده شده و نرم افزارهای فوق العاده ای برای این سیستم عامل طراحی می شود . تا اواخر تابستان سال 2004 تعداد این برنامه ها 3254 مورد گردیده است .

شرکت های به وجود آورنده :

14 شرکت اصلی و چند شرکت فرعی از به وجود آوردندگان این محصول بودند ، بعضی از این شرکتها در زمینه نرم افزار و بعضی از آنها در زمینه سخت افزار به رشد این سیستم عامل و موبایل های آن کمک کرده اند . از اصلی ترین شرکتها می توان به Nokia ، Sony-Eriksson ، LG ، Samsung ، Motorola ، Arima ، BenQ ، Fujitsu ، Lenovo ، Sanyo ، Sendo ، Mitsubishi Electronics و Siemens اشاره کرد .

تکنولوژی Symbian :
Symbian شبیه دیگر سیستم عامل های مدرن و امروزی که برای PC ها وجود دارند ، به وجود آمده است . بنابراین دارای امکانات خوبی مثل Multitasking ، MultiThreading و همچنین مدیریت حافظه می باشد . در طراحی اولیه مبنای کار را بر روی این موضوع بنا نهاده اند که این سیستم عامل می بایست روی امکانات سخت افزاری بسیار کم ( مثل 4 مگابایت رم ) کارایی فوق العاده ای داشته باشد . به همین دلیل این سیستم عامل می تواند روی موبایل های امروزی فوق العاده سریع کار کرده و حداقل مشکل را داشته باشد . مبنای کار این سیستم عامل بر اساس event ها بنا نهاده شده است ( شبیه دیگر سیستم عامل های امروزی مثل ویندوز ) و سی پی یو طوری مورد استفاده قرار می گیرد که کمترین میزان بار روی موبایل قرار گیرد . هم اکنون با اینکه نسخه هشتم Symbian عرضه شده است اما نسخه 7 این سیستم عامل روی موبایل ها قرار می گیرد و تا به حال نسخه های مختلفی از آن بدون اینکه به صورت کامل استفاده شوند به فراموشی سپرده شده اند . جالبترین مورد برای این سیستم عامل به وجود آمدن اولین کرم و ویروس موبایل روی این سیستم عامل در سال 2004 بود . این کرم که Cabir نام دارد می تواند با استفاده از تکنولوژی Bluetooth خود را به موبایل های دیگر منتقل کند .

زبانهای برنامه نویسی برای Symbian :

بدون شک زبان اصلی برنامه نویسی برای Symbian زبان C++ است اما زبانهای مختلفی برای برنامه نویسی در این سیستم عامل به وجود آمده اند . از جمله مهمترین زبانها می توان به OPL ، Python ، Visual Basic ، Perl و Personal Java اشاره کرد . هر یک از این زبانها می توانند امکانات کامل برنامه نویسی در Symbian را فراهم نمایند . رشد زبانهای برنامه نویسی در این سیستم عامل بسیار سریع می باشد . به طوریکه نصف این زبانها همین امسال وارد این سیستم عامل شده اند و بدون شک این رشد با ورود زبانهای دیگر ادامه خواهد یافت . ابزارهای برنامه نویسی مختلفی از جمله ادیتورهای متنوع نیز برای کار با این زبانها به همراه شبیه سازهای موبایل ( برای تست برنامه روی PC قبل از نصب آن روی موبایل ) به بازار عرضه شده است .

رابط های کاربری :

هم اکنون دو رابط اصلی کاربری برای Symbian به وجود آمده است . اولین رابط که بیشترین استفاده را در موبایل ها دارد توسط نوکیا نوشته شده است . این رابط دارای نسخه های مختلفی است اما Series 60 نسخه اصلی این رابط است که بسیار مورد استقبال قرار گرفته است . رابط کاربری دوم با نام UIQ به وجود آمده است که دارای امکانات بسیار خوبی است و رفته رفته در حال باز کردن جای خود در بین شرکت های تولید کننده موبایل است . هر دوی این رابط ها به صورت کاملا گرافیکی و شبیه به هم طراحی شده اند و کار با آنها بسیار راحت است .

بازی بر روی Symbian :

خوشبختانه سیستم عامل Symbian یکی از غنی ترین سیستم عامل ها برای بازی کردن است . به خصوص بعد از تولید N-gage اولین کنسول بازی موبایلی توسط نوکیا که بر اساس Symbian و رابط کاربری Series60 به وجود آمد ، سیل بازیهای مختلف و حرفه ای به سوی این موبایل و در کنار آن این سیستم عامل سرازیر شد . حتی شرکت های مطرح بازی سازی هم اکنون به صورت حرفه ای روی این سیتم عامل و موبایل های دارای این سیستم عامل سرمایه گذاری می کنند .

کتاب:
کتاب Professional Symbian Programming(ISBN:1-861003-03-x) کتابی است مفید برای آنهایی که میخواهند با ساختار برنامه نویسی برای موبایل آشنا شوند

Kernel و User Library :
Symbian به صورت 32 بیتی طراحی شده است. با طراحی کاملا شی گراء و Multitasking
هسته symbian به حالت مصون (Privileged) اجرا میشود و به تمام فضای حافظه دسترسی کامل دارد
در این سیستم عامل :
- هر فرایند (Unit Of Protection) فضای آدرس مجازی(Virtual Address) خود را دارد
- واحد حافظه اصلی (Main Memory Unit)مسئول ترجمه آدرسهای مجازی است
- هر Thread واحد اجرایی(Unit Of Execution) است
- هر فرایند از یک یا چند Thread تشکیل شده

کتابخانه EUser فراهم کننده مجموعه ای بزرگ از سرویسها در مد کاربری (User Mode)است.
از عمومی ترین سرویسهای استفاده شده می توان به موارد زیر اشاره کرد
- Execution handling
- Descriptors
- Memory Management
- Client/Server framework
- Multitasking

فایلها و دایرکتوریها:
در قطعات مبتنی بر سیستم عامل Symbian ، فایلها و برنامه ها در RAM یا ROM ذخیره میشوند
معمولا درایو Z مربوط به ROM و درایو C مربوط به بخشی از حافظه RAM میباشد

Exe : برنامه ای که تنها با یک main entry point E32Main() آغاز میشود.اگر EXE واسط کاربری دارد فقط محدود به پنچره کنسول میشود. زمانیکه EXE اجرا میشود سیستم عامل ، فرآیند جدیدی میسازد و انرا به چند Thread میشکند

DLL: کتابخانه ای از کد برنامه با چندین entry point می باشد که توسط برنامه ها به حافظه بار میشود
دو نوع DLL موجود است :

- Static Interface و Polymorphic Interface

Application:
فایلهای با پسوند app برنامه هایی هستند با واسط کاربری که ازِDLL Polymorphic Interface استفاده میکنند. شامل منو و دایالوگها با قابلیت چند زبانه گی
هر Application فرآیند خاص خود را دارد و از آدرس مجازی خاص خود استفاده میکند. ضمنا می تواند Information File با پسوند aif را تولید کند که شامل icon است.
نمونه ای از Application ها تقویم و دفترچه تلفن است

SIS:
فایلی فشرده شده به مانند ZIP که با نرم افزارهای خاص خود از حالت فشرده شده خارج میشود

zehs_sha
چهارشنبه 02 دی 1383, 11:04 صبح
:تشویق: :flower: خیلی ممنون از مقاله خوب شما :موفق:

Moharram
چهارشنبه 02 دی 1383, 14:15 عصر
:thnx: لطفا منبع مقاله رو هم ذکر کنید . با تشکر

Developer Programmer
چهارشنبه 02 دی 1383, 21:47 عصر
لطفا منبع مقاله رو هم ذکر کنید
ببخشید که فراموش کردم


www.Symbian.com
http://www.forum.nokia.com
http://aboutsymbian.com

vcldeveloper
پنج شنبه 03 دی 1383, 02:13 صبح
مرسی از زحمتی که کشیدید. بسیار جالب بود :flower:

MM_Mofidi
پنج شنبه 03 دی 1383, 10:39 صبح
ممنون جالب بود.

vDelphi
پنج شنبه 03 دی 1383, 17:16 عصر
خیلی خوب بود :thnx:

sh
پنج شنبه 03 دی 1383, 19:57 عصر
زبان برنامه نویسی آن را از کجا میشه تهیه کرد آیا مجانیه ؟ کمی راجب برنامه نویسی آن هم توضیح بدین

آیا زبان فارسی رو ساپورت میکنه

Developer Programmer
جمعه 04 دی 1383, 09:51 صبح
زبان برنامه نویسی آن را از کجا میشه تهیه کرد آیا مجانیه ؟ کمی راجب برنامه
نویسی آن هم توضیح بدین
دوست عزیزم برای برنامه نویسی موبایل در سیستم عامل symbian چندین platform وجود دارد :kaf: مثل UIQ,Series60, 80,90 هر کدام از این پلتفرم ها SDK های خاص خود را بسته به زبان برنامه نویسی دارند
می توانید از سایت www.symbian.com تمامی API ها و SDK ها رو دانلود کنید ولی حجم یکی از SDK ها 90 مگابایت بود که تنها امید من مدیریت محترم سایت برنامه نویس است :mrgreen:
وقتی مثلا SDK زبان VC6 رو نصب کردید گزینه جدیدی به VC6 اضافه میکنه که براحتی میتونید با NewApplication وارد محیط برنامه نویسی بشین!
تا یادم نرفته بگم که دات نت رو هم ساپورت میکنه
عزیزان شیفته بورلند هم میتونن نسخه خاص اون رو دانلود کنن ... چون اونطور که من فهمیدم Borland هم قاطی سیستم عامل موبایل شده ولی زبان دلفی نیست! :sorry:

arshia_
جمعه 04 دی 1383, 11:05 صبح
ممنون....
ای مقاله ها خیلی به ما کمک می کنه...چون برنامه نویسی های سطح پایین رو برای ما نمایان می سازه...برنامه هایی که باید خیلی در نوشت آنها مهارت بخرج داد.....

sh
جمعه 04 دی 1383, 13:00 عصر
یعنی با VB.NET هم میشه ؟

vadood
سه شنبه 08 دی 1383, 16:42 عصر
یونیکد چی؟ شرط می بندم یونیکد پشتیبانی نمی کنه

Developer Programmer
سه شنبه 08 دی 1383, 16:46 عصر
یعنی با VB.NET هم میشه
بله عزیزم میشه کافیه SDK کاش رو یکی بسازه و شما دنلود کرده و نصب کنید

یونیکد چی؟ شرط می بندم یونیکد پشتیبانی نمی کنه
والله اطلاع چندانی ندارم :wink:

Inprise
چهارشنبه 09 دی 1383, 02:47 صبح
شرط می بندم یونیکد پشتیبانی نمی کنه

EPOC یا همان پلت فرم توسعه های نرم افزاری Symbian از یونیکد حمایت میکنه . از دات نت و جاوا نیز هم . نکته اینجاست که توسعه Symbian دیگه تو دستور کار بزرگان موبایل از جمله نوکیا و موتورولا نیست . نوکیا بطور قطعی به لینوکس مهاجرت کرده و موتورولا و اریکسون حرکت به سمت لینوکس موبایل رو بصورت جدی پیگیری میکنند . این روزها تو بازار توسعهء موبایل ، کسی از چیزی غیر از لینوکس حرف نمیزنه . آخرین نسخهء موبایل ِ QT بطور کامل از عربی/فارسی یونیکد حمایت میکنه .

مهندس
چهارشنبه 09 دی 1383, 04:31 صبح
سلام

دوستان مثلا الان برای گوشی نوکیا 6600 یه برنامه سیمباین طراحی شده که
نوشته های منوها رو فارسی میکنه ... نحوه این کار چطوری یه ؟ :گیج:

rmm
چهارشنبه 16 دی 1383, 13:40 عصر
با سلام به دوستان عزیز

من هم تازه شروع به کار در برنامه نویسی سمبیان کرده ام. اطلاعات مختصری هم دارم. برنامه هایی که می توان با آن سیمبیان را نوشت و از SDK نوکیا سری 60 استفاده کرد عبارتند از :
1- Visual C++ 6
2- java
3- C++ BuilderX مال شرکت بورلند

باتشکر

MM_Mofidi
چهارشنبه 16 دی 1383, 17:07 عصر
یک سری به Cross fire 55 بزنید اون یک سری امکانات میده که با vs 6 و vs.net میتونید برنامه برای symbian بنویسید.

rmm
شنبه 19 دی 1383, 11:20 صبح
سلام بر همه

برای اطلاع از نحوه بارگذاری SDK و تنظیم برنامه ها می توانید به آدرس زیر مراجعه کنید:

http://www.mashaghel.com/symbian/

با تشکر

Developer Programmer
شنبه 19 دی 1383, 22:18 عصر
این روزها تو بازار توسعهء موبایل ، کسی از چیزی غیر از لینوکس حرف نمیزنه
اینپرایز جون هر چی میگردم مطلبی که این حرفتون رو تصدیق کنه پیدا نمی کنم

Developer Programmer
پنج شنبه 26 آبان 1384, 10:21 صبح
با عرض پوزش از دوستان گرامی، به دلیل خاک خوردگی فراوان تاپیک، بالا می کشم تا کمی گرد گیری شود و دوستان جدید الورود آشناتر شوند! (با پوزش مجدد)

FATEME.G
یک شنبه 21 اردیبهشت 1393, 22:53 عصر
سلام میشه نام و نام خانوادگیتون رو برای معرفی بگین آخه من برای مقالم باید نام نویسنده حتما باشه