لطفا جهت اطلاع از آخرین دوره ها و اخبار سایت در
کانال تلگرام
عضو شوید.
آموزش مدیریت حافظه در کرنل لینوکس
Memory Management in Linux Kernel
نکته:
آخرین آپدیت رو دریافت میکنید حتی اگر این محتوا بروز نباشد.
نمونه ویدیوها:
توضیحات دوره:
برنامه نویسی کرنل لینوکس - مدیریت حافظه در دانش عمیق مدیریت حافظه در لینوکس کرنل پیش نیازها: باید قادر به نوشتن/کامپایل/بارگیری/دانلود ماژول های Hello World Linux Kernel باشد.
بهروزرسانی: 16 اکتبر 2020: یادداشتهای اضافه شده/نمونههای استفاده شده در دوره
از این دوره چه چیزی یاد خواهید گرفت؟
فضای آدرس فیزیکی پردازنده و نحوه مشاهده آن در لینوکس
فضای آدرس مجازی پردازنده
فضای آدرس مجازی هسته و فضای کاربر
صفحات و خطای صفحه
نحوه تبدیل آدرس مجازی به آدرس فیزیکی و فرمت های مورد استفاده برای چاپ
حافظه کم و حافظه بالا
مکانیسم تخصیص حافظه - تخصیص دهنده دوستان
مناطق -/proc/buddyinfo
تخصیص حافظه پویا در هسته لینوکس
پرچمهای مختلف مورد استفاده در kmalloc - GFP_KERNEL، GFP_ATOMIC، GFP_DMA
تفاوت بین kmalloc و vmalloc
وقتی 0 را در kmalloc و vmalloc پاس می کنید چه اتفاقی می افتد
پشته هسته
APIهای تحت پوشش این دوره آموزشی:
virt_to_phys
phys_to_virt
kmalloc
kfree
krealloc
ksize
vmalloc
vfree
دستورات استفاده شده در این دوره:
qemu-system-x86
سرفصل ها و درس ها
مدیریت حافظه قسمت 1
Memory Management Part 1
فضای آدرس فیزیکی چیست؟
What is Physical Address Space
نحوه مشاهده نقشه حافظه/فضای آدرس فیزیکی در لینوکس -/proc/iomem
How to view memory map/physical address space in Linux - /proc/iomem
اجرای تصویر Buildroot 32 بیتی در QEMU
Running 32-bit Buildroot image in QEMU
مشاهده/تغییر اندازه RAM در QEMU -/proc/meminfo، free -m
View/Change RAM Size in QEMU - /proc/meminfo, free -m
فضای آدرس مجازی برای پردازنده های 32 بیتی
Virtual Address Space for 32-bit processors
چرا هسته فضای آدرس خود را برای همه فرآیندها به اشتراک می گذارد
Why kernel shares its address space for all processes
نقشه حافظه 64 بیتی
64-bit Memory Map
تبدیل آدرس مجازی به آدرس فیزیکی و بالعکس
Converting Virtual address to physical address and vice versa
صفحات - PAGE_SIZE ماکرو
Pages - PAGE_SIZE macro
صفحه ساختار
struct page
خطای صفحه
Page Fault
وقتی حافظه 4 کیلوبایت باشد، صفحه خطا می کند
Page Faults when memory is 4 KB
فضای کاربری فضای آدرس مجازی
User space virtual address space
فضای آدرس مجازی هسته - حافظه کم و حافظه بالا
Kernel Virtual address space - low mem and high mem
حافظه کم
Low Memory
چگونه می توانم بفهمم مم کم و مم بالا چقدر است
How can i find out how much is my low mem and high mem
حافظه بالا
High Memory
مکانیسم تخصیص حافظه
Memory Allocation Mechanism
kmalloc و kfree
kmalloc and kfree
نمونه ماژول هسته لینوکس kmalloc و kfree
Linux Kernel Module example of kmalloc and kfree
نمایش نظرات