- 博客(13)
- 问答 (1)
- 收藏
- 关注
原创 ubuntu kernel make
ubuntu make new kerrnel and error solve: libcrypto.so.1.1: cannot open shared object file: No such file or directory:
2023-03-21 15:56:43 105
原创 grub-install:错误解决
grub-install: warning: this GPT partition label contains no BIOS Boot Partition; embedding won’t be possible Ubuntu使用BIOS启动时, GPT分区表下安装grub2报错 的解决办法在制作minios时,格式化系统盘,然后安装grub的时候,出现如下错误root@z:/mnt...
2020-04-03 14:46:19 9807
原创 对linux分页机制的一些认识
x86 CPU中段机制(Segmentation)可以将程序的代码(Code)、数据(Data)、栈(Stack)分开,这样多个程序(或进程)就可以在同一个CPU上运行,而相互不会干扰。页机制(Paging)用来实现传统的以页面为需求的虚拟内存系统,只有程序需要时,才真正给进程分配物理内存。页机制也可以用来隔离多个任务。一、硬件中的分页我们还是从实现linux分页机制的软硬件...
2019-12-11 10:46:40 405
原创 对逻辑地址中”段“的一些认识
引言看了很多资料,发现自己还是没有弄明白几个地址概念,比如逻辑地址、线性地址、物理地址,还有一些,比如逻辑地址中的段,还有什么基地址等的概念,通过这篇文详细查找资料,然后记下来学习一下。主要的内容还是来自于《深入理解Linux内核》,有不明白的再上网查找资料。在深入的过程中,主线还是依据这本书上的内容来,下面资料可供参考:https://blog.csdn.net/killcpp/articl...
2019-12-09 15:12:06 1603
转载 Linux内存管理初探
转载自:https://cloud.tencent.com/developer/article/1005671导语linux 内存是后台开发人员,需要深入了解的计算机资源。合理的使用内存,有助于提升机器的性能和稳定性。本文主要介绍 linux 内存组织结构和页面布局,内存碎片产生原因和优化算法,linux 内核几种内存管理的方法,内存使用场景以及内存使用的那些坑。从内存的原理和...
2019-12-08 14:46:11 562
原创 HDAC driver 两种搬运数据方式---MMIO、IO R&W
在linux 上使用工具播放音频文件时,有两种音频数据拷贝的方式:一、Memory mapped I/O 就是把磁盘上的file映射到内存上,当我们从内存上fetch byte时,对应的file就被读取。同样的,当我们在内存上存储字节的时候,对应的file就被写入。这就让我们不需通过read和write系统调用而去操作I/O。 mmap内存映射建立一段可以被多个进程读写的...
2019-11-19 11:31:16 309
原创 Device power management --- Runtime_PM
详细的关于Runtime_PM相关的电源管理的介绍,在https://blog.csdn.net/longwang155069/article/details/53080667 这里面有详细的介绍。首先要弄清楚一些状态信息一、device power states主要有以下几种,常用的是D0(正常状态)、D3(休眠状态)D0=0,//FullOn:ful...
2019-10-31 19:24:11 844
原创 PCM ALSA的一些基础知识
PCM1、设备命名API 库使用逻辑设备名而不是设备文件。设备名字可以是真实的硬件名字也可以是插件名字。硬件名字使用 hw:i,j 这样的格式。其中i是卡号,j是这块声卡上的设备号。第一个声音设备是hw:0,0.这 别名默认引用第一块声音设备并且在本文示例中一直会被用到。插件使用另外的唯一名字。比如plughw:, 表示一个插件,这个插件不提供对硬件设备的访问,而是提供像采样率转换这样...
2019-10-10 11:33:41 1705
原创 X86下 IO端口和IO内存、外设IO访问(以pci设备为例)
首先要搞清楚一些基本概念:1、IO端口、IO内存每个外设都是通过读写其寄存器来控制的。外设寄存器也称为I/O端口,通常包括:控制寄存器、状态寄存器和数据寄存器三大类。根据访问外设寄存器的不同方式,可以把CPU分成两大类。一类CPU(如M68K,Power PC等)把这些寄存器看作内存的一部分,寄存器参与内存统一编址,访问寄存器就通过访问一般的内存指令进行,所以,这种CPU没有专门用于设备...
2019-09-19 19:03:53 6714
原创 Linux驱动中mmap内存映射详解
mmap在linux哪里?什么是mmap?上图说了,mmap是操作这些设备的一种方法,所谓操作设备,比如IO端口(点亮一个LED)、LCD控制器、磁盘控制器,实际上就是往设备的物理地址读写数据。但是,由于应用程序不能直接操作设备硬件地址,所以操作系统提供了这样的一种机制——内存映射,把设备地址映射到进程虚拟地址,mmap就是实现内存映射的接口。操作设备还有很多方法,如ioctl...
2019-07-01 17:14:15 1761
原创 用最通俗易懂的方式理解进程和线程--图文漫画形式
进程(process)和线程(thread)是操作系统的基本概念,但是它们比较抽象,不容易掌握。最近,我读到一篇文章,发现有一个很好的类比,可以把它们解释地清晰易懂。1.计算机的核心是CPU,它承担了所有的计算任务。它就像一座工厂,时刻在运行。2.假定工厂的电力有限,一次只能供给一个车间使用。也就是说,一个车间开工的时候,其他车间都必须停工。背后的含义就是,单个CPU一...
2019-05-30 10:40:00 464
空空如也
Audio driver转型
2022-03-07
TA创建的收藏夹 TA关注的收藏夹
TA关注的人