linux设备驱动之工作队列学习(workqueue)

首先要注意本文的两个概念:(1)使用内核提供的工作队列, (2)自己创建工作队列 http://blog.csdn.net/fontlose/article/details/8286445   工作队列是一种将工作推后执行的形式,交由一个内核线程去执行在进程上下文执行,其不能访问用户空间。最重要特...

2016-05-26 14:33:30

阅读数 1269

评论数 1

C语言实现修改文本文件中特定行的实现代码(百度一天没找到,bing搜索十分钟就找到了)

好的,首先我先叙述下功能要求: 其实很简单,就是Shell中sed命令的C语言实现,实现定位到所需要的字段的那一行,之后修改成需要的内容。但是由于C语言是面向过程的语言,需要顺序执行的特点,所以,实现中遇到了很多麻烦,在这里博主将实现的过程描述如下,以便大家参考。 问题描述: 文本内容: ...

2016-05-03 20:07:10

阅读数 590

评论数 2

vim 配合各种插件工具的详细使用方法收集

一 查找 /字符串   查找文本中含有该字符串的字符 * 向下全字匹配查找光标所在字符串 #向上全字匹配查找光标所在字符串 dd 删除光标所在行 num+dd 删除num 行 j+num+回车 向下num 行 p 粘贴 u 恢复修改 ctrl+r 取消上一次操作 shift+g 跳转到最后一行...

2016-03-16 19:45:21

阅读数 488

评论数 0

linux下内存的统计和内存泄露类问题的定位

转自 http://blog.chinaunix.net/uid-9543173-id-3571436.html 这篇文章查找内存泄漏的方式比较准确、合理。在产品的开发中,通过对当前系统消耗内存总量的统计,可以对产品所需内存总量进行精确的评估,从而选择合适的内存芯片与大小,降低产品的成本。在遇到内...

2018-04-04 16:33:11

阅读数 310

评论数 0

折磨半个月终于找到php脚本所谓的“内存泄露”原因!

转自 https://blog.csdn.net/tao_627/article/details/9532497——跟我遇到的问题一样。最近项目改版做2期,1期是我写的,当然2期也由我主要负责,我借鉴了同事和网上的多种可取方法,在性能上做了较大提升。项目是一个后台网页爬取程序,使用php开发,基于...

2018-04-04 16:23:26

阅读数 283

评论数 0

Linux上查看造成IO高负载的进程

方法1:使用iotop工具这是一个python脚本工具,使用方法如:iotop -o方法2:使用工具dmesg使用dmesg之前,需要先开启内核的IO监控:echo 1 >/proc/sys/vm/block_dump或sysctl vm.block_dump=1然后可以使用...

2018-04-04 15:45:29

阅读数 430

评论数 0

/proc/sys/vm/优化

/proc/sys/vm/优化1)      /proc/sys/vm/block_dump该文件表示是否打开Block Debug模式,用于记录所有的读写及Dirty Block写回动作。 缺省设置:0,禁用Block Debug模式2)      /proc/sys/vm/dirty_back...

2018-04-04 15:39:14

阅读数 170

评论数 0

Linux下清理内存和Cache方法 /proc/sys/vm/drop_caches

问题: 频繁的文件访问会导致系统的Cache使用量大增查看内存使用情况: $ free -m total used free shared buffers cached Mem: 3955 3926 28 0 55 3459 -/+ buffers/cache: 411 3544 Swap: 57...

2018-04-04 15:37:03

阅读数 215

评论数 1

Linux手动释放缓存的方法

转自 https://www.cnblogs.com/focai/p/5829897.html Linux手动释放缓存的方法Linux释放内存的命令:syncecho 1 > /proc/sys/vm/drop_cachesdrop_caches的值可以是0-3之间的数字,代...

2018-04-04 15:36:05

阅读数 156

评论数 0

使用 Strace 和 GDB 调试工具的乐趣

使用 Strace 和 GDB 调试工具的乐趣使用 Strace 和 GDB 调试工具的乐趣在研究 UNIX 系统的过程中获取知识William Zimmerly2006 年 6 月 22 日发布WeiboGoogle+用电子邮件发送本页面 0UNIX 家族总是为用户提供了丰富的工具。UNIX 是...

2018-04-03 16:29:21

阅读数 80

评论数 0

linux 常见内存问题检测工具

原文地址:http://blog.csdn.net/jinzhuojun/article/details/46659155C/C++等底层语言在提供强大功能及性能的同时,其灵活的内存访问也带来了各种纠结的问题。如果crash的地方正是内存使用错误的地方,说明你人品好。如果crash的地方内存明显不...

2018-04-03 10:39:49

阅读数 627

评论数 0

linux下利用valgrind工具进行内存泄露检测和性能分析

valgrind通常用来成分析程序性能及程序中的内存泄露错误一 Valgrind工具集简绍Valgrind包含下列工具:    1、memcheck:检查程序中的内存问题,如泄漏、越界、非法指针等。    2、callgrind:检测程序代码的运行时间和调用过程,以及分析程序性能。    3、ca...

2018-04-02 17:23:17

阅读数 69

评论数 0

Linux查看实时网卡流量的几种方式

工作中,我们经常需要查看服务器的实时网卡流量。通常,我们会通过这几种方式查看Linux服务器的实时网卡流量。1. sar -n DEV 1 2sar命令包含在sysstat工具包中,提供系统的众多统计数据。其在不同的系统上命令有些差异,某些系统提供的sar支持基于网络接口的数据统计,也可以查看设备...

2018-03-30 14:55:40

阅读数 334

评论数 0

用ping ,mtr ,traceroute 进行网络丢包分析

转自 https://blog.csdn.net/hankerzero/article/details/67062617 一、丢包原因  网络丢包原因很多,但是一般都是链路问题:骨干拥塞链路某个交换机背板坏了交换机负载不均导致  此外,还有主机本身原因:系统CPU负载高,数据包到网卡后CPU不能及...

2018-03-26 12:13:10

阅读数 5448

评论数 1

UDP主要丢包原因及具体问题分析

一、主要丢包原因  1、接收端处理时间过长导致丢包:调用recv方法接收端收到数据后,处理数据花了一些时间,处理完后再次调用recv方法,在这二次调用间隔里,发过来的包可能丢失。对于这种情况可以修改接收端,将包接收后存入一个缓冲区,然后迅速返回继续recv.  2、发送的包巨大丢包:虽然send方...

2018-03-26 11:46:53

阅读数 176

评论数 0

ifconfig 下面的一些字段(errors, dropped, overruns)

ifconfig 下面的一些字段(errors, dropped, overruns)一台机器经常收到丢包的报警,先看看最底层的有没有问题:# ethtool  em2 | egrep 'Speed|Duplex'        Speed: 1000Mb/s        Duplex: Ful...

2018-03-22 10:52:43

阅读数 239

评论数 0

Linux网络编程-UDP接收数据丢包解决方案

转自 http://blog.csdn.net/baidu_35692628/article/details/76165337序言项目涉及基于UDP的socket通信,该部分的基本情况如下:发端程序:主函数开启4个发包线程,每个线程发送一定量的数据,通过限制发包速率限制发包流量。收端程序:主函数对...

2018-03-21 12:12:27

阅读数 254

评论数 0

使用 iPerf 测试并排查 UDP 丢包问题

转自 https://help.aliyun.com/knowledge_detail/58656.html 现象描述使用高速通道打通同一个地域(Region)下的两台 VPC 网络类型的 ECS 实例后,通过 iPerf 测试两台实例内网之间 UDP 丢包率,测试带宽达到 50 Mbps 以上时...

2018-03-21 11:42:20

阅读数 1593

评论数 1

Linux编程之UDP SOCKET全攻略

Linux编程之UDP SOCKET全攻略这篇文章将对linux下udp socket编程重要知识点进行总结,无论是开发人员应知应会的,还是说udp socket的一些偏僻知识点,本文都会讲到。尽可能做到,读了一篇文章之后,大家对udp socket有一个比较全面的认识。本文分为两个专题,第一个是...

2018-03-06 12:30:22

阅读数 106

评论数 0

TCP 和 UDP 在socket编程中的区别

一、TCP与UDP的区别 基于连接与无连接   对系统资源的要求(TCP较多,UDP少)   UDP程序结构较简单   流模式与数据报模式   TCP保证数据正确性,UDP可能丢包   TCP保证数据顺序,UDP不保证           部分满足以下几点要求时,应该采用UDP 面向数据报方式 网...

2018-03-05 12:04:55

阅读数 512

评论数 0

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