Linux基础
文章平均质量分 53
李小狸与李小李
这个作者很懒,什么都没留下…
展开
-
Linux内存管理(1)- 奔跑吧linux内核视频学习笔记
1.内存管理方式直接使用物理地址:导致的问题:1)有地址交集的程序,无法同时运行2)程序在不同内存大小的机器上的可移植差3)各个程序之间无法隔离分段:将内存分为一段一段的,给每一个进程分配不同的线性地址空间, 使用相对地址访问分页:把同一个线性地址空间映射到不...原创 2021-07-25 22:06:01 · 321 阅读 · 0 评论 -
buildroot的使用
1. 是什么https://buildroot.org/是一种类似于busybox的文件系统制作工具, 但是buildroot 可以制作交叉编译工具链、根文件系统、Linux 内核映像和引导加载程序以及其他第三方软件。内置的工具Build tools:whichsedmake (version 3.81 or any later)binutilsbuild-essential (only for Debian based systems)gcc (version 4.8 or原创 2021-07-10 20:04:50 · 330 阅读 · 0 评论 -
Linux内核复习
1. 内核空间:内核处于系统态,拥有受保护的内存空间和访问硬件设备的所有权限,这种系统态和被保护起来的内存空间,统称为内核空间。用户空间:应用程序在用户空间执行,只能使用部分系统及特定的系统功能,不能直接访问硬件、内核划分给别人的内存范围。 2. Linux内核和传统Unix内核的比较单内核:把它从整体上作为一个单独的大过程来实现,同时也运行在一个单独的地址空间上。可直接调用函数,...转载 2018-08-12 11:10:17 · 306 阅读 · 0 评论 -
共享内存
1. 共享内存进程间通信效率最高的通信方式,为了在多个进程间交换信息,内核专门留出了一块内存区,可以由需要访问的进程将其映射到自己的私有地址空间,进程可以直接读写内存,而不需要任何数据的拷贝。共享内存创建在内核里,谁想用谁映射,映射到用户空间,在用户空间里进行操作。共享内存是用户空间和内核空间的0次拷贝,其他进程间通信是两次; 2. ipcs [-m|-s|-q]查看共享信...原创 2018-07-29 19:29:48 · 863 阅读 · 0 评论 -
SHT20的使用问题
1. SHT20 温湿度传感器的选择初步选择的是ds18b20 和 dh11 ,但由于ARTIK平台提供的延迟函数usleep量级在10ms左右,时序不正确,无法正常单总线驱动。所以选用i2c驱动的SHT20。问题分析1:usleep函数的延时。因为TIZEN 系统的进程切换粒度最小是10ms左右,涉及知识点:sleep函数的作用,Linux进程切换的粒度参考资料:https://...原创 2018-07-29 19:14:43 · 11443 阅读 · 0 评论 -
人体红外传感器和光敏传感器检测问题
平台:ARTIK 053(电源接口3.3V),人体红外传感器 5V ,光敏传感器 3.3V问题:人体红外传感器和光敏传感器检测值不准确, 人体红外传感器检测不到人物的移动 光敏传感器pwr指示灯正常,adc值不正常解决方案:由于人体红外传感器需要5V电源,所以传感器单独供电; 但需要单独供电的电源与ART...原创 2018-07-29 18:49:35 · 6717 阅读 · 0 评论 -
内核态与用户态
1. 基本概念内核从本质上看是一种软件——控制计算机的硬件资源,并提供上层应用程序运行的环境。用户态即上层应用程序的活动空间,应用程序的执行必须依托于内核提供的资源,包括CPU资源、存储资源、I/O资源等。为了使上层应用能够访问到这些资源,内核必须为上层应用提供访问的接口:即系统调用。用户态的应用程序可以通过三种方式来访问内核态的资源:1)系统调用 2)库函数 3)Shell...原创 2018-07-29 18:31:46 · 282 阅读 · 0 评论 -
设备树
1. 整体内容框架2. 概念和目的 设备树(Device Tree)是一种描述硬件的数据结构,在操作系统(OS)引阶段进行设备初始化的时候,数据结构中的硬件信息被检测并传递给操作系统。 dts文件(Device Tree Source, dts)是以ASCII文本形式描述设备树内容。 dtb文件是二进制格式,编译工具为: Device Tree Comp...原创 2018-07-29 11:16:07 · 523 阅读 · 0 评论 -
Linux中断
1. 通用中断处理程序执行过程:1)获取栈中保存的上下文数据;2)根据中断号找到描述该中断的结构体 struct irq_desc3)进行中断处理 1》 进入顶半部,hard irq 2》进入底半部,soft irq 3》恢复中断执行前的上下文 2. 中断上下部的原因:内核在处理中断请求时要求在单位时间内处理尽可能多...原创 2018-07-29 11:03:48 · 155 阅读 · 0 评论 -
ARM中断
1. ARM处理器的工作模式2. FIQ的响应速度比IRQ快的原因1)优先级高 2)FIQ的异常向量在末端,直接把异常程序写在后面,省去了跳转时间;3)私有寄存器个数多,许多保存cpu自动保存,不用压栈 3. 异常发生时CPU的处理步骤ARM处理器的动作(自动完成)1)拷贝 CPSR 到SPSR_<mode>2) 修改CPSR:a. 改变处...原创 2018-07-29 10:45:32 · 324 阅读 · 0 评论 -
linux系统调用
1. 用途系统调用是调用操作系统提供的一组函数,比如I/O读写磁盘等。 由于是操作系统提供的,故只能在内核态中执行。用户编写的程序平时运行在用户态,需要用系统调用时只能通过特定的方式来使用系统调用。 2. 概念 Linux内核中设置了一组用于实现各种系统功能的子程序,称为系统调用。用户可以通过系统调用命令在自己的应用程序中调用它们。解析:从某种角度来看,系统调用和普通的函数调...原创 2018-05-16 16:37:07 · 220 阅读 · 0 评论 -
ubuntu16.04 安装gcc 7.3.0
sudo add-apt-repository ppa:ubuntu-toolchain-r/testsudo apt-get update sudo apt-get install gcc-7网上找到的安装资料都是基于centos的,我尝试了一下,有错误,但没有具体分析原因。以上指令可以正确安装,下面是配置指令sudo update-alternatives --install /usr/b...原创 2018-05-16 15:39:53 · 44908 阅读 · 2 评论