انجمنهای فارسی اوبونتو
کمک و پشتیبانی => انجمن عمومی => نویسنده: سودو. در 10 شهریور 1401، 11:39 قظ
-
اقا من خودم یه حدس هایی زدم ، مثلا هم تو گنو و هم اندروید ، فایل هایی که با نقطه شروع شن مخفی ان ! یعنی به لینوکس مربوطه ؟ یا فایل سیستم و چارچوب درختی ای که برای پوشه های زیر ریشه هست !
دیگه چیا به کرنل مرتبطه ؟
-
پوشه های bin/ و sys/ و dev/ و usr/ و... در گنو و اندروید هم مشترک هستند، اینم به کرنل مربوطه؟
-
ربطی ندارن فقط استاندارده
-
کرنل یه برنامه است برای مدیریت منابع سیستم و خب این کارها رو می کنه:
- جواب دادن به درخواست های سیستمی
- در دسترس قرار دادن سخت افزارها، حافظه و سی پی یو
- برقراری ارتباط بین پروسس ها (IPC) و امکان ایجاد هماهنگی بین اونها
-
میدونم ، فقط میخواستم بفهمم اگه دو تا سیستم عامل از کرنلی مشابهی ( در اینجا لینوکس ) استفاده کنن چه نکات مشابهی هم خواهند داشت !
-
هیچ چیزی.
-
اقا من خودم یه حدس هایی زدم ، مثلا هم تو گنو و هم اندروید ، فایل هایی که با نقطه شروع شن مخفی ان ! یعنی به لینوکس مربوطه ؟ یا فایل سیستم و چارچوب درختی ای که برای پوشه های زیر ریشه هست !
دیگه چیا به کرنل مرتبطه ؟
این خیلی به سیستمعامل و ساختارش برمیگرده. به طور کلی، چیزی که باعث میشه نرمافزار و سختافزار بتونن با هم صحبت کنن، کرنله. اگر دوست داری بدونی کرنل کجاست؟ فایل ساختهشده دودوییش در پوشه
/boot
قرار داده شده. اگر دوست داری سورسش رو ببینی هم kernel.org.
میدونم ، فقط میخواستم بفهمم اگه دو تا سیستم عامل از کرنلی مشابهی ( در اینجا لینوکس ) استفاده کنن چه نکات مشابهی هم خواهند داشت !
دانیال اشاره کرد «هیچ چیزی». فقط احتمال اجرای برنامهای که با userland گنو و هسته لینوکس ساخته شده روی اون یکی ممکنه بره بالاتر (اونم انقدرا ساده نیست).
-
اقا من خودم یه حدس هایی زدم ، مثلا هم تو گنو و هم اندروید ، فایل هایی که با نقطه شروع شن مخفی ان ! یعنی به لینوکس مربوطه ؟ یا فایل سیستم و چارچوب درختی ای که برای پوشه های زیر ریشه هست !
دیگه چیا به کرنل مرتبطه ؟
این خیلی به سیستمعامل و ساختارش برمیگرده. به طور کلی، چیزی که باعث میشه نرمافزار و سختافزار بتونن با هم صحبت کنن، کرنله. اگر دوست داری بدونی کرنل کجاست؟ فایل ساختهشده دودوییش در پوشه
/boot
دیگه اینقدرام نوب نیستم ! در حد الپیک یک و مقالات اینترنتی و تجربیات خودم اطلاعات دارم در مورد این سیستم عامل !
ولی ممنون !
-
هیچ چیزی.
خب سیستمعامل های اندروید و گنو/لینوکس رو در نظر بگیریم. نکات مشابهشون اینا هستن:
- ساختار فایلسیستم و دایرکتوریها تا حد زیادی مشابه هستن
- یک executable اندرویدی ممکنه بتونه برای لینوکس کامپایل بشه و برعکس
- اگر روی سیستمی گنو+لینوکس میتونه بالا بیاد احتمال زیاد بشه روش اندروید هم بالا اورد
ولی خب دستگاههای اندرویدی و گنو/لینوکس از دقیقا یک کرنل واحد استفاده نمیکنن. لینوکس اندروید kernel-msm هست درحالی که لینوکسی که ما روی دسکتاپ داریم فکر کنم mainline باشه.
-
- ساختار فایلسیستم و دایرکتوریها تا حد زیادی مشابه هستن
اون مربوط به https://en.m.wikipedia.org/wiki/Filesystem_Hierarchy_Standard میشه
[quote author=farooqkz link=topic=155598.msg1224305#msg1224305 date=1662578879
- یک executable اندرویدی ممکنه بتونه برای لینوکس کامپایل بشه و برعکس
[/quote]
البته executable که کامپایل نمیشه! کد کامپایل میشه که میتونه برای ویندوز هم کامپایل بشه در اغلب موارد.
[quote author=farooqkz link=topic=155598.msg1224305#msg1224305 date=1662578879
- اگر روی سیستمی گنو+لینوکس میتونه بالا بیاد احتمال زیاد بشه روش اندروید هم بالا اورد
[/quote]
باز هم نه. مثلاً برای رزبری پای ۴ هنوز اندروید پایداری وجود نداره.
[quote author=farooqkz link=topic=155598.msg1224305#msg1224305 date=1662578879
ولی خب دستگاههای اندرویدی و گنو/لینوکس از دقیقا یک کرنل واحد استفاده نمیکنن. لینوکس اندروید kernel-msm هست درحالی که لینوکسی که ما روی دسکتاپ داریم فکر کنم mainline باشه.
[/quote]
چرا. لینوکسشون یکیه. تفاوت در راهاندازهای انحصاری موجود در اندرویدهاست که خب لینوکس اصلی قبولشون نمیکنه. بعضی از دستگاهها مثل تلفن همراه من هم لینوکس mainline دارن.
-
- ساختار فایلسیستم و دایرکتوریها تا حد زیادی مشابه هستن
اون مربوط به https://en.m.wikipedia.org/wiki/Filesystem_Hierarchy_Standard میشه
- یک executable اندرویدی ممکنه بتونه برای لینوکس کامپایل بشه و برعکس
البته executable که کامپایل نمیشه! کد کامپایل میشه که میتونه برای ویندوز هم کامپایل بشه در اغلب موارد.
- اگر روی سیستمی گنو+لینوکس میتونه بالا بیاد احتمال زیاد بشه روش اندروید هم بالا اورد
باز هم نه. مثلاً برای رزبری پای ۴ هنوز اندروید پایداری وجود نداره.
ولی خب دستگاههای اندرویدی و گنو/لینوکس از دقیقا یک کرنل واحد استفاده نمیکنن. لینوکس اندروید kernel-msm هست درحالی که لینوکسی که ما روی دسکتاپ داریم فکر کنم mainline باشه.
چرا. لینوکسشون یکیه. تفاوت در راهاندازهای انحصاری موجود در اندرویدهاست که خب لینوکس اصلی قبولشون نمیکنه. بعضی از دستگاهها مثل تلفن همراه من هم لینوکس mainline دارن.
بنظر میاد پیام بنده رو کمی با عجله خوندید و جواب دادید.
- ممکنه به کرنل مربوط نشه ولی نکات مشابه گنو/لینوکس و اندروید هست. به علاوه اینکه همون انواع فایلی که توی گنو/لینوکس داریم همون انواع رو هم توی اندروید داریم(مثلا character device file یا regular file یا socket)
- بله منظورم کد بود. کد هایی داریم مثل fbcat که بین گنو/لینوکس و اندروید مشترکن اما نمیشه برای ویندوز کامپایلشون کرد.
- توجه کنید که گفتم «به احتمال زیاد» و «بشه». یعنی «به احتمال زیاد این کار ممکن هست». مثلا با کامپایل کرنل mainline برای رزبری و userspace اندروید اینکار «ممکن» هست. حالا ممکنه هنوز کسی انجام نداده باشه یا هنوز به پایداری نرسیده باشه یا ...
- بازم توجه کنید که از «دقیقا» استفاده کردم. همچنین به عنوان مثال کرنل گوشی من هنوز به mainline پورت نشده یا اگر شده کامل نیست آخرین بار که خبر گرفتم.
-
صحبتم اینه که نکات مشابه ربطی به کرنل ندارن؛ بلکه مربوط به استانداردهایی مي شن که هم گنو و هم اندروید رعایت میکنن، مثل POSIX و FHS.
حالا یه سری از این استانداردهای مشترک، میتونن دلیلی باشن برای این که یه کد رو بشه برای اونها کامپایل کرد و برای ویندوز نه.
-
صحبتم اینه که نکات مشابه ربطی به کرنل ندارن؛ بلکه مربوط به استانداردهایی مي شن که هم گنو و هم اندروید رعایت میکنن، مثل POSIX و FHS.
حالا یه سری از این استانداردهای مشترک، میتونن دلیلی باشن برای این که یه کد رو بشه برای اونها کامپایل کرد و برای ویندوز نه.
استانداردها خودشون پیاده میشن؟
در مورد مثال fbcat مستقیم ربط داره به framebuffer لینوکس.
-
استانداردها خودشون پیاده میشن؟
نه، سازندگان سیستمعامل، یعنی تیم گنو و گوگل پیادهاش ميکنن.
در مورد مثال fbcat مستقیم ربط داره به framebuffer لینوکس.
خب؟ شما یه برنامه دارید که روی دو تا سیستمعامل هست و داره از یه کرنل استفاده میکنه…
-
استانداردها خودشون پیاده میشن؟
نه، سازندگان سیستمعامل، یعنی تیم گنو و گوگل پیادهاش ميکنن.
در مورد مثال fbcat مستقیم ربط داره به framebuffer لینوکس.
خب؟ شما یه برنامه دارید که روی دو تا سیستمعامل هست و داره از یه کرنل استفاده میکنه…
- بنظر میاد همه چیز به تیم گنو و گوگل ختم نمیشه:
Q5. Who else is participating in the Austin Group?
A list of participants can be queried from the mailing list information
page at http://www.opengroup.org/austin/lists.html As of June 2020,
there are approximately 800 participants from over 100 organizations.
Austin Group همون تیمی هست که روی IEEE 1003.1 کار میکنه که بنظر میاد همون پازیکس باشه
- خب دیگه. میشه یکی از نکاتی که دو تا سیستمعامل متفاوت با یک کرنل واحد میتونن داشته باشن.
-
syscall ها خیلی به کرنل مربوط هستند.
-
نکته اینه که نرمافزارها در ساختار یونیکسی مستقیماً syscall نمیزنن، بلکه از زیرروالهای سیستمعامل استفاده میکنن و خود سیستمعامل در صورت نیاز از syscall استفاده میکنه.
-
درسته. ولی بعضی برنامهها هستند که مستقیم از syscall ها استفاده میکنند. مثلا همین systemd
-
خب systemd جزوی از سیستمعامله خودش.
-
خب اگه چیزی به کرنل مربوط نیست پس پاکش کنیم دیگه!! 178 مگ فضا الکی گرفته
-
کلا ۷ مگه! 🤨
-
خودش حدود ۷ مگابایت هست. توی دبیان با ماژولهاش میشه حدود ۳۵۰ مگابایت.
-
تفاوت واژه کرنل و هسته اینجا مشخص میشه دیگه!؟
-
هسته لزوماً کرنل نداره. مثل هستهٔ debootstrap
-
کرنل یه برنامه است برای مدیریت منابع سیستم و خب این کارها رو می کنه:
- جواب دادن به درخواست های سیستمی
- در دسترس قرار دادن سخت افزارها، حافظه و سی پی یو
- برقراری ارتباط بین پروسس ها (IPC) و امکان ایجاد هماهنگی بین اونها
سلام خواستم ببینم پس تفاوت کرنل و مبکرو کرنل در چبه و چرا هارمونی هواوی از میکرو کرنل استفاده میکنه که بتونه همه دستگاهشو یپارچه کنه مگه نمیشه با هسته لینوکس همچین کاری کرد ؟؟؟؟؟
-
تا جایی که میدونم، هارمونی هواوی، یه تغییر نام روی اندرویده!
https://wiki.ubuntu.ir/wiki/Kernel
-
البته چیزی که خود هاوای اعلا م کرده از میکرو کرنل ها استفاده کرده که تا بتونه از همه ی دستگاها بایک اپ مشتزک استفاده کنه تا بتونه همه رو یکپارچه کنه به نظرم منظور مقاله این بود با یه برنامه بشه هم تو تلویزیون و هم در سیستم و موبایل استفاده کنه کاری که قبلا مایکروسافت قصد انجامشو داشت که شکست خورد موفق نشود عملی کنه خوب ولی لینوکس با کرنل یک پارچه کار میکنه پس اندرویدم تقریبا با همون کرنیل یک پارچه کار مبکنه ولی هارمونی از میکروکرنل مبتنیست استفاده میکنه دیگه ربطی به اندروید نداره اگه تاریخه زندگی لینوس توروالدز خونده باشی اشاره به این موضوع میکنه که جامعه اونموقعه برنامه نویسی اینده میکرو کرنل ها رو بیشتر میدونتستن و تو دانشگاهم اگه اشتباه نکنم درست بگم با استادش سر این موضوع مشکل داشتن و الان که هارمونی ۳ رونمای شوده به گفته هاوای میتونه با ۱۲۸ مگ رم کارکنه تو دیواسها مختلف و تو این سایتها نوشته بود کسای که استفاده کردن از روان بود سیتم عامل راضی بود ن میگفتن حتی روانتر از اندرویده
https://digiato.com/article/2021/06/16/%D9%87%D9%85%D9%87-%DA%86%DB%8C%D8%B2-%D8%AF%D8%B1%D8%A8%D8%A7%D8%B1%D9%87-%D8%B3%DB%8C%D8%B3%D8%AA%D9%85-%D8%B9%D8%A7%D9%85%D9%84-%D9%87%D8%A7%D8%B1%D9%85%D9%88%D9%86%DB%8C-%D9%87%D9%88%D8%A7%D9%88 (https://digiato.com/article/2021/06/16/%D9%87%D9%85%D9%87-%DA%86%DB%8C%D8%B2-%D8%AF%D8%B1%D8%A8%D8%A7%D8%B1%D9%87-%D8%B3%DB%8C%D8%B3%D8%AA%D9%85-%D8%B9%D8%A7%D9%85%D9%84-%D9%87%D8%A7%D8%B1%D9%85%D9%88%D9%86%DB%8C-%D9%87%D9%88%D8%A7%D9%88)
https://www.19kala.com/mag/harmony-os-beta-for-mobile-phones/
(https://www.19kala.com/mag/harmony-os-beta-for-mobile-phones/)