- 博客(26)
- 收藏
- 关注
转载 【zz】Linux内存管理原理
https://www.cnblogs.com/zhaoyl/p/3695517.htmlLinux内存管理原理本文以32位机器为准,串讲一些内存管理的知识点。 1. 虚拟地址、物理地址、逻辑地址、线性地址 虚拟地址又叫线性地址。linux没有采用分段机制,所以逻辑地址和虚拟地址(线性地址)(在用户态,内核态逻辑地址专指下文说的线性偏移前的地址)是一个概念。物理地址自不必提。内...
2018-11-06 19:26:06
177
转载 [ZZ]PCI-E配置MSI中断流程解析
在调试PCI-E的MSI中断前,需要先保证将传统中断调通,然后再调试这个。MSI中断究其本质,就是一个存储器读写事件。将MSI Address设置为内存中的某个地址(可以为64位),产生MSI中断时,中断源会在MSI Address所在的地址写入MSI Data。也就是说,如果有四条MSI中断线,就会依次写入Data、Data+1、Data+2、Data+3在内存中,依次来区分中断源设备。设备...
2018-10-13 14:05:58
1106
1
转载 [zz]Memory Barriers(内存屏障): a Hardware View for Software Hackers 阅读笔记
Memory Barriers: a Hardware View for Software Hackers(原文地址:http://www.puppetmastertrading.com/images/hwViewForSwHackers.pdf)是一篇介绍CPU缓存及内存屏障的原理,通过阅读这篇文章使我对CPU缓存工作原理和内存屏障有了新的认识,也让我对java内存模型有了新的理解,一下是本人关...
2018-08-07 20:27:17
1464
转载 [zz]ARM64的启动过程之(二):创建启动阶段的页表
ARM64的启动过程之(二):创建启动阶段的页表作者:linuxer 发布于:2015-10-13 18:18 分类:ARMv8A Arch一、前言本文主要描述了ARM64启动过程中,如何建立初始化阶段页表的过程。我们知道,从bootloader到kernel的时候,MMU是off的(顺带的负作用是无法打开data cache),为了提高性能,加快初始化速度,我们必须某个阶段(越早越好...
2018-08-07 09:27:57
455
转载 【z】内存屏障(Memory Barriers)
内存屏障(Memory Barriers)2013/12/19 · IT技术 · 1 评论 · 内存, 内存屏障原文出处: Martin Thompson 译文出处:coderbee 在这篇文章里,我将讨论并发编程里最基础的技术——内存屏障(Memory Barriers),就是它让一个处理器内的内存状态对其他处理器可见。CPU 使用了很多技术...
2018-08-06 20:30:13
3530
转载 【zz】程序运行时的内存空间分布
程序运行时的内存空间分布2016年12月15日 19:21:57阅读数:1009本文转载自http://blog.csdn.net/ljianhui/article/details/21666327 谢谢原文作者的辛勤付出。 我们在写程序时,既有程序的逻辑代码,也有在程序中定义的变量等数据,那么当我们的程序进行时,我们的代码和数据究竟是存放在哪里的呢?下面就来总结一下。...
2018-08-06 20:12:29
215
转载 [zz]【Java并发学习二】多线程编程的硬件基础知识总结
【Java并发学习二】多线程编程的硬件基础知识总结 MrDTree 关注2018.04.22 13:45* 字数 3674 阅读 37评论 0喜欢 0这篇简单梳理下与多线程相关的硬件知识,了解它们能够让我们更清晰的了解多线程工作的本质,以及关键字synchronized、volatile、final的实现原理。我们会发现,每一个硬件部件的引入都是为了解决某些问题,然后它们又诞生了新...
2018-08-06 17:10:40
174
转载 [zz]【Java并发学习三】内存屏障与synchronized、volatile的原理
【Java并发学习三】内存屏障与synchronized、volatile的原理 MrDTree 关注2018.04.22 23:25* 字数 1976 阅读 215评论 0喜欢 0注:本文内容会有部分涉及上节的硬件知识:【Java并发学习二】多线程编程的硬件基础知识总结1. 内存屏障上一节讲过,为了解决写缓冲器和无效化队列带来的有序性和可见性问题,我们引入了内存屏障。内存...
2018-08-06 17:05:35
201
转载 并发关键字volatile(重排序和内存屏障)【zz】
https://www.jianshu.com/p/ef8de88b1343 并发关键字volatile(重排序和内存屏障) 激情的狼王 关注2018.02.07 12:36* 字数 1790 阅读 235评论 0喜欢 10Java 语言中的volatile变量可以被看作是一种 “程度较轻的 synchronized”;与 synchronized 块相比,volatile 变...
2018-08-06 16:15:51
324
转载 ARMv8-AArch64简述[zz]
ARMv8是ARM版本升级以来最大的一次改变,ARMv8的架构继承以往ARMv7与之前处理器技术的基础,除了现有的16/32bit的Thumb2指令支持外,也向前兼容现有的A32(ARM 32bit)指令集,扩充了基于64bit的AArch64架构,除了新增A64(ARM 64bit)指令集外,也扩充了现有的A32(ARM 32bit)和T32(Thumb2 32bit)指令集;ARMv8...
2018-07-28 15:03:28
772
转载 [转帖] ARM64 linux kernel的虚拟地址空间简介
http://thinkiii.blogspot.com/2014/02/arm64-linux-kernel-virtual-address-space.html有助于大家理解目前的64位Android地址空间布局------------------------------------------------------------Saturday, February 15, 201...
2018-07-28 13:56:50
2811
转载 Linux arm64的虚拟内存布局[转]
页表转换arm64在硬件体系结构上支持4级的每页大小为4K的页表转换,也支持3级的页大小64KB的页表转换。在linux arm64中,如果页的大小为4KB,使用3级页表转换或者4级页表转换,用户空间和内核空间都支持有39bit(512GB)或者48bit(256TB)大小的虚拟地址空间。如果页的大小为64KB,就只有2级页表转换,支持42bit(4TB)大小的虚拟地址,用户空间和内核空间也...
2018-07-28 13:51:54
831
转载 ARMv8(aarch64)页表建立过程详细分析【转】
目录文件修订记录...2目录...31ARMv8存储管理...41.1Aarch64 Linux中的内存布局... 41.2AArch64的虚拟地址格式...41.2.14K页时的虚拟地址...41.2.264K页时的虚拟地址...52head.S页表建立过程分析...62.1页表建立函数__create_page_tables.62.1.1pgtbl ...
2018-07-28 13:47:31
1560
转载 ld选项和lds文件【转】
ld选项和lds文件==================================================================================0. Contents1. 概论2. 基本概念3. 脚本格式4. 简单例子5. 简单脚本命令6. 对符号的赋值7. SECTIONS命令8. MEMORY命令9. PHDRS命令10. VER...
2018-07-28 11:49:17
1724
转载 u-boot.lds文件诠释[转]
u-boot.lds文件诠释 https://blog.csdn.net/qiaoliang328/article/details/5891913网上大部分u-boot.lds文件的分析大部分都是千遍一律,例如下面就是本人在网上找到的关于u-boot.lds的资料。OUTPUT_FORMAT("elf32-littlearm", "elf32-littlearm", "elf32-li...
2018-07-28 11:45:02
153
转载 Linux 内核测试和调试(5)
Linux 内核测试和调试(5)编译自:http://www.linuxjournal.com/content/linux-kernel-testing-and-debugging?page=0,4原创:LCTT https://linux.cn/article-3683-1.html译者: bazz2本文地址:https://linux.cn/article-3683-1
2017-12-01 17:33:06
592
转载 Linux Kernel Testing and Debugging
Linux Kernel Testing and DebuggingJul 10, 2014 By Shuah Khan indebuggingkernelLinux PM Sub-system Testing in Simulation ModeThe Linux PM sub-system provides five P
2017-12-01 17:05:21
234
转载 Linux电源管理(5)_Hibernate和Sleep功能介绍
Linux电源管理(5)_Hibernate和Sleep功能介绍作者:wowo 发布于:2014-6-10 16:11 分类:电源管理子系统1. 前言Hibernate和Sleep两个功能是Linux Generic PM的核心功能,它们的目的是类似的:暂停使用——>保存上下文——>关闭系统以节电········>恢复系统——>恢复上下文——>继续使用。本文以内核向用户
2017-12-01 17:02:48
266
转载 no_console_suspend
通过uboot 可以传递给kernel一个no_console_suspend的参数。这个参数的意思是,在suspend的时候console 不进行suspend,否则console suspend之后其他driver在suspend 过程中印的log都显示不出来,因此加这个参数一般用于调试suspend 和 resume。我们看看是如何kernel是如何是实现的.http:/
2017-12-01 16:59:10
1251
转载 如何在Android 或Linux 下,做Suspend /Resume 的Debug
如何在Android 或Linux 下,做Suspend /Resume 的Debug转载 2014年04月29日 19:20:003862Question:如何在Linux 或 Android下得到足夠的information,來做Power Management的fine tune呢?Answer:在Linux或Andro
2017-12-01 16:56:43
331
转载 Debugging hibernation and suspend
Debugging hibernation and suspend (C) 2007 Rafael J. Wysocki , GPL1. Testing hibernation (aka suspend to disk or STD)To check if hibernation works, you can try to hibernate in the "reboot" mode:
2017-12-01 16:01:24
494
转载 Testing suspend and resume support in device drivers
Testing suspend and resume support in device drivers (C) 2007 Rafael J. Wysocki , GPL1. Preparing the test systemUnfortunately, to effectively test the support for the system-wide suspend andres
2017-12-01 15:47:02
123
转载 Power Management Interface for System Sleep
Power Management Interface for System SleepCopyright (c) 2016 Intel Corp., Rafael J. Wysocki 电源管理子系统为用户空间提供统一的sysfs接口The power management subsystem provides userspace with a unified sysfs interfac
2017-12-01 15:33:10
316
转载 System Power Management Sleep States
https://www.kernel.org/doc/Documentation/power/states.txtSystem Power Management Sleep States(C) 2014 Intel Corp., Rafael J. Wysocki The kernel supports up to four system sleep states generi
2017-12-01 15:13:10
324
转载 Linux驱动学习--初识PCI驱动(二)
写在前面的话:上一篇,我们将PCI驱动的基础知识进行一个简单的梳理。当然,这是不够的,因此,接下来,我们进行深一步的探究。 我们从下面几个方面来讲述:一,初始化设备模块 当Linux内核启动并完成对所有PCI设备进行扫描、登录和分配资源等初始化操作的同时,会建立起系统中所有PCI设备的拓扑结构,此后当PCI驱动程序需要对设备进行初始化时,一般都会调用如下的代码
2017-11-16 11:17:30
189
原创 https://www.kernel.org/doc/Documentation/PCI/
https://www.kernel.org/doc/Documentation/PCI/kernel 的doc地址,还比较新。
2017-11-01 11:06:19
778
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人