随笔分类 -  Linux系统

Cgroup内核文档翻译(2)——Documentation/cgroup-v1/blkio-controller.txt
摘要:Block IO Controller 总览 cgroup子系统 "blkio" 实现了块io控制器。 在存储层次结构中的叶节点以及中间节点处似乎都需要各种类型的IO控制策略(如比例BW,最大BW)。 计划是将相同的基于cgroup的管理界面用于blkio控制器,并根据用户选项在后台切换IO策略。 阅读全文

posted @ 2021-01-03 17:46 Hello-World3 阅读(1148) 评论(0) 推荐(0)

Cgroup内核文档翻译(1)——Documentation/cgroup-v1/00-INDEX
摘要:00-INDEX - 这个文件blkio-controller.txt -块IO控制器的说明,实现和使用细节。cgroups.txt -控制组的定义,实现细节,示例和API。cpuacct.txt -CPU记帐控制器; 为任务组的任务记录CPU的使用率。cpusets.txt -对cpusets功能 阅读全文

posted @ 2021-01-03 17:36 Hello-World3 阅读(310) 评论(0) 推荐(0)

tracer ftrace笔记(1)——介绍与使用
摘要:1.Ftrace简介 Ftrace 的设计目标简单,本质上是一种静态代码插装技术,不需要支持某种编程接口让用户自定义 trace 行为。静态代码插装技术更加可靠,不会因为用户的不当使用而导致内核崩溃。 ftrace 的作用是帮助开发人员了解 Linux 内核的运行时行为,以便进行故障调试或性能分析。 阅读全文

posted @ 2020-11-15 20:38 Hello-World3 阅读(2354) 评论(0) 推荐(0)

Cgroup学习笔记1—初探
摘要:一、cgroup学习 1.什么是Cgroup Cgroups 是 control groups 的缩写,是 Linux 内核提供的一种可以限制、记录、隔离进程组(process groups)所使用的物理资源(如:cpu,memory,IO 等等)的机制。最初由 google 的工程师提出,后来被整 阅读全文

posted @ 2020-10-06 22:36 Hello-World3 阅读(2286) 评论(0) 推荐(0)

CPU调度
摘要:一、proc文件解释 1. /proc/sys/kernel/sched_short_sleep_ns 调度器在任务运行短暂峰值时总是试图避免唤醒idle cpu。如果任务平均峰值小于 sysctl_sched_short_burst 纳秒,并且睡眠平均时间大于 sysctl_sched_short 阅读全文

posted @ 2020-06-04 15:00 Hello-World3 阅读(1081) 评论(0) 推荐(0)

CPU调度——EAS调度器
摘要:Linux内核的CFS调度器和SMP负载均衡的缺点: 1.主要是为了服务器性能优先场景而考虑的,它们希望把任务都平均分配到系统所有可用的CPU上,最大限度地提高系统的吞吐量,这是主要为服务器设计的,没有考虑到系统的耗电问题,显然这不适合手机或者消费电子,对功耗敏感的设备中。2.主要针对SMP系统,对 阅读全文

posted @ 2020-04-12 16:26 Hello-World3 阅读(4293) 评论(0) 推荐(0)

内核工具 – Sparse 简介
摘要:一、Sparse 介绍 Sparse 诞生于 2004 年, 是由linux之父开发的, 目的就是提供一个静态检查代码的工具, 从而减少linux内核的隐患。内核代码中还有一个简略的关于 Sparse的说明文件: Documentation/sparse.txt。Sparse通过 gcc 的扩展属性 阅读全文

posted @ 2020-03-22 21:24 Hello-World3 阅读(1064) 评论(0) 推荐(0)

Linux时间子系统
摘要:1. 用户空间接口函数 参考:http://www.wowotech.net/timer_subsystem/timer_subsystem_userspace.html 阅读全文

posted @ 2020-02-13 19:03 Hello-World3 阅读(185) 评论(0) 推荐(0)

ppm图片显示
摘要:ppm是一种简单的图像格式,仅包含格式、图像宽高、bit数等信息和图像数据。 图像数据的保存格式可以用ASCII码,也可用二进制,下面只说说一种ppm格式中比较简单的一种:24位彩色、二进制保存的图像。文件头+rgb数据:P6\nwidth height\n255\nrgbrgb...其中P6表示p 阅读全文

posted @ 2019-06-04 11:14 Hello-World3 阅读(2326) 评论(0) 推荐(0)

epoll简介
摘要:1.epoll简介 epoll是I/O事件通知工具,与select/poll相比,epoll最大的好处在于它不会随着监听fd数目的增长而效率降低。epoll API既可以用作edge触发的接口,也可以用作level触发,并且对于监听大量的文件描述符同样有很好的性能。 因为内核中的select采用轮询 阅读全文

posted @ 2019-05-01 12:12 Hello-World3 阅读(1009) 评论(0) 推荐(0)

Linux进程调度与抢占
摘要:一、linux内核抢占介绍 1.抢占发生的必要条件 a.preempt_count抢占计数必须为0,不为0说明其它地方调用了禁止抢占的函数,比如spin_lock系列函数。b.中断必须是使能的状态,因为抢占动作要依赖中断。 preempt_schedule()具体源码实现参考如下: asmlinka 阅读全文

posted @ 2019-04-20 16:58 Hello-World3 阅读(3865) 评论(0) 推荐(1)

Linux内核Inotify机制学习笔记
摘要:一、Inotify简介: Inotify是一种文件变化通知机制,Linux内核从2.6.13开始引入。它是一个内核用于通知用户空间程序文件系统变化的机制。开源社区提出用户态需要内核提供一些机制,以便用户态能够及时地得知内核或底层硬件设备发生了什么,从而能够更好地管理设备,给用户提供更好的服务,如 h 阅读全文

posted @ 2019-02-20 11:07 Hello-World3 阅读(3322) 评论(0) 推荐(0)

系统配置命令
摘要:1. Linux文件句柄熟练设置方法 Linux系统默认的最大文件句柄数,系统默认是1024。用ulimit -n进行查看。当存在句柄泄露没有释放时,系统会报错:Too many open files。修改linux的最大文件句柄数限制的方法:1)ulimit -n 65535 在当前session 阅读全文

posted @ 2018-09-11 23:50 Hello-World3 阅读(487) 评论(0) 推荐(0)

udev学习笔记汇总
摘要:1.什么是udev udev--就是动态设备管理 udev 能够处理设备事件、管理设备文件的权限、在/dev目录中创建额外的符号链接、重命名网络接口,等等。 内核通常仅根据设备被发现的先后顺序给设备文件命名,因此很难在设备文件与物理硬件之间建立稳定的对应关系。而根据设备的物理属性或配置特征创建有意义 阅读全文

posted @ 2018-08-23 00:54 Hello-World3 阅读(3044) 评论(0) 推荐(0)

Linux常用命令
摘要:一、系统 1.uname -a 查看内核/操作系统/CPU信息2.head -n 1 /etc/issue 查看操作系统版本3.cat /proc/cpuinfo 查看CPU信息4.hostname 查看计算机名5.lspci -tv 以树状图列出所有PCI设备6.lsusb -tv 以树状图列出所 阅读全文

posted @ 2018-08-18 14:38 Hello-World3 阅读(449) 评论(0) 推荐(0)

udev笔记
摘要:1.udevd的主配置文件是/etc/udev/udev.conf 2.使用udev来监听U的hot-plug事件 1 #include <stdio.h> 2 #include <stdlib.h> 3 #include <string.h> 4 #include <ctype.h> 5 #inc 阅读全文

posted @ 2018-07-21 12:23 Hello-World3 阅读(255) 评论(0) 推荐(0)

systemd开机启动
摘要:SUMMARY = "rvc_os temporary version" HOMEPAGE = "http://www.desay-svautomotive.com" LICENSE = "MIT" LIC_FILES_CHKSUM = "file://${COMMON_LICENSE_DIR}/MIT;md5=0835ade698e0bcf8506ecda2f7b4f302" SECTIO... 阅读全文

posted @ 2018-06-19 20:09 Hello-World3 阅读(388) 评论(0) 推荐(0)

sysrq魔法键
摘要:一、简介 1. 简要介绍 注: 翻译自 /kernel/msm-4.4/Documentation/sysrq.txt Linux 魔法系统请求键技巧对 sysrq.c 的说明文档 * 什么是 SysRq 魔法键?~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~这是一个“神奇”的组合键, 阅读全文

posted @ 2018-06-07 00:51 Hello-World3 阅读(2772) 评论(0) 推荐(0)

Linux内存管理
摘要:1.伙伴算法(Buddy Algorithm) 1.1.简单描诉a)内存依据不同的order 分成了不同大小的块,order_i 的块大小为k*2^order_i,其实k为最小块,也就是order_0的块的大小。 b)分配内存的时候,去最小的能够满足你大小的order级别里找空闲块,比如order_ 阅读全文

posted @ 2018-05-10 01:13 Hello-World3 阅读(193) 评论(0) 推荐(0)

proc文件系统漫谈
摘要:1. /proc/buddyinfo:/proc/buddyinfo是linuxbuddy系统管理物理内存的debug信息。 在linux中使用buddy算法解决物理内存的外碎片问题,其把所有空闲的内存,以2的幂次方的形式,分成11个块链表,分别对应为1、2、4、8、16、32、64、128、256 阅读全文

posted @ 2018-05-07 01:10 Hello-World3 阅读(917) 评论(0) 推荐(0)

导航