Table of Contents
مدیریت حافظه موثر در سیستم های جاسازی شده برای بهینه سازی عملکرد و اطمینان از قابلیت اطمینان ضروری است.این راهنما بینش های عملی و محاسبات مثال را برای کمک به درک تخصیص حافظه و استفاده در چنین سیستم هایی فراهم می کند.
درک انواع حافظه در سیستم های جاسازی شده
سیستم های جاسازی شده معمولا از انواع مختلف حافظه، از جمله رم، ROM و حافظه فلش استفاده می کنند. رم برای ذخیره سازی داده های موقت در طول عمل استفاده می شود، در حالی که سیستم عامل ذخیره حافظه ROM و فلش و داده های دائمی است.
آموزش نیازهای حافظه
برای تعیین حافظه مورد نیاز، اجزای سیستم و اندازه داده های آن ها را در نظر بگیرید، به عنوان مثال، اگر یک میکروکنترلر سه سنسور را در هر تولید ۲۵۶ بایت داده، کل رم مورد نیاز برای داده های سنسور را کنترل کند:
سنسورهای x 256 بایت = 768 بایت [FLT 1 ]
اضافه کردن فضا برای بافرها، متغیرها و پشته، کل رم را می توان بر اساس آن تخمین زد.به عنوان مثال، تخصیص 1 کیلوبایت برای بافرها و 512 بایت برای نتایج پشته.
Total RAM = 768 بایت + 1 KB + 512 بایت = تقریبا 2.3 کیلوبایت
حافظه Allocation
فرض کنید یک دستگاه جاسازی شده دارای 8 کیلوبایت رم است، سیستم باید حافظه را برای سنسورها، بافرها و پشته با استفاده از محاسبه قبلی اختصاص دهد:
داده های سنسور: 768 بایت
بافر: 1 KB
Stack: 512 بایت
حافظه باقی مانده برای فرآیندهای دیگر این است:
]8 KB (768 بایت + 1 KB + 512 بایت) = حدود 5.2 کیلوبایت [
بهترین تمرین ها برای مدیریت حافظه
- حافظه را بر اساس سناریوهای بدترین حالت قرار دهید.
- استفاده از تخصیص حافظه استاتیک در صورت امکان برای جلوگیری از تقسیم بندی.
- به طور منظم استفاده از حافظه را در طول توسعه نظارت کنید.
- بهینه سازی ساختارهای داده برای به حداقل رساندن اثر حافظه