جامعه برنامه نویس

برگشت   جامعه برنامه نویس > برنامه نویسی سطح پایین > توسعه‌ی هسته‌ی سیستم عامل

اطلاعیه

توسعه‌ی هسته‌ی سیستم عامل مباحثی در زمینه‌ی توسعه‌ی کرنل یا نوشتن درایور و یا ... مربوط به تمامی سیستم عامل‌ها در این تالار مطرح شود.


پاسخ
 
ابزار های تاپیک طریقه نمایش
قدیمی چهارشنبه 29 آبان 1387, 17:25 عصر   #1
asm.coder
کاربر جدید
 
تاریخ عضویت: شهریور 1387
پست: 27
تشکرها: 3
6 بار تشکر شده در 4 پست
معرفی کلی انواع هسته های سیستم عامل

کرنل ها بخش اصلی یک سیستم عامل را تشکیل می دهند و وظایف اساسی از قبیل مدیریت حافظه . مدیریت سخت افزار . ایجاد بستر مناسب برای اینترفیس ها و ... را به عهده دارد .
کرنل ها بستگی به نوع ساختار خود به دسته های مختلفی تقسیم می شوند اما در کل به دسته Monolithic Kernel ها و Micro Kernel ها تقسیم بندی می شوند .

Monolithic Kernel
در کرنل های monolithic معمولا کرنل به عنوان یک تک برنامه در بالای مموری نشسته و سیستم را مدیریت می کند. این نوع کرنل ها که به هسته های یکپارچه در فارسی معروفند به خاطر وابستگی قسمت های مختلف به یکدیگر درصورت بروز مشکل در یک قسمت امکان دارد کل سیستم مختل شود . البته در صورت نبود چنین مشکلی این ارتباط نزدیک بخش های مختلف یکی از مزایای این سیستم به شمار می رود .
لینوکس و یونیکس از معروفترین این نوع کرنل ها هستند.
شمای کلی این نوع کرنل :



Micro Kernel
ریزهسته ها یا micro kernel ها بیشتر تمرکز خود را بر اجرای device driver ها و سرویس ها در محیط userspace دارند . مزیت این سیستم ها این است که در صورت بروز مشکل در یک قسمت بقیه قسمت ها بدون مشکل کار خواهند کرد.
Minix , AIX از معروفترین این نوع کرنل ها هستند.


در این تقسیم بندی ساختار های دیگری نیز وجود دارد مثل :
Hybird Kernel که از زیرمجموعه Micro Kernel ها هستند و در واقع برای بهبود Micro Kernel شامل کدهای در حافظه هستند.

Modular Kernel این کرنل ها قسمت های مختلف را به صورت module بعد از لود شدن کرنل لود می کنند .
البته این تقسیم بندی در اینجا تمام نمی شود کرنل های دیگری مثله Nano Kernel ها و ExoKernel ها هم وجود دارد.
asm.coder آفلاین است   پاسخ با نقل قول
3 کاربر از asm.coder به خاطر این مطلب مفید تشکر کرده اند:
قدیمی پنج شنبه 21 آذر 1387, 22:46 عصر   #2
ahmad598
کاربر تازه وارد
 
آواتار ahmad598
 
تاریخ عضویت: مهر 1387
محل زندگی: تهران
پست: 34
تشکرها: 4
6 بار تشکر شده در 5 پست
نقل قول: معرفی کلی انواع هسته های سیستم عامل

فکر می کنم که کرنلهای جدیدتر لینوکس هم ماژولار باشن نه مونولیتیک. ولی مطمءن نیستم.
راستی چرا در مورد ویندوز چیزی نگفتین؟ یعنی مایکروسافت انقدر بسته است؟!
ahmad598 آفلاین است   پاسخ با نقل قول
قدیمی دوشنبه 02 دی 1387, 10:22 صبح   #3
miradli
کاربر تازه وارد
 
آواتار miradli
 
تاریخ عضویت: بهمن 1386
محل زندگی: تهران
پست: 48
تشکرها: 35
79 بار تشکر شده در 26 پست
ارسال پیام به وسیله AIM به miradli ارسال پیام از طریق Yahoo به miradli
نقل قول: معرفی کلی انواع هسته های سیستم عامل

کرنل ویندوز های NT به بعد Hybrid kernel می باشد . برای اطلاعات بیشتر در مورد کرنل Hybrid kernel این لینک مفید می باشد : http://en.wikipedia.org/wiki/Hybrid_kernel
__________________
I've been Iranian until today , only Iranian , unlike other Iranian





وبلاگ من :
http://miradli.blogfa.com/
miradli آفلاین است   پاسخ با نقل قول
قدیمی جمعه 06 دی 1387, 04:51 صبح   #4
ilia_86
کاربر جدید
 
تاریخ عضویت: دی 1387
محل زندگی: تهران
پست: 6
تشکرها: 0
2 بار تشکر شده در یک پست
ارسال پیام از طریق Yahoo به ilia_86
نقل قول: معرفی کلی انواع هسته های سیستم عامل

سلام
ببخشید می خواستم بدانم اگر بخواهیم خودمون یک کرنل مثل MenuetOs بنویسیم . مستندات فارسی برای آن وجود دارد؟ یا حتی برای نوشتن یک BootLoader ساده؟
همینطور اگر بخواهیم سیستم عامل کوچکی مثل Menuet را فارسی کنیم کدام فایل های آن را بایستی دستکاری کنیم؟
با تشکر
ilia_86 آفلاین است   پاسخ با نقل قول
پاسخ

بوک مارک کردن این تاپیک

Tags
Hybrid Kernel, Kernel, Micro Kernel, MicroKernel, Modular Kernel, Monolithic Kernel, Operating System, OS Kernel, سیستم عامل, میکرو کرنل, کرنل, کرنل سیستم عامل, هسته, هسته سیستم عامل, هسته سيستم عامل


کاربرانی که این تاپیک را مشاهده میکنند: 1 (0 کاربران و 1 مهمان)
 
ابزار های تاپیک
طریقه نمایش

قوانین ایجاد تاپیک در تالار
شما نمی توانید تاپیک جدید ایجاد کنید
شما نمی توانید به تاپیک ها پاسخ دهید
شما نمی توانید ضمیمه ارسال کنید
شما نمی توانید پاسخ هایتان را ویرایش کنید

BB code روشن است
خندانک ها روشن هستند
[IMG] روشن است
HTML خاموش است

پرش



واحد زمان برحسب ساعت لندن +3.5. ساعت هم اکنون 01:11 صبح است.


Powered by vBulletin® Version 3.8.0
Copyright ©2000 - 1389, Jelsoft Enterprises Ltd.
خدمات میزبانی این سایت تحت پوشش شرکت ایران هاست می باشد.