Welcome 微信登录
编程资源 图片资源库 蚂蚁家优选 PDF转换器

首页 / 操作系统 / Linux

Linux内核中sk_buff分析

Linux内核中sk_buff分析

在内核中sk_buff表示一个网络数据包,它是一个双向链表,而链表头就是sk_buff_head,在老的内核里面sk_buff会有一个list域直接指向sk_buff_head也就是链表头,现在在2.6.32里面这个域已经被删除了。而sk_buff的内存布局可以分作3个段,第一个就是sk_buff自身,第二个是linear-databuff,第三个是paged-databuff(也就是skb_shared_info)。ok.我们先来看sk_buff_hea...
Linux Shell编程基础

Linux Shell编程基础

1.介绍shell脚本简单的说shell就是一个包含若干行Shell或者Linux命令的文件。对于一次编写,多次使用的大量命令,就可以使用单独的文件保存下来,以便日后使用。通常shell脚本以.sh为后缀。在编写shell时,第一行一定要指明系统需要哪种shell解释用户的shell程序,如:#!/bin/sh,#!/bin/bash,#!/bin/csh,,#!/bin/tcsh和,#!/bin/ksh等。下面的run.sh则指明使用bash执行。#!b...
在Linux上实现 Windows 回收站功能的脚本

在Linux上实现 Windows 回收站功能的脚本

由于公司里的备份软件是每天晚上执行一次,如果员工当天不小心删除了文件,那只能回复到昨天的状态,如果是员工今天花了一天才写完的CODE,那就没法恢复 了,这样就员工一天的工作就白干了,当然你可能会说,这个员工活该,谁让他不小心了,但是当事情发生了之后,人家就会来找你解决了,虽然 你平常躲在角落里听歌、看电影网上看美女没人管,但是当真正有了问题后人家第一个想到的还是你, 这个时候你总不能跟人家你不会吧,这可是体现你技术水平的时候,呵呵,你是这些stupid 的...
Boost学习系列

Boost学习系列

在做长字符串匹配、搜索的问题时,我想大家最先想到的应该就是使用正则表达式,简单、高效。而Boost的Regex库则是不得不提的,很早之前我就接触过了Boost的这个模块,也对Boost了解了一点点,只是觉得它很NB,没做深究。昨天在网上无意中看到了Highscore的Boost C++库系列教程,很是感兴趣,如此现代又有前途的库,是程序员提升自身技巧和竞争力的有力武器,值得一学。因此我打算和他一样做个系列连载,争取能有自己的一点想法,再解答下每一章的练习题...
Linux内核同步方式剖析

Linux内核同步方式剖析

这篇讨论了 Linux 内核中可用的大量同步或锁定机制,这些机制为2.6.23版内核的许多可用方法提供了应用程序接口(API)。之前用的类似semTake/Give等函数都是基于这些机制的,当然,在有资料的情况下当然要深入学习一下。并发和锁定当存在并发特性时,必须使用同步方法。当在同一时间段出现两个或更多进程并且这些进程彼此交互(例如,共享相同的资源)时,就存在并发现象。在单处理器(uniprocessor,UP)主机上可能发生并发,在这种主机中多个线程共...
Android 手机重力感应实现简单介绍

Android 手机重力感应实现简单介绍

现在有很多游戏是通过摇晃手机实现的,比如赛车游戏 摇骰子游戏 迷宫游戏 等等 。 今天我用简单的代码为大家介绍一下Android 下重力感应的实现方式 下面是一个模拟器的屏幕 Y轴 以屏幕的左下方为原点 ,向上为正 向下为负数(刚好和编程时坐标是相反的 向下为正 向上为负数)。从-10到10。 X轴 以屏幕左下方为原点 向左为正 向右为负数取值范围从-10到10 。 Z轴 朝天就是正数 朝地就是负数数取值范围从-10到10 。由此可见重力感应的取值范围都是...
iPhone Objective-C 基础语法详解

iPhone Objective-C 基础语法详解

如果想从事iphone开发的话 Objective-C 这门语言就不得不学会 我们都知道C语言是没有面向对象的 而Object-C 则是ANSI C 的一个严格超集 它是具有面向对象的特性的 由于IPHONE 的成功 让这门语言现在非常的火热 今天笔者为大家介绍一下在xcode中 使用Objective-C 的基本语法。1.打开mac系统中强大的Xcode软件 单击Create a new Xcode project 创建一个Xcode项目。2. 选择“V...
Android 修改Bitmap 图片像素的信息 R G B 颜色值详解

Android 修改Bitmap 图片像素的信息 R G B 颜色值详解

要想修改Bitmap图片的 R G B信息 首先 得先拿到这张图片每个点的Color值 然后根据这个Color值 就可以算出对应的R G B 值 我们都知道在计算机语言中在内存中加载一张图片实际上是把图片的每个点的RGB信息写入内存 如果动态的修改了这些颜色信息 那绘制出来的图片就会改变。修改图片的颜色值其实在很多地方都有用处,我记得以前我做J2ME游戏开发的时候 因为手机本身内存比较低 不能同时在内存中加载过多的图片 比如 在打怪的时候 玩家肯定不希望每...
Linux下编译安装GCC

Linux下编译安装GCC

最近研究网络编程,最后发现还是unix/linux下相关资源比较多,研究起来方便,所以最近在安装相关开发环境,第一步当然是安装gcc。用rpm包安装,我想很多人会,没什么好说的。这里介绍从源代码编译安装,我的安装平台为Fedora11-x86_64。首先当然是下载相关源代码了。我下载了gmp-4.3.2.tar.bz2,mpfr-2.4.2.tar.bz2,gcc-4.4.3.tar.bz2这三个包。gcc大家都认识,gmp,mpfr这两个是gcc依赖的,...
<< 3211 3212 3213 3214 3215 3216 3217 3218 3219 3220 >>