لطفا جهت اطلاع از آخرین دوره ها و اخبار سایت در
کانال تلگرام
عضو شوید.
آموزش سیستم عامل خود را از ابتدا بنویسید - گام به گام
Write Your Own Operating System From Scratch - Step by Step
نکته:
آخرین آپدیت رو دریافت میکنید حتی اگر این محتوا بروز نباشد.
نمونه ویدیوها:
توضیحات دوره:
سیستم عامل 64 بیتی خود را بسازید - برای معماری x86 بتوانید یک سیستم عامل ساده برای معماری x86 بسازید. درک حالت واقعی درک حالت محافظت شده و حالت طولانی نحوه مدیریت وقفه ها و استثناها در حالت 64 بیتی نحوه نوشتن هسته سیستم عامل با کد اسمبلی و کد C قادر به نوشتن تابع چاپ برای چاپ کاراکترها بر روی صفحه نمایش قادر به ساختن یک مدیر حافظه با استفاده از مکانیزم صفحه بندی x86 نحوه نوشتن کنترل کننده تایمر برای مدیر فرآیند نحوه ایجاد یک مدیر فرآیند برای زمان بندی فرآیندها و تغییر آنها در بین حالت های مختلف (خواب، آماده، کشته) نحوه پیاده سازی ماژول فراخوانی سیستم برای اجرای برنامه های کاربر در سیستم نوشتن یک درایور صفحه کلید (PS/2) یک کنسول ساده بنویسید و با استفاده از دستورات با هسته سیستم عامل تعامل داشته باشید بتوانید یک ماژول سیستم فایل ساده بنویسید که از خواندن سیستم fat16 پشتیبانی می کند. پیش نیازها:آشنایی اولیه با زبان x86 اسمبلی و زبان C یک کامپیوتر آزمایشی و درایو فلش USB (اگر می خواهید سیستم عامل را روی یک ماشین واقعی اجرا کنید)
به نوشتن دوره آموزشی سیستم عامل 64 بیتی خود خوش آمدید.
این دوره به شما یاد می دهد که چگونه از ابتدا یک سیستم عامل ساده بسازید. اصول اولیه معماری x86 و برنامه نویسی سطح پایین را پوشش می دهد. در این دوره، ما شما را با مراحل ساخت یک سیستم کاری کوچک به صورت گام به گام آشنا خواهیم کرد.
قسمت اول دوره تمام آنچه را که باید بدانید (حالتهای پردازنده، صفحهبندی، استثناها و مدیریت وقفهها، و غیره) را قبل از اینکه بتوانید هسته را بر روی معماری x86 بسازید، آموزش میدهد. در این قسمت نحوه آماده شدن برای تغییر حالت را خواهیم دید. از حالت واقعی به حالت محافظت شده تغییر می کنیم و سپس به حالت طولانی می پریم. هسته ما در حالت 64 بیتی اجرا می شود. بعد از اینکه به حالت 64 بیتی رفتیم، نحوه مدیریت استثناها و وقفه ها، نحوه جابجایی بین حالت هسته و حالت کاربر را خواهیم دید.
قسمت دوم دوره به شما یاد می دهد که چگونه ماژول های هسته مانند پردازش ها، مدیریت حافظه، مدیریت وقفه و غیره را بسازید. در این قسمت نحوه نوشتن یک درایور صفحه کلید و یک کنسول، نحوه تعامل با هسته سیستم عامل با استفاده از کنسول. پس از اتمام این بخش، باید بدانید که چگونه برنامه های کاربری را بنویسید و آنها را در سیستم عامل خود اجرا کنید.
در این دوره آموزشی خواهید آموخت:
چگونه یک سیستم عامل ساده برای معماری x86 بسازیم.
درک حالت واقعی
درک حالت محافظت شده و حالت طولانی
نحوه مدیریت وقفه ها و استثناها در حالت 64 بیتی
نحوه نوشتن هسته سیستم عامل با کد اسمبلی و کد C
قادر به نوشتن تابع چاپ برای چاپ کاراکترها بر روی صفحه باشید
قادر به ساخت یک مدیر حافظه با استفاده از مکانیسم صفحه بندی x86
باشید
نحوه نوشتن کنترل کننده تایمر برای مدیر فرآیند
نحوه ایجاد یک مدیر فرآیند برای زمانبندی فرآیندها و تغییر آنها در حالتهای مختلف (خواب، آماده، کشته)
نحوه پیاده سازی ماژول فراخوانی سیستم برای اجرای برنامه های کاربر در سیستم
درایور صفحه کلید (PS/2) بنویسید
یک کنسول ساده بنویسید و با استفاده از دستورات با هسته سیستم عامل تعامل داشته باشید
بتوانید یک ماژول سیستم فایل ساده بنویسید که از خواندن سیستم fat16 پشتیبانی می کند.
در پایان دوره، باید بتوانید سیستم عامل 64 بیتی خود را توسعه دهید.
سرفصل ها و درس ها
معرفی
Introduction
معرفی
Introduction
معرفی
Introduction
باید دید
MUST SEE
مفاهیم سیستم عامل
Operating System Concepts
ساختارهای سیستم عامل
Operating System Structures
نصب و راه اندازی
Installation and Setup
نصب و راه اندازی
Installation and Setup
کار با ویندوز 10
Working with Windows 10
کار با MacOS
Working with MacOS
کار با لینوکس (اوبونتو)
Working with Linux (Ubuntu)
نحوه استفاده از منابع
How to Use Resources
راه اندازی
Boot Up
راه اندازی
Boot Up
برنامه اول
The First Program
تست روی ویندوز 10
Testing on Windows 10
تست در لینوکس (اوبونتو)
Testing on Linux (Ubuntu)
تست روی MacOS
Testing on MacOS
سرویس افزونه دیسک را تست کنید
Test Disk Extension Service
بارگیری لودر و رفتن به حالت طولانی
Loading the Loader and Switching to Long Mode
بارگیری لودر و رفتن به حالت طولانی
Loading the Loader and Switching to Long Mode
لودر
Loader
پشتیبانی از حالت طولانی
Long Mode Support
فایل هسته را بارگیری کنید
Load Kernel File
نقشه حافظه را دریافت کنید
Get Memory Map
تست A20 Line
Test A20 Line
حالت ویدیو را تنظیم کنید
Set Video Mode
حالت محافظت شده
Protected Mode
حالت طولانی
Long Mode
کنترل استثناها و وقفه ها در x86
Exceptions and Interrupts Handling on the x86
کنترل استثناها و وقفه ها در x86
Exceptions and Interrupts Handling on the x86
پرش به هسته
Jumping to Kernel
بارگیری مجدد GDT
Reload GDT
استثناها و مدیریت وقفه ها
Exceptions and Interrupts Handling
ذخیره رجیسترها
Saving Registers
راه اندازی کنترل کننده وقفه
Setting Up the Interrupt Controller
رسیدن به Ring3
Getting to Ring3
مدیریت وقفه ها در Ring3 قسمت اول
Interrupts Handling in Ring3 Part I
وقفه های هندلینگ در Ring3 Part II
Interrupts Handling in Ring3 Part II
مدیریت وقفه جعلی
Spurious Interrupt Handling
کار با سی
Working With C
کار با سی
Working With C
هسته اصلی
Kernel Main
همه اش را بگذار کنار هم
Putting It All Together
توابع ساده کتابخانه
Simple Library Functions
عملکرد چاپ
Print Function
ادعا
Assertion
مدیریت حافظه
Memory Management
مدیریت حافظه
Memory Management
بازیابی نقشه حافظه
Retrieve Memory Map
صفحه بندی
Paging
تخصیص دهنده حافظه
Memory Allocator
صفحات حافظه
Memory Pages
صفحه حافظه رایگان
Free Memory Page
فضای کاربری
User Space
فرآیندها
Processes
فرآیندها
Processes
فرآیند اول
The First Process
تماس سیستمی
System Call
برنامه ریزی
Scheduling
بخواب و بیدار شو
Sleep and Wake Up
خروج و صبر کنید
Exit and Wait
خاتمه یک فرآیند
Terminate A Process
صفحه کلید و کنسول
Keyboard And Console
صفحه کلید و کنسول
Keyboard And Console
یک درایور صفحه کلید PS/2 بنویسید 1
Write A PS/2 Keyboard Driver 1
نمایش نظرات