
开源
文章平均质量分 60
alex_xhl
专注软件架构设计,性能分析和优化。
展开
-
curl 使用
1.编写源文件 curl.c#include #include #include int main(int argc, char *argv[]){ CURL *curl; //定义CURL类型的指针 CURLcode res; //定义CURLcode类型的变量 if(argc!=2) { print原创 2013-03-12 16:47:55 · 1047 阅读 · 0 评论 -
程序员面试、算法研究、编程艺术、红黑树4大系列集锦与总结
http://blog.youkuaiyun.com/v_july_v/article/details/6543438#comments程序员面试、算法研究、编程艺术、红黑树4大经典原创系列集锦与总结作者:July--结构之法算法之道blog之博主。时间:2010年10月-2011年6月。出处:http://blog.youkuaiyun.com/v_JULY_v 。声明:版权所有转载 2012-02-08 12:13:58 · 1320 阅读 · 0 评论 -
使用netlink机制在内核进程和用户空间进程通信
内核模块代码:netlink_drv.c#include #include #include #include #include #include #define NETLINK_TEST 21struct sock *nl_sk = NULL;EXPORT_SYMBOL_GPL(nl_sk);void nl_da原创 2012-02-05 10:23:22 · 1945 阅读 · 0 评论 -
自己动手编写优快云博客备份工具-blogspider源码下载(4) .
作者:gzshun. 原创作品,转载请标明出处!来源:http://blog.youkuaiyun.com/gzshun本博文需要声明几点:1.blogspider_v1.0源码已经更新,文件名为"blogspider_v2.0.tar.bz2",下载地址在下文。2.该备份工具用其他语言(比如Java,PHP)可能比较简单,但本人只会C/C++。3.blogspider_v1.0源码报转载 2012-02-04 16:49:58 · 1021 阅读 · 0 评论 -
U-Boot移植
BOOT LOADER(引导装载器),是用于初始化目标板硬件,给嵌入式操作系统提供板上硬件资源信息,并进一步装载、引导嵌入式操作系统运行的固件。在嵌入式系统开发过程中,很多情况都会涉及底层BOOT LOADER的移植问题,即使在有些已有BOOT LOADER的参考开发板上也存在这种可能。概括来说,如下情况会考虑进行BOOT LOADER的移植工作:A. 在自主设计的目标板上,用于引导嵌入式操作转载 2012-01-31 08:58:13 · 892 阅读 · 0 评论 -
uboot移植
目标平台NANO2410A目录CPUS3C2410 (ARM920T)Nand FLASHK9F1208 (64M*8bit)SRAMHY57V561620 (4banks*4M+16Bit)准备工作我的移植工作是基于1.3.2来进行的,因为在网上看到1.3.3之转载 2012-01-31 08:52:00 · 923 阅读 · 0 评论 -
uboot移植记录之一
uboot移植记录之一uboot整个移植过程我们可以分为三个阶段:一,移植可以从Nor flash启动的uboot这个阶段是移植一个最简单的uboot,可以烧在Nor flash内运行.二,移植支持Nand flash驱动的uboot加入Nand flash驱动的支持,可以在uboot命令行下操作Nand flash.但还未能从Nand flash启动,只能在Nor fla转载 2012-01-31 08:50:37 · 781 阅读 · 0 评论 -
linux内核编译之旅
内核,是一个操作系统的核心。它负责管理系统的进程、内存、设备驱动程序、文件和网络系统,决定着系统的性能和稳定性。 Linux的一个重要的特点就是其源代码的公开性,所有的内核源程序都可以在/usr/src/linux下找内核,是一个操作系统的核心。它负责管理系统的进程、内存、设备驱动程序、文件和网络系统,决定着系统的性能和稳定性。 Linux的一个重要的特点就是其源代码的转载 2010-06-11 19:34:00 · 645 阅读 · 0 评论 -
linux sd卡驱动分析,基于mini2440,sdio mmc sd卡驱动编写
参考资料: 1.SD Memory Card Specifications / Part 1. Physical Layer Specification; Version 1.0 2.LDD3 CHAPTER-16 BLOCK DEVICE3. http://www.sdcard.org引言:前几天把mini2440 的sd 卡驱动程序移植到了Android 平转载 2010-06-25 19:22:00 · 203 阅读 · 0 评论 -
busybox & gstreamer
busybox : http://www.busybox.net/ gstreamer: http://gstreamer.freedesktop.org/原创 2010-09-07 10:35:00 · 616 阅读 · 0 评论 -
使用 Git 管理源代码
Git 是 Linux Torvalds 为了帮助管理 Linux® 内核开发而开发的一个开放源码的版本控制软件。我们可以自己下载这个软件用于对内核的 hack 分析,或者用来管理自己的软件开发项目。本文将向您展示如何使用 Git 工具开始分析 Linux 。在现代软件开发项目中,要成为一个有效的软件开发人员,我们必须能够与其他项目贡献者并行进行开发。源代码管理(SCM)系统不是什么新思想。为转载 2010-09-26 17:46:00 · 661 阅读 · 0 评论 -
ffmpeg开发指南
FFmpeg是一个集录制、转换、音/视频编码解码功能为一体的完整的开源解决方案。FFmpeg的开发是基于Linux操作系统,但是可以在大多数操作系统中编译和使用。FFmpeg支持MPEG、DivX、MPEG4、AC3、DV、FLV等40多种编码,AVI、MPEG、OGG、Matroska、ASF等90多种解码.TCPMP, VLC, MPlayer等开源播放器都用到了FFmpeg。 一、转载 2012-03-06 18:14:04 · 2307 阅读 · 4 评论 -
Linux 3.6:更优秀的虚拟化平台
摘要:这一版本的更新包括Btrfs新特性;挂起到磁盘和内存;TCP "Fast Open"模式;"TCP small queues"来解决bufferbloat问题;NFS/NBD安全交换;更好的ext4配额支持;支持PCIe D3cold电源状态;支持VFIO,并可以保证guest driver对裸主机设备的安全访问。Linux 3.6的重大改进包括:1. Btr转载 2012-10-14 13:55:34 · 930 阅读 · 0 评论 -
kscope使用感受
今天在网上搞到了一个Linux版的source Insight,它叫kscope,我用的是1.6的版本1、安装。kscope是一个基于GPL的自由软件。你可以从http://kscope.sourceforge.net/上下载到它,或者利用Linux自带的包管理器自动下载并安装。1,AS4 linux-2.6.92. 官方网站下载 http://kscope.sourcefor转载 2012-10-31 10:44:00 · 1475 阅读 · 0 评论 -
c语言 curl
c语言 curl前两天看到有人求客户端socket 发HTTP包的代码,受flw版主启发找了一些perl的资料,不过对perl 还是不太熟悉。也没有深入的研究。无意中发现了libcurl.so 这个库。去google上搜索发现它是处理客户端发送HTTP请求的库 以及可以处理web服务器回送回来的包。研究了两天将研究的成果,共享出来给大家一起研究。参考:http://cu转载 2013-03-12 10:47:36 · 3534 阅读 · 0 评论 -
Unofficial AirPlay Protocol
Unofficial AirPlay Protocol Specification1. Introduction2. Service Discovery2.1. AirTunes service2.2. AirPlay Service3. Photos3.1. HTTP requests3.2. Events3.3. Photo Caching3.4. Slidesho转载 2012-11-16 23:37:44 · 8330 阅读 · 1 评论 -
Ubuntu install XBMC
step1: sudo apt-getinstall subversionstep2: svn co https://xbmc.svn.sourceforge.net/svnroot/xbmc/trunk/ xbmcstep3: sudo apt-get install subversion make g++ gcc gawk pmount libtool nasm yasm automa原创 2012-11-16 23:35:00 · 979 阅读 · 0 评论 -
Ubuntu install Kscope
step1: sudo apt-get install kdelibsstep2: sudo apt-get install xorg-devstep3: sudo apt-get install kdelibs4-dev kdelibs4c2astep4: download kscope-1.6.2 from http://download.chinaunix.net/downloa原创 2012-11-09 23:25:45 · 661 阅读 · 0 评论 -
cross compile ethtool
http://www.kernel.org/pub/software/network/ethtool/ethtool - utility for controlling network drivers and hardwareIntroductionethtool is the standard Linux utility for controlling network dri原创 2012-11-06 14:48:16 · 2464 阅读 · 0 评论 -
cross compile tcpdump tool
cross compile tcpdump:step 1: down libpcap-1.3.0.tar.gz form http://www.tcpdump.org/step 2: down tcpdump-4.3.0.tar.gz form http://www.tcpdump.org/step 3: tar xvf libpcap-1.3.0.tar.gzstep 4: ta原创 2012-11-06 10:52:22 · 1285 阅读 · 0 评论 -
ubuntu 9.10 compile and install FFMPEG
step 1: download FFMPEG source code: http://download.youkuaiyun.com/detail/a6243620/3970118#comment : FFmpeg-FFmpeg-n0.8-4913-g175cc37.zip file.step 2: unzip FFmpeg-FFmpeg-n0.8-4913-g175cc37.zip: unz原创 2012-11-04 23:20:44 · 641 阅读 · 0 评论 -
Linux ffmpeg的安装编译过程
Linux ffmpeg的安装编译过程 1、下载ffmpeg。 在网上搜索一下,或者到官方网站下载 2、解压 tar命令解压 3、配置 ./configure --enable-shared --prefix=/usr/local/ffmpeg 其中:--enable-shared 是允许其编译转载 2012-10-31 17:04:09 · 691 阅读 · 0 评论 -
Ffmpeg编译详解
Ffmpeg编译详解针对ffmpeg无论是win还是linux下编译都会出现很多问题,因此这里设立编译选项,力图构建一个标准化编译过程,使初学者快速消除对应用ffmpeg的恐惧感,至于其中遇到的问题,则放到下面一个选项FAQ里目录[隐藏]1Linux1.1查看configure帮助1.2选项列表1.3开发人员注意选项1.3.1转载 2012-10-31 17:05:28 · 1164 阅读 · 0 评论 -
[转帖] linux 基本操作……(全部为个人的学习资料)
http://www.iweihai.cn/club/user/script/forum/view.asp?article_id=9248797&board_id=26&Page=1原创 2010-10-26 10:18:00 · 537 阅读 · 0 评论 -
vim 插件列表
http://www.vim.org/scripts/script_search_results.php原创 2010-10-28 10:37:00 · 501 阅读 · 0 评论 -
alsa驱动源码分析(一)
ALSA应用程序(播放器)调用ALSA lib库中的函数snd_pcm_writei()向声卡硬件(或虚拟的)写入交错(write后的i代表interleaved)数据。在ALSA lib中最后会调到snd_pcm_hw_writen(snd_pcm_t *pcm, void **bufs, snd_pcm_uframes_t size)函数,这个函数调用通用的ioctl接口:err = io转载 2010-12-01 14:49:00 · 4131 阅读 · 0 评论 -
跟我一起写 Makefile
概述 —— 什么是makefile?或许很多Winodws的程序员都不知道这个东西,因为那些Windows的IDE都为你做了这个工作,但我觉得要作一个好的和professional的程序员,makefile还是要懂。这就好像现在有这么多的HTML的编辑器,但如果你想成为一个专业人士,你还是要了解HTML的标识的含义。特别在Unix下的软件编译,你就不能不自己写makefile了,会不会转载 2010-06-11 09:17:00 · 807 阅读 · 0 评论 -
buildroot & git
buildroot : http://buildroot.uclibc.org/about.html git : http://www.kernel.org/pub/software/scm/git/docs/user-manual.html原创 2010-09-07 10:13:00 · 762 阅读 · 0 评论 -
git 简要教程 (适用于 1.5.1 或更新版本)
这个教程将介绍如何将一个新的项目导入到 git 之中,如何修改项目并如何将这些变更与其他开发者分享。如果你更感兴趣如何用 git 取出一个项目,比如,测试软件的最新版本,你可能更应该看看The Git User’s Manual的前两章。首先,记住你可以用 man 来获取 git 的文档,比如 “git diff” 的文档可以用如下命令察看:$ man git-diff在做任何改动转载 2010-09-08 19:44:00 · 1637 阅读 · 0 评论 -
自己使用过的git command
1.从库拿 code : git clone repos@xxx.xxx.x.xxx: server_code_lib local_code_lib2.git diff 看 working tree 与 index file 区别 : git diff 看 index file 与 git repository区别 : git diff --cached原创 2010-10-12 19:35:00 · 919 阅读 · 0 评论 -
Download new linux kernel, make
1.Download new linux kernel: url : http://www.kernel.org2. tar: tar -jxvf linux-x-y-z.tar.bz23.make make menuconfig ---> .config 4. if you happen to error as follow: make原创 2010-10-24 15:50:00 · 755 阅读 · 0 评论 -
mdev的使用方法和原理
mdev是busybox自带的一个简化版的udev,适合于嵌入式的应用埸合。其具有使用简单的特点。它的作用,就是在系统启动和热插拔 或动态加载驱动程序时,自动产生驱动程序所需的节点文件。在以busybox为基础构建嵌入式linux的根文件系统时,使用它是最优 的选择。 mdev使用mdev的使用在busybox中的mdev.txt文档已经将得很详细了。但作为例子,我简单讲讲我的使用转载 2010-11-17 20:57:00 · 691 阅读 · 0 评论 -
ALSA PCM发声程序
#include "alsa/asoundlib.h"//11KHz支持,发声时间加长,音速变慢#define SAMPLE_RATE 48000//#define SAMPLE_RATE 11000//的确是两个声道交叉响#define CHANNELS 1//#define CHANNELS 2//如果latency过小,会使得s转载 2010-11-30 22:10:00 · 6668 阅读 · 0 评论 -
SPDIF
SPDIF是SONY、PHILIPS数字音频接口的简称。就传输方式而言,SPDIF分为输出(SPDIF OUT)和输入(SPDIF IN)两种。目前大多数的声卡芯片都能够支持SPDIF OUT,但我们需要注意,并不是每一种产品都会提供数码接口。而支持SPDIF IN的声卡芯片则相对少一些,如:EMU10K1、YMF-744和FM801-AU、CMI8738等。SPDIF IN在声卡上的典型应用就是转载 2010-11-30 22:17:00 · 3325 阅读 · 0 评论 -
A/52B: Digital Audio Compression (AC-3) (E-AC-3) Standard, Rev. B
http://www.atsc.org/cms/index.php/standards/published-standards/48-atsc-a52-standard This document specifies coded representation of audio information and the decoding process, as well as infor原创 2010-11-30 22:34:00 · 1309 阅读 · 0 评论 -
IEC 61937 Spec
IEC 61937-3:2003-05 First editionPart 3: Non-linear PCM bitstreams according to AC-3 format原创 2010-11-30 22:47:00 · 2014 阅读 · 1 评论 -
linux内核学习
常常有人问:我想学习内核,需要什么基础吗?Linus Torvalds本人是这样回答的:你必须使用过Linux。 这个……还是有点太泛了吧,我想下面几个基础可能还是需要的,尽管不一定必需: 1, 关于操作系统理论的最初级的知识。不需要通读并理解《操作系统概念》《现代操作系统》等巨著,但总要知道分时(time-shared)和实时(real-time)的区别是什么,进程是个什么东西,CPU和系统总转载 2010-12-13 22:17:00 · 890 阅读 · 0 评论 -
linux内核符号表
内核符号:存在内核空间函数或变量所对应的符号 内核符号表可以分为“私有”和“公共”。平常所说的内核符号表指的是“公共内核符号表”。 我们知道,驱动存在于内核空间,它的每一个函数每一个变量都会有对应的符号,这部分符号也可以称作内核符号,它们不导出的话就只能为自身所用,导出后就可以成为公用,对于导出的那部分的内核符号就是我们常说的内核符号表。in转载 2010-12-13 21:56:00 · 1864 阅读 · 0 评论 -
推動 gstreamer plugin 的第三步
前面兩篇我們完成了兩件很重要的事情,第一是建立了編寫插件程式的環境和測試方法,第二是替插件裝好了進出水閥 (sinkpad 和 srcpad) 的格式和屬性,格式不合的資料進不來,也出不去。接下來我們要開始放水,讓資料流進這個插件。gstreamer 在處理資料的流動有兩種主要的模式,一個是「推」,一個是「拉」。兩種模式需要實作的 routine 不同,在對資料的操作 (manipulatio转载 2010-12-07 21:51:00 · 1509 阅读 · 1 评论 -
ALSA声音编程介绍
ALSA声音编程介绍 这里了解一下各个参数的含义以及一些基本概念。 样本长度(sample):样本是记录音频数据最基本的单位,常见的有8位和16位。 通道数(channel):该参数为1表示单声道,2则是立体声。 桢(frame):桢记录了一个声音单元,其长度为样本长度与通道数的乘积。 采样率(rate):每秒钟采样次数,该次数是针对桢而言。 周转载 2010-12-03 15:20:00 · 1762 阅读 · 0 评论