每天进步一点点,月薪三千不是梦

每天进步一点点,月薪三千不是梦

排序:
默认
按更新时间
按访问量

抢占关闭总结

本文是阅读宋宝华老师是谁关闭了Linux抢占,而抢占又关闭了谁?的这篇文章后的总结1、抢占发生的必要条件    a、preempt_count抢占计数必须为0,不为0说明其它地方调用了禁止抢占的函数,比如spin_lock    b、中断必须是使能的状态,因为抢占动作要依赖中断具体源码实现参考如下...

2018-06-13 17:38:06

阅读数:54

评论数:0

内存管理五

本文是任督二脉之内存管理课程第五节课的总结说明,由于水平有限,可能无法对宋老师所讲完全理解通透,如有错误,请及时指证。          第五节课的内容多且杂,其实完全可以合并到前四节课中。但考虑前四篇总结已经完成,章节插入不方便,所以还是多写一篇。         本文分成两部分来论述1、 DM...

2018-06-04 16:24:32

阅读数:92

评论数:0

内存管理四

本文是任督二脉之内存管理课程第四节课的总结说明,由于水平有限,可能无法对宋老师所讲完全理解通透,如有错误,请及时指证。          发了前几天的总结后,有群里的朋友@jeff表示,我这样大篇幅的文字描述,估计没几个人有耐心看下去,想想也是,内存管理本身就比较复杂,枯燥,我听了宋老师的课,了解...

2018-06-04 16:23:24

阅读数:185

评论数:0

内存管理三

本文是任督二脉之内存管理课程第三节课的总结说明,由于水平有限,可能无法对宋老师所讲完全理解通透,如有错误,请及时指证。          本文从7个方面进行说明:1、  VMA到底是个什么鬼?2、  Linux提供的VMA查看文件接口和命令接口说明。3、  Page fault的产生原因分析以及与...

2018-06-04 16:22:24

阅读数:211

评论数:0

内存管理二

任督二脉之内存管理第二节课总结本文是任督二脉之内存管理课程第二节课的总结说明,由于水平有限,可能无法对宋老师所讲完全理解通透,如有错误,请及时指证。          本文从4个方面进行说明:1、  Slab的基本原理以及它的文件接口说明2、  kmalloc、vmalloc、malloc比较3、...

2018-06-04 16:21:59

阅读数:258

评论数:0

内存管理一

任督二脉之内存管理第一节课总结         本文是任督二脉之内存管理课程第一节课的总结说明,由于水平有限,可能无法对宋老师所讲完全理解通透,如有错误,请及时指证。          本文从5个方面进行说明:1、  物理/虚拟/总线地址概念说明。2、  MMU是什么,为什么,怎么做。3、  内存...

2018-06-04 16:21:00

阅读数:364

评论数:0

互相独立进程间共享内存互斥访问的解决办法

前提:两个进程互相独立,访问同一片共享内存存在问题:1、如何避免两个进程同时访问共享内存(一旦两个进程同时访问一个临界区,后果是程序崩溃)2、如果使用互斥锁,如何让两个进程拿到同一个互斥锁解决办法:针对问题1,可以使用信号,信号量,互斥锁来进行同步,但是信号和信号量需要两个进程都实现一套自己的逻辑...

2018-04-26 17:14:27

阅读数:47

评论数:0

oops和panic的区别

本文转载自Linux公众号宋宝华: Kernel Oops和Panic是一回事吗?Oops英文单词的中文含义是“哎呀”,表示“惊叹”;Panic英文单词的中文含义是“惊慌”。所以panic的程度显然是高于oops的,因为惊叹不一定会惊慌,而惊慌最容易失措,内核panic后,就死机了,俗称内核崩溃。...

2018-02-23 14:42:52

阅读数:87

评论数:0

基于表格形式的select,poll,epoll对比-IO多路复用函数的应用场景

IO多路复用监听函数select,poll,epoll,它们的实现原理网络上大量资料,此处不做赘述 本文通过表格的形式,对比select,poll,epoll在各方面的表现,从而引出它们实际的应用场景 话不多说,看表格   select poll epoll ...

2018-01-29 16:12:33

阅读数:81

评论数:0

linux系统为用户提供的文件接口

linux系统为用户提供了大量的文件接口来改变操作系统的参数,由于接口文件繁多,实际用到的时候往往记不住文件所在的路径和文件名,此文仅用于个人备忘和查找。 通常我们也可以使用sysctl命令查看,修改响应的内核参数。 sysctl -a 可查看系统全部的内核参数,和他们的值。 附上内核参数列...

2018-01-29 13:22:23

阅读数:139

评论数:0

linux内存地址的三个概念区分-物理地址、虚拟地址、总线地址

在linux内核书籍中,介绍内存管理的部分,频繁出现三个概念,物理地址、虚拟地址、总线地址 他们区别如下: 物理地址:MMU看到的内存的地址 虚拟地址:cpu,程序员操作的地址 总线地址:设备看到的地址 比如一块内存,物理地址是0,在 设备端看起来是0x80000...

2018-01-25 16:20:12

阅读数:91

评论数:0

Ftrace的一个完整案例

本文来自linuxer公众号 Ftrace即function trace,顾名思义,他的trace过程是以函数为单位的,标识出每一级函数占用的cpu时间。比如我们进入一个系统调用,出来的时间过长,我们想知道时间花哪里去了,利用Ftrace就可以追踪到一级级的时间分布。Ftrace用于内核态代...

2018-01-24 17:01:04

阅读数:89

评论数:0

宋宝华的网络负载均衡脚本说明

脚本如下: echo 2 > /proc/irq/40/smp_affinity                                                 echo 3 > /sys/class/net/eth0/queues/rx-0/rps...

2018-01-24 14:38:12

阅读数:42

评论数:0

iperf命令数据分析

iperf命令通常用来测网络带宽,命令的相关参数网络上的资料很详细,此处不做赘述,本文旨在说明iperf产生的数据。 我们假设服务器端IP: 192.168.0.136   客户端IP: 192.168.0.112 服务器端运行命令:iperf -s 客户端运行命令:iperf -c 192...

2018-01-24 14:25:57

阅读数:729

评论数:0

Docker新手入门-最初2小时

在阅读了宋宝华的Docker最初两小时,总结归纳如下: 概念说明: 对于没接触过Docker的同学,先建立一个概念:Docker是一种通过为某一个进程建立一个独立的互相隔绝的运行环境的机制。目的是使一个进程与其它的进程做到资源上的完全隔离,由此产生了一个很大的优势,高可移植性,一次配置,到...

2018-01-23 15:44:06

阅读数:61

评论数:0

QtQml应用程序的性能考虑与建议

本文翻译自Qt官网文档: http://doc.qt.io/qt-5/qtquick-performance.html QtQml应用程序的性能考虑与建议 1、时间考虑 作为一名程序开发者,应该努力使渲染引擎的刷新率维持在60fps,也就是说在每帧之间大约有16ms,这段时...

2017-12-13 15:31:56

阅读数:73

评论数:0

Perf -- Linux下的系统性能调优工具,第 1 部分

Perf -- Linux下的系统性能调优工具,第 1 部分 应用程序调优的使用和示例 刘 明 2011 年 5 月 26 日发布 Perf 简介 Perf 是用来进行软件性能分析的工具。 通过它,应用程序可以...

2017-11-15 15:52:43

阅读数:123

评论数:0

IPU到底是个什么鬼?

在 i.MX6 应用处理器中,有一个很重要的单元:IPU(Image Processing Unit)图像处理单元。图像处理单元的目标是提供从图像输入(摄像头传感器 / 电视信号输入等)到显示设备(LCD显示屏 / TV输出 / 外部图像处理单元等)端到端的数据流信号处理的全面支持。 IPU库(I...

2017-11-02 10:43:46

阅读数:635

评论数:0

linux下竞态分析和避免

这部分内容是linux设备驱动学习总结-keyPoints中的子集,独立出来方便查找。 1、linux产生竞态主要三种情况:中断、抢占、多处理器。 一个cpu运行在进程上下文或者中断上下文(且这段上下文是临界区域)的时候可能 被中断打断,且这个中断要访问临界资源; 被其它进程抢...

2017-10-27 17:00:19

阅读数:111

评论数:0

两篇Qt多线程使用心得,写的不错

Qt使用多线程的一些心得——1.继承QThread的多线程使用方法 Qt使用多线程的一些心得——2.继承QObject的多线程使用方法

2017-10-26 14:57:59

阅读数:123

评论数:0

提示
确定要删除当前文章?
取消 删除
关闭
关闭