当前位置:网站首页>Armv8-a programming guide MMU (3)
Armv8-a programming guide MMU (3)
2022-07-05 01:08:00 【Linux decoder】
2 Separation of kernel and application virtual address space
Operating systems usually have multiple applications or tasks running asynchronously . Each application has its own unique conversion table and the kernel switches from one conversion table to another , This is part of context switching between the two tasks . however , Most memory systems are only used by the kernel and have fixed virtual to physical address mappings , Conversion table entries are rarely modified .ARMv8 The architecture provides some features to effectively handle this requirement .
The base address of the conversion table has TTBR0_EL1 and TTBR1_EL1 Appoint . When VA All the high positions are 0 when , choice TTBR0 Conversion table to , When VA The high position of the 1 when , choice TTBR1 Selected conversion table . You can enable VA tagging Don't be too tall 8 Check the position .
The virtual address of instruction acquisition or data access of the processor is 64 position . But you have to be 48 Two defined areas are mapped in the bit physical address memory mapping .
EL2 and EL3 Only TTBR0, No, TTBR1, It means :
(1) If EL2 Use AArch64, It only uses the scope 0x0~0x0000ffffffffffff Of VA;
(2) If EL3 Use AArch64, It only uses the scope 0x0~0x0000ffffffffffff Of VA;
The following figure shows that the kernel space is mapped to the highest area of memory and the virtual address space is mapped to the lowest area of memory . however , Both are mapped to a smaller physical address space .
Conversion control register TCR_EL1 Defines the number of the highest bits that need to be checked .TCR_EL1 contain T0SZ[5:0] and T1SZ[5:0]. The number of this field gives the whole 0 Or all 1 The highest number of . The minimum and maximum values of these fields are specified here , according to granule The size and starting table level are different . therefore , You must always use both spaces , At least two conversion tables are required in all systems . Simple bare systems do not OS It is still required to include fault Table of items .
TCR_EL1 Controls the EL1 and EL0 Other memory management features of . The above figure only shows the control address range and graunule Size domain .
IPS The domain controls the maximum output address size . If the output address specified by the conversion is out of range , Error accessing ,000=32 Bit physical address ,101=48 position . two bit TG1 and TG0 Domain gives granularity of kernel or user space ,00=4KB,01=16KB,11=64KB.
You can configure the conversion table level for the first lookup . The complete conversion process requires three or four levels of page tables . You don't need to achieve all levels . The first level of search consists of granularity and TCR_ELn.TxSZ The domain determines . You can configure it separately TTBR0_EL1 and TTBR1_EL1.
边栏推荐
- 揭露测试外包公司,关于外包,你或许听到过这样的声音
- Postman automatically fills headers
- Delaying wages to force people to leave, and the layoffs of small Internet companies are a little too much!
- [FPGA tutorial case 10] design and implementation of complex multiplier based on Verilog
- Analysis and comparison of leetcode weekly race + acwing weekly race (t4/t3)
- Yyds dry goods inventory kubernetes management business configuration methods? (08)
- “薪资倒挂”、“毕业生平替” 这些现象说明测试行业已经...
- Relationship between classes and objects
- Global and Chinese markets for industrial X-ray testing equipment 2022-2028: Research Report on technology, participants, trends, market size and share
- NPM install error forced installation
猜你喜欢
Redis master-slave replication cluster and recovery ideas for abnormal data loss # yyds dry goods inventory #
Pycharm professional download and installation tutorial
华为百万聘请数据治理专家!背后的千亿市场值得关注
【大型电商项目开发】性能压测-性能监控-堆内存与垃圾回收-39
Arbitrum: two-dimensional cost
College degree, what about 33 year old Baoma? I still sell and test, and my monthly income is 13K+
skimage: imread & imsave & imshow
多模输入事件分发机制详解
【海浪建模2】三维海浪建模以及海浪发电机建模matlab仿真
Basic operations of database and table ----- delete index
随机推荐
[development of large e-commerce projects] performance pressure test - Optimization - impact of middleware on performance -40
【大型电商项目开发】性能压测-优化-中间件对性能的影响-40
Research Report on the overall scale, major producers, major regions, products and application segmentation of agricultural automatic steering system in the global market in 2022
Paxos 入门
Behind the cluster listing, to what extent is the Chinese restaurant chain "rolled"?
程序员SQL数据脚本编码能力弱,BI做不出来怎么办?
Pandora IOT development board learning (RT thread) - Experiment 4 buzzer + motor experiment [key external interrupt] (learning notes)
Identifiers and keywords
[development of large e-commerce projects] performance pressure test - Performance Monitoring - heap memory and garbage collection -39
Hand drawn video website
Visual explanation of Newton iteration method
Are you still writing the TS type code
“薪资倒挂”、“毕业生平替” 这些现象说明测试行业已经...
【纯音听力测试】基于MATLAB的纯音听力测试系统
How to use words to describe breaking change in Spartacus UI of SAP e-commerce cloud
Global and Chinese market of optical densitometers 2022-2028: Research Report on technology, participants, trends, market size and share
Take you ten days to easily complete the go micro service series (IX. link tracking)
MongoDB系列之学习笔记教程汇总
Take you ten days to easily complete the go micro service series (IX. link tracking)
【海浪建模1】海浪建模的理论分析和matlab仿真