当前位置:网站首页>Introduction to RT thread kernel (5) -- memory management
Introduction to RT thread kernel (5) -- memory management
2022-07-05 04:20:00 【Number and form】
Basic concepts
There are two kinds of storage space in computer system , One is internal storage space RAM( Ram ) Fast access , External storage space ROM( read-only memory ) Stable stored data .
Two memory management algorithms
Static memory allocation algorithm : Allocate memory blocks of the preset size during user initialization in the static memory pool , Ensure the reliability of the equipment, but consider the upper limit of memory , Memory efficiency is low , Efficient distribution and use
Dynamic memory allocation algorithm : Allocate memory blocks of the size specified by the user in the dynamic memory pool , High memory efficiency , Memory pools are prone to fragmentation
Dynamic memory management algorithm Small memory management algorithm and SLAB Memory management algorithm
Interface function of static memory management :
Initialize memory pool :rt_mp_init
Out of memory pool :rt_thread_detach
Create a memory pool :rt_thread_create
Delete memory pool :rt_thread_delete
Static memory application function :rt_mp_alloc
j Static memory release function :rt_mp_free
Common interface functions for dynamic memory management :
Memory heap system initialization :rt_system_heap_init
Allocate memory blocks :rt_malloc
Free memory block :rt_free
Reallocate memory blocks :rt_realloc
Allocate multiple memory blocks :rt_calloc
边栏推荐
- 学习MVVM笔记(一)
- 北京程序员的真实一天!!!!!
- Looking back on 2021, looking forward to 2022 | a year between CSDN and me
- BDF application - topology sequence
- Convert Boolean to integer value PHP - Convert Boolean to integer value PHP
- Threejs realizes the drawing of the earth, geographical location annotation, longitude and latitude conversion of world coordinates threejs coordinates
- 【虛幻引擎UE】實現UE5像素流部署僅需六步操作少走彎路!(4.26和4.27原理類似)
- Why can't all browsers on my computer open web pages
- Rome链分析
- Is "golden nine and silver ten" the best time to find a job? Not necessarily
猜你喜欢

What is test development? Why do so many companies hire test developers now?

File upload bypass summary (upload labs 21 customs clearance tutorial attached)

行为感知系统

Differences among 10 addressing modes

Network layer - forwarding (IP, ARP, DCHP, ICMP, network layer addressing, network address translation)

防护电路中的元器件

“金九银十”是找工作的最佳时期吗?那倒未必

【FineBI】使用FineBI制作自定义地图过程

Online sql to excel (xls/xlsx) tool

Why can't all browsers on my computer open web pages
随机推荐
Sequelize. JS and hasmany - belongsto vs hasmany in serialize js
Rust blockchain development - signature encryption and private key public key
[illusory engine UE] method to realize close-range rotation of operating objects under fuzzy background and pit recording
长度为n的入栈顺序的可能出栈顺序种数
Fonction (sujette aux erreurs)
A real day for Beijing programmers!!!!!
Longyuan war "epidemic" 2021 network security competition web easyjaba
Containerd series - detailed explanation of plugins
Ctfshow 2022 Spring Festival welcome (detailed commentary)
Pyqt pyside custom telescopic menu bar sharing (including tutorial)
BDF application - topology sequence
open graph协议
Common features of ES6
Threejs implements labels and displays labels with custom styles
【thingsboard】替换首页logo的方法
基于TCP的移动端IM即时通讯开发仍然需要心跳保活
Threejs loads the city obj model, loads the character gltf model, and tweetjs realizes the movement of characters according to the planned route
After the deployment of web resources, the navigator cannot obtain the solution of mediadevices instance (navigator.mediadevices is undefined)
Get to know MySQL connection query for the first time
NetSetMan pro (IP fast switching tool) official Chinese version v5.1.0 | computer IP switching software download