دوره آموزشی
The Great Courses
دوبله زبان فارسی

طراحی کرنل سیستم عامل xv6 از ابتدا با برنامه نویسی C

طراحی کرنل سیستم عامل xv6 از ابتدا با برنامه نویسی C

✅ سرفصل و جزئیات آموزش

آنچه یاد خواهید گرفت:

  • چگونه جدول صفحه کرنل xv6 با استفاده از آدرس‌دهی حافظهٔ مجازی راه‌اندازی می‌شود؟
  • چگونه حافظهٔ داده‌های اشتراکی با استفاده از قفل‌های چرخشی و قفل خواب مدیریت می‌شود؟
  • چگونه عملیات زمان‌بندی‌شده در سیستم‌عامل با استفاده از وقفه تایمر فعال می‌شود؟
  • چگونه دسترسی همزمان به دیسک با استفاده از مجازی‌سازی ورودی/خروجی نگاشت‌شده در حافظه virtio فعال می‌شود؟
  • چگونه فراخوانی‌های سیستمی در سیستم‌عامل تولید می‌شوند؟
  • چگونه فرآیندهای سیستم‌عامل با استفاده از تکنیک زمان‌بندی Round Robin زمان‌بندی می‌شوند؟
  • چگونه سخت‌افزار نمایشگر و صفحه‌کلید با استفاده از UART 16550a متصل می‌شود؟

پیش نیازهای دوره

  • تجربه اولیه C یا ++C

توضیحات دوره

xv6 یک کرنل پردازنده چند کرنل‌ است که برای اهداف آموزشی طراحی شده است. این کرنل سیستم عامل با موفقیت روی ماشین مجازی qemu اجرا می‌شود و گزینه‌هایی برای گسترش ویژگی‌ها دارد. در این دوره 8 ساعته، یاد خواهید گرفت که چگونه کد برنامه C را از ابتدا بنویسید و چندین مفهوم سیستم عامل استفاده شده را درک کنید، از جمله:

  • چگونگی مقداردهی اولیه زیرسیستم‌های کرنل - به عنوان مثال فرآیند، حافظه، دیسک، وقفه‌ها، trap، حالت
  • شما حالت‌های مختلف عملکرد کرنل را یاد می‌گیرید - حالت ماشین، حالت ناظر، حالت کاربر و چگونگی جابجایی بین حالت‌ها
  • چگونگی محافظت از داده‌ حافظه اشتراکی با استفاده از قفل‌های چرخشی و قفل خواب روی یک پردازنده چند کرنل‌
  • مجازی‌سازی سخت‌افزاری - چگونگی اتصال سخت‌افزار خارجی مانند صفحه کلید و نمایشگر با استفاده از تراشه 16550a UART
  • آدرس‌دهی حافظه مجازی و چگونگی نگاشت حافظه مجازی به حافظه فیزیکی
  • چگونگی تولید فراخوانی‌های سیستمی از حالت کاربر از جمله چگونگی انتقال و اجرای آن در حالت ناظر
  • چگونگی مدیریت عملیات زمان‌بندی‌شده مانند ()sleep، زمان‌بندی در یک سیستم عامل با استفاده از وقفه‌های تایمر.
  • تکنیک‌های مدیریت دیسک از جمله بافرینگ، نگاشت بیتی، لاگینگ و غیره
  • چگونگی استفاده از مجازی‌سازی سخت‌افزاری برای فعال‌سازی دسترسی به دیسک از ماشین مجازی به سیستم میزبان با استفاده از ثبات‌های نگاشت شده در حافظه VIRTIO
  • تکنیک مدیریت فایل - چگونگی ذخیره‌سازی فایل‌ها و دایرکتوری‌ها به عنوان inodeها، pipeها و فایل‌های دستگاهی روی دیسک و در حافظه
  • تکنیک‌های مدیریت و زمان‌بندی فرآیند - تکنیک‌های ایجاد فرآیند، تخصیص فرآیند و دستکاری فرآیند

این دوره برای چه کسانی مناسب است؟

  • توسعه‌دهندگان مبتدی تا حرفه‌ای C++ ،C و کرنل

طراحی کرنل سیستم عامل xv6 از ابتدا با برنامه نویسی C

  • مقدمه‌ای بر توسعه کرنل 05:26
  • راه‌اندازی حافظه سیستم با استفاده از kernel .ld و چگونگی راه‌اندازی پشته سیستم 11:41
  • چگونگی خواندن ثبات وضعیت حالت ماشین و راه‌اندازی وقفه تایمر در timervec 26:54
  • چگونگی محافظت از داده‌ حافظه اشتراکی با استفاده از قفل‌های چرخشی و قفل خواب 32:05
  • چگونگی اتصال 16550a UART به عنوان دستگاه کنسول برای صفحه کلید و نمایشگر 52:03
  • چگونگی راه‌اندازی جدول صفحه کرنل (آدرس‌دهی حافظه مجازی) 41:14
  • چگونگی نگاشت آدرس مجازی جدول صفحه به حافظه فیزیکی با استفاده از KALLOC 27:15
  • آدرس‌دهی حافظه مجازی 2 13:33
  • چگونگی راه‌اندازی کنترل‌کننده وقفه سطح پلتفرم PLIC 15:22
  • چگونگی راه‌اندازی و پردازش trapها و وقفه‌ها با استفاده از ثبات sstatus 20:26
  • چگونگی پردازش trapها و وقفه‌ها در حالت کاربر با استفاده از uservec و usertrap 20:24
  • مجازی‌سازی سخت‌افزاری با استفاده از کتابخانه virtio memory mapped io 44:30
  • چگونگی خواندن/نوشتن بین کرنل و سیستم میزبان 05:19
  • مدیریت بافر - دسترسی همزمان به حافظه با استفاده از بافرها 22:20
  • لاگینگ - لایه انتزاعی دسترسی به دیسک 27:40
  • چگونگی نگاشت بلوک‌های حافظه با استفاده از نگاشت بیتی بلوک‌های داده 30:13
  • ساختارهای فایل و دایرکتوری و چگونگی دسترسی به آن‌ها با استفاده از inodeها 36:29
  • تکنیک مدیریت فایل - تخصیص فایل، خواندن، نوشتن، باز کردن، بستن، stat 13:29
  • تکنیک مدیریت pipe - خواندن، نوشتن، باز کردن، بستن، تخصیص pipe 10:51
  • چگونه یک فرآیند با استفاده از procinit ،allocproc ،fork ،reparent ،userinit را مدیریت کنید؟ 45:33
  • چگونه فراخوانی سیستم را راه‌اندازی کنید؟ 33:39

5,412,000 1,353,000 تومان

مشخصات آموزش

طراحی کرنل سیستم عامل xv6 از ابتدا با برنامه نویسی C

  • تاریخ به روز رسانی: 1405/04/02
  • سطح دوره:همه سطوح
  • تعداد درس:21
  • مدت زمان :09:04:50
  • حجم :3.5GB
  • زبان:دوبله زبان فارسی
  • دوره آموزشی:AI Academy

آموزش های مرتبط

The Great Courses
2,260,000 452,000 تومان
  • زمان: 03:02:02
  • تعداد درس: 14
  • سطح دوره:
  • زبان: دوبله فارسی
The Great Courses
795,000 159,000 تومان
  • زمان: 58:00
  • تعداد درس: 12
  • سطح دوره:
  • زبان: دوبله فارسی
The Great Courses
19,403,000 3,880,600 تومان
  • زمان: 26:02:40
  • تعداد درس: 175
  • سطح دوره:
  • زبان: دوبله فارسی
The Great Courses
8,508,000 1,701,600 تومان
  • زمان: 11:25:13
  • تعداد درس: 94
  • سطح دوره:
  • زبان: دوبله فارسی
  • سطح دوره:
  • زبان: دوبله فارسی
The Great Courses
1,833,000 366,600 تومان
  • زمان: 02:27:39
  • تعداد درس: 24
  • سطح دوره:
  • زبان: دوبله فارسی
The Great Courses
6,100,500 1,220,100 تومان
  • زمان: 08:11:21
  • تعداد درس: 28
  • سطح دوره:
  • زبان: دوبله فارسی
The Great Courses
7,256,500 1,451,300 تومان
  • زمان: 09:44:25
  • تعداد درس: 67
  • سطح دوره:
  • زبان: دوبله فارسی
The Great Courses
3,634,500 726,900 تومان
  • زمان: 04:52:43
  • تعداد درس: 38
  • سطح دوره:
  • زبان: دوبله فارسی

آیا سوالی دارید؟

ما به شما کمک خواهیم کرد تا شغل و رشد خود را افزایش دهید.
امروز با ما تماس بگیرید