![](https://img-blog.csdnimg.cn/20201014180756930.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
linux
yxnyxnyxnyxnyxn
男
展开
-
ubuntu 下向Bitbucket上传代码遇到的问题
Q:中止: 此处没有水银版本库(没有找到 .hg)!A:hg initQ:yu@MCW-xnYu:~/memcache/Bitbucket_repository$ hg clone ssh://hg@bitbucket.org/***/***The authenticity of host 'bitbucket.org (207.223.240.182)' can't原创 2012-09-14 09:32:52 · 1847 阅读 · 0 评论 -
sk_buff
http://www.cnblogs.com/iceocean/articles/1594160.htmlhttp://simohayha.iteye.com/blog/556168转载 2013-03-06 08:59:24 · 658 阅读 · 0 评论 -
Linux网络编程入门 (转载)
(一)Linux网络编程--网络知识介绍Linux网络编程--网络知识介绍客户端和服务端 网络程序和普通的程序有一个最大的区别是网络程序是由两个部分组成的--客户端和服务器端.客户端 在网络程序中,如果一个程序主动和外面的程序通信,那么我们把这个程序称为客户端程序。比如我们使用ftp程序从另外一 个地方获取文件的时候,是我转载 2013-02-22 09:26:22 · 403 阅读 · 0 评论 -
Linux中的工作队列
http://www.cnblogs.com/wwang/archive/2010/10/27/1862202.htmlLinux中的工作队列Linux 的并发可管理工作队列机制探讨转载 2013-03-13 15:18:37 · 544 阅读 · 0 评论 -
我的Linux书架
我的Linux书架转载 2013-03-13 17:47:43 · 580 阅读 · 0 评论 -
socket通信的几个关键步骤
转自点击打开链接面向连接的socket通信就像与对方打电话,首先需要通过电话建立一个连接,连接建立好之后,彼此才能双向通信。它有几个关键步骤服务器端通常以守护进程的方式实现:1: 创建守护进程2:获取或注册服务3:创建socket并绑定地址4:开始监听5:接收客户端连接请求6:进行数据传输客户端1:获取或注册服务2:创建socket3:发转载 2013-03-14 10:49:56 · 1200 阅读 · 2 评论 -
添加linux内核驱动
1.将内核驱动.ko放入/lib/modules/3.2.0-23-generic/kernel/drivers$ 目录下2.执行depmod -a来解决依赖(扫描driver下的驱动依赖关系),命令执行完成后,会自动生成modules.dep 和modules.alias。dep为依赖关系。3.更新当前kernel的initramfs(ram file system 取代了ram dis原创 2013-03-18 16:08:14 · 905 阅读 · 1 评论 -
timer
times: 用来统计进程及其子进程执行所消耗的CPU时间。常见用法是在不同地方调用两次这个函数,从而可以计算出进程或子进程在这两次调用之间消耗了多少CPU时间。time: 返回当前相对于 Epoch (在linux/unix里,这个时间一般指 1970年1月1日0点0分0秒)所经过的秒数。 常见用法是在不同地方调用两次这个函数,从而可以计算这两处调用之间系统时间过了多少秒。gett转载 2013-03-19 10:05:01 · 700 阅读 · 0 评论 -
内核程序,makefile分析(转自CSDN)
内核模块----linux内核的整体结构庞大,其中包含的组件也很多,如何使用需要的组件?1--把所有的组件都编译进内核文件,即zImage,bzImage,但这样会导致两个问题:一是生产的内核文件过大,二是,如果要添加或删除某个组件要重新编译整个内核。内核模块机制---提供一种机制能让内核文件(zImage,bzImage)本身并不包含某组件,而是在该组件需要被使用的时候,动态的添加到转载 2013-03-18 15:50:20 · 844 阅读 · 1 评论 -
kernel socket 实例
#include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include转载 2013-03-27 16:49:41 · 1314 阅读 · 1 评论 -
网络协议栈(1)从tcp的connect开始
一、基本结构内核中网络模块有眼花缭乱的数据结构,而且从名字和功能上看还没啥差别,所以对代码的理解还是有不小影响的。这里就是一个网络的开始阶段,然后尝试以这个为入口,看看系统中的网络的相关模块和功能实现。1、socket 根据 毛德操 《linux情景分析》下册863页有一个比较合理的解释:“socket和sock是同一个事物的两个方面。不妨说,socket结构是面向进程和转载 2013-03-27 17:18:03 · 927 阅读 · 0 评论 -
linux socket 阻塞 listen
首先在创建socket,,然后绑定什么就不说了,,,然后listen 监听前面创建的socket(你可以把listen当然是后台运行的监控一样)listen语句之后一般会有accept。这个是接受连接请求的。当监听到有连接请求来的时候,,,accept就会 重新创建一个socket(注意,该socket才是真正用来通信的)。。。。。。。到这里楼主可明白了。。。。前面自己创建的s转载 2013-03-27 13:30:50 · 4696 阅读 · 0 评论 -
VMware】虚拟机安装ubuntu的时候卡在vmwaretools :installing vmware tools please wait
出现下面这个****************************************************************** ****************************************************************** Vmware Easy Install PLEASE WAIT! VMware Tools is currently b转载 2013-05-14 14:34:01 · 5628 阅读 · 0 评论 -
ubuntu 64位 兼容 32位 库 到方法
sudo apt-get updatesudo apt-get install g++-multilibsudo apt-get install ia32-libs原创 2013-06-27 15:48:21 · 851 阅读 · 0 评论 -
每天一点linux
1 meld 比较文件sudo apt-get install meld2uname -asudo lsb_release -a3 在开发中遇到问题:某个进程已经死掉,不想reboot 想kill掉他使用 kill PID 未提示任何错误信息,但是进程还是在运行着解决办法:kill -9 PID成功杀掉进程4 ftop -i e原创 2012-10-29 09:31:21 · 681 阅读 · 0 评论 -
automake 出错处理
yu@MCW-xnYu:~/1temp/modify_makefile_for_bench/memcached-1.4.14-modify$ automakedoc/Makefile.am:12: `%'-style pattern rules are a GNU make extensiondoc/Makefile.am:15: `%'-style pattern rules are a G原创 2012-09-13 17:25:26 · 2768 阅读 · 0 评论 -
xx is not in the sudoers file 问题解决
我用的是redhat5.4,在一般用户下执行sudo命令提示llhtiger is not in the sudoers file. This incident will be reported.解决方法:一、$whereis sudoers -------找出文件所在的位置,默认都是/etc/sudoers 二、 #chmod u+w /etc/sudoers 以超转载 2012-08-09 16:31:47 · 579 阅读 · 0 评论 -
linux下利用命令查看显卡型号
lspci |grep VGA原创 2012-07-25 11:45:42 · 3662 阅读 · 0 评论 -
irqbalance
IRQBalance主要功能是可以合理的调配使用各个CPU核心,特别是对于目前主流多核心的CPU,简单的说就是能够把压力均匀的分配到各个CPU核心上,对提升性能有很大的帮助。启用 irqbalance 服务,既可以提升性能,又可以降低能耗。irqbalance 用于优化中断分配,它会自动收集系统数据以分析使用模式,并依据系统负载状况将工作状态置于 Performance mode 或 Powe转载 2013-02-22 10:08:25 · 2518 阅读 · 0 评论 -
epoll使用详解(精髓)
epoll - I/O event notification facility在linux的网络编程中,很长的时间都在使用select来做事件触发。在linux新的内核中,有了一种替换它的机制,就是epoll。相比于select,epoll最大的好处在于它不会随着监听fd数目的增长而降低效率。因为在内核中的select实现中,它是采用轮询来处理的,轮询的fd数目越多,自然耗时越多。并且转载 2013-03-04 10:07:50 · 413 阅读 · 0 评论 -
linux驱动开发的经典书籍
Linux驱动学习的最大困惑在于书籍的缺乏,市面上最常见的书为《linux_device_driver 3rd Edition》,这是一本很经典的书,无奈Linux的东东还是过于庞大,这本侧重于实战的书籍也只能停留在基本的接口介绍上,更深入的东东只能靠我们自己摸索了。但万事总有一个开头,没有对Linux驱动整体框架的把握是很难做一个优秀的驱动开发者的。除了这本Jonathan Corbet,Gre转载 2013-03-11 10:36:39 · 1192 阅读 · 1 评论 -
linux驱动问题讲解--dev_queue_xmit
1. 凡是调用dev_queue_xmit的对象都是一个网络设备。 解答:这个思路是错误的。因为dev_queue_xmit是有网络设备无关层调用的函数,调用对象调用该函数之后,函数会判断skb中的dev字段,根据这个字段指示的设备调用该设备的发送函数hard_start_xmit来对skb进行转发。 2. 凡是由dev_queue_xmit调用hard_start_xmit发转载 2013-03-11 11:19:34 · 2877 阅读 · 1 评论 -
linux内核学习笔记之——list_for_each_entry
http://bbs.chinaunix.net/thread-1981115-1-1.htmlhttp://blog.chinaunix.net/uid-14114479-id-2932024.html转载 2013-03-11 11:38:28 · 771 阅读 · 0 评论 -
skb_put(skb,len)和skb_push(skb,len)的区别
skb_put() 增长数据区的长度来为memcpy准备空间. 许多的网络操作需要加入一些桢头, 这可以使用skb_push来将数据区向后推, 为头留出空间. 请参见下图: ---------------------------------------- | head | data | | ----------------------------------------转载 2013-03-11 14:31:47 · 10699 阅读 · 0 评论 -
workqueue
7.6. Workqueues转自Workqueues are, superficially, similar totasklets; they allow kernel code to request that a function becalledat some future time. There are, however, some significant differen转载 2013-03-13 16:57:54 · 875 阅读 · 0 评论 -
socket编程之addrinfo结构体与getaddrinfo函数
点击打开链接有个小例子转载 2013-03-14 10:48:34 · 674 阅读 · 0 评论 -
pktgen 测试网速
配置参照:http://blog.csdn.net/chengfangang/article/details/8123572http://blog.csdn.net/chengfangang/article/details/8123678$ lsmod | grep pktgen$ modprobe pktgen$ ps aux | grep pktgen 然后,pkt原创 2013-02-19 09:20:46 · 3062 阅读 · 0 评论 -
/proc/irq/{number}/smp_affinity
http://hi.baidu.com/autoelectron/blog/item/145d6a2de1264c3f349bf778.html在多 CPU 的环境中,还有一个中断平衡的问题,比如,网卡中断会教给哪个 CPU 处理,这个参数控制哪些 CPU 可以绑定IRQ 中断。其中的 {number} 是对应设备的中断编号,可以用下面的命令找出:cat /proc/interrupt转载 2013-02-21 14:14:53 · 2750 阅读 · 0 评论 -
linux内核wait_queue深入分析
转自http://www.cnblogs.com/xmphoenix/archive/2011/11/20/2256419.htmlhttp://www.cnblogs.com/xmphoenix/archive/2011/11/20/2256417.htmlhttp://www.cnblogs.com/xmphoenix/archive/2011/11/20/2256422.html转载 2013-03-11 09:10:31 · 802 阅读 · 0 评论 -
CONFIG_NR_CPUS num_online_cpus
#define NR_CPUS CONFIG_NR_CPUSCONFIG_NR_CPUS是内核被配置支持的CPU个数,而实际设备的CPU个数是在系统启动过程当中去动态监测的。也就是说你配置系统支持32个CPU那么CONFIG_NR_CPUS就等于32,而num_online_cpus()则是当前设备激活可调度的CPU个数。如果我们配多少系统就认为有多少个CPU那转载 2013-03-11 09:31:13 · 6827 阅读 · 0 评论 -
linux协议栈skb操作函数
转自http://linux.chinaitlab.com/administer/842245.htmlstatic inline unsigned char *skb_pull_inline(struct sk_buff *skb , unsigned int len){ return unlikely(len > skb->len ) ? NULL : _转载 2013-03-11 14:46:24 · 2745 阅读 · 2 评论 -
sk_buff结构 及操作函数 pull等,讲解较准确
7.1. sk_buff结构在Linux内核的网络实现中,使用了一个缓存结构(struct sk_buff)来管理网络报文,这个缓存区也叫套接字缓存。sk_buff是内核网络子系统中最重要的一种数据结构,它贯穿网络报文收发的整个周期。该结构在内核源码的include/linux/skbuff.h文件中定义。我们有必要了解结构中每个字段的意义。一个套接字缓存由两部份组成:·转载 2013-03-11 15:19:46 · 1489 阅读 · 0 评论 -
linux 常用命令及技巧
linux 常用命令总结: 一。 通用命令: 1. date :print or set the system date and time 2. stty -a: 可以查看或者打印控制字符(Ctrl-C, Ctrl-D, Ctrl-Z等) 3. passwd: print or set the system date and time (用passwd -h查看) 4. log转载 2013-03-12 15:29:18 · 855 阅读 · 0 评论