linux 编程
smilestone322
通过软考: 系统架构设计师和信息系统项目管理师考试
工业相机和DVR开发,熟悉windows驱动开发,camera sdk开发,3D摄像头sdk开发。
联系方式:smilestone322@sina.com
展开
-
浅谈linux下多进程编程及其同步机制
<br />浅谈linux下多进程编程及其同步机制原创 2011-02-27 22:05:00 · 1480 阅读 · 0 评论 -
linux,windows如何避免竞争,同步控制的几点经验
linux,windows如何避免竞争,同步控制的几点经验1) 避免使用全局变量,全局变量,指针传递必须特别小心,尤其是在内核;2)采用信号量,读写信号量,自旋锁,读写自旋锁对共享的数据进行保护,信号量当最大值为1时就相当于互斥量了;3)如果要获取多个锁,必须以顺序的方式获得,比原创 2011-07-12 10:57:03 · 1060 阅读 · 0 评论 -
gcc 常用参数介绍
转自:http://blog.chinaunix.net/uid-13539494-id-1991081.html 1) 常见编译参数介绍gcc可以说是个伟大的编译器集合。支持c, c++, object-c, java, fortran, pascal, ada等一大堆语言,同时支持几乎所有32位以上的cpu和部分16位、8位cpu。因此几乎所有开源操作系统、商业un转载 2015-01-05 09:44:18 · 1931 阅读 · 0 评论 -
SVN “不能打开文件“.svn/lock” 权限不够”精解
转自:http://sfzhang88.blog.51cto.com/4995876/892544 今天在内网重新部署了一台新SVN服务器,同事在客户端svn up更新的时候报错“svn: Can't open file '.svn/lock': Permission denied”,下面具体分析为什么会出现这样的问题及其如何解决? 1.首先checkout一份文件到本地,转载 2015-02-11 11:08:09 · 4935 阅读 · 1 评论 -
浅谈linux多线程编程和windows多线程编程的异同
很早以前就先写写linux下多线程编程和windows下的多线程编程了,但是每当写时又不知道从哪个地方写起,怎样把自己知道的东西都写出来,下面我就谈谈linux多线程及线程同步,并将它和windows的多线程进行比较,看看他们之间有什么相同点和不同的地方。 其实最开始我是搞windows下编程的,包括windows编程,windows 驱动,包括usb驱动,ndis驱动,pci驱动,1394驱动等等,同时也一条龙服务,做windows下的应用程序开发,后面慢慢的我又对linux开发产生比较深的兴趣和原创 2011-02-12 21:17:00 · 2889 阅读 · 2 评论 -
linux 域名转ip的方法
使用gethostbyname函数,然后通过inet_ntoa得到ip地址; #include #include #include #include #include #include int main(int argc, char *argv[]){ struct hostent *h; char hostname[40]; printf(原创 2015-06-04 11:24:35 · 1915 阅读 · 0 评论 -
在Fedora 9 内核2.6.25.14上编译2.6.32.26 成功
<br />今天在fedora 9,内核版本为2.6.25.14 编译新的内核2.6.32.26 ,编译成功! 总结如下:<br />1. 下载www.kernel.org linux 2.6.32.26 到/usr/src 目录,然后解压,我下载的是tar.gz的版本,解压命令为#tar -zxvf linux-2.6.32.26.tar.gz <br /> <br />2. cd /usr/src<br /> <br />3. 建立一个链接 ln -s linux-2.6.32.26 linux<br原创 2011-03-16 14:01:00 · 1391 阅读 · 2 评论 -
将Vim改造为强大的IDE—Vim集成Ctags/Taglist/Cscope/Winmanager/NERDTree/OmniCppComplete(有图有真相)
转自:http://blog.csdn.net/bokee/article/details/6633193工欲善其事,必先利其器。一个强大的开发环境可以大大提高工作效率。好吧,我知道这是废话。。。不过,我想一定有很多跟我一样打算进入Linux平台开发的新手,一开始都为找不到一个像Windows下的VS那样可以一键安装并且功能几乎完美无缺的开发工具而郁闷不已,甚至打算收回刚刚迈出的脚步。转载 2017-09-29 16:20:59 · 308 阅读 · 2 评论 -
ubuntu 16.04 LTS 内核源码下载编译流程
1)下载首先看一下自己的内核版本 apt-cache search linux-source下载内核代码:sudo apt-get install linux-source-4.10.02)解压:/usr/source/ 目录下解压 tar -jxv -f linux-source-4.10.0.tar.bz2 3)编译make menuconfig原创 2017-10-06 10:06:33 · 7778 阅读 · 2 评论 -
linux 一些常见问题
linux gtk 常见问题(1)如何查看gtk+的版本[root@localhost tmp]# pkg-config --modversion gtk+-2.0Fedora 9版本:2.12.9Fedor 14下: 2.22.0(2)如何查看pkg-config的版本[root@localhost tmp]# pkg-config --version0.23(3)查看是否...原创 2011-03-15 14:02:00 · 5684 阅读 · 1 评论 -
Linux(Ubuntu版本)下配置samba实现文件夹共享的方法:
转自:http://blog.csdn.net/chencangui/article/details/48445831虽然有很多这方面的资料,但是都存在很大的缺陷,要不就是太过于简单,要不就是存在错误。自己亲身实践过的,遇到的问题也附有相应的解决方法。首先需要先安装samba:A、 sudo apt-get install sambasudo apt-get install smbclientB、...转载 2017-09-15 19:44:45 · 417 阅读 · 0 评论 -
linux 2.6.35 下usb框架程序源码
<br />/*<br /> * USB Skeleton driver - 2.2<br /> *<br /> * Copyright (C) 2001-2004 Greg Kroah-Hartman (greg@kroah.com)<br /> *<br /> * This program is free software; you can redistribute it and/or<br /> * modify it under the terms of the原创 2011-05-03 16:32:00 · 1540 阅读 · 1 评论 -
一个经典的makefile文件,该文件为PF_RING的makefile
<br />#<br /># (C) 2009-10 - Luca Deri <deri@ntop.org><br />#<br /><br />obj-m := pf_ring.o<br /><br />SVNDEF := -DSVN_REV="/"$(shell svnversion -n .)/""<br /><br />ifeq (,$(BUILD_KERNEL))<br />BUILD_KERNEL=$(shell uname -r)<br />endif<br /><原创 2011-04-19 21:27:00 · 1736 阅读 · 0 评论 -
浅谈windows下消息机制和linux的异同
<br />浅谈windows下消息机制和linux的异同<br />原创 2011-02-28 11:28:00 · 2778 阅读 · 12 评论 -
linux 下gtk+和glade编程及glade2和glade3之间的差异
<br /> 原创:转载请注明出处.<br /> <br />本文主要讲解linux下采用多线程和libpcap编程,使用glade2和glade3制作界面的不同点:<br /> <br />Glade2 和glade3的主要区别是glade2会自动生成makefile等文件,而glade3只是用来生成界面,然后采用libglade和GtkBuilder调用.glade文件,这样的好处是代码和界面完全分开,避免代码的改变又需要重新编译。<br />Glade2 在设计完界面后点击保存,然后联编,就可以生成代原创 2011-03-04 17:19:00 · 1653 阅读 · 2 评论 -
linux 下安装anjuta程序运行崩溃,只能用glade做界面
<br /> 前不久在fedora 9下采用yum 命令安装了anjuta,但是第一次是就崩溃了,现象如下:anjuta 修改glade文件后不能启动了,anjuta就再也启动不了,loaden那个glade文件,一直停在那里了。郁闷,只能用glade做界面了,采用gdk编程了,在glade的callbacks里面添加代码,修改了makefile。同时在windows下面写代码,然后通过Xmanage Enterprise 3 ,将文件转移到linux下面,这样做也挺好的,windows下面有好原创 2011-02-20 21:38:00 · 1410 阅读 · 2 评论 -
fedora14下通过VirtualBox安装win xp,并实现文件共享
<br />步骤如下:<br />(1)首先到官网下载VirtualBox(http://www.virtualbox.org/ ),然后安装virtualBox;<br />(2)yum install dkms<br />(3)在控制终端运行VirtualBox,弹出界面点击新建,根据图形界面依次操作,直到完成,中间,我选的内存为1G,硬盘为30G,动态扩展;<br />(4) 点击开始,安装win xp,安装完后关闭xp;<br />(5)设置文件共享,步骤如下:<br /> <br />5.1安装V原创 2011-03-20 10:44:00 · 1380 阅读 · 0 评论 -
libpcap丢包原理分析及Fedora 9 内核2.6.25.14下安装PF-RING的详细过程
<br /> 看到网上有人讲解fedora 9下安装PF-RING的过程,都是几年前的了,比较老了,我安装PF-RING就是为了使用libpcap库,libpcap的原理是通过socket将数据包从网卡 捕获数据包,然后在提交给应用程序,和winpcap很大的区别是,libpcap采用的是2个缓冲区,内核类似的一个乒乓操作,详细见我的庖丁解牛--winpcap源码彻底解密一系列的文章。winpcap采用的是环状缓冲区,在winpcap下当网卡有数据到来时,npf.sys就会将数据拷贝到内核缓冲区中原创 2011-03-25 13:48:00 · 4264 阅读 · 8 评论 -
linux fedora 14(内核2.6.35.6) PF_RING+libpcap 极速捕获千兆网数据包,不丢包
<br /> 前面讲到了libpcap 捕获数据包,尤其在千兆网的条件下,大量的丢包,网上搜索好久,大概都是PF_PACKET +MMAP,NAPI,PF_RING之类的方法,我对PF_RING+libpcap进行实验,发现千兆网条件下,捕获数据包的性能很好,几乎不丢包,实验环境搭配流程如下:<br /> 1)下载PF_RING:svn co https://svn.ntop.org/svn/ntop/trunk/PF_RING/ <br /> 2)下载完后,在PF_RING/k原创 2011-03-27 13:22:00 · 4416 阅读 · 10 评论 -
linux fedora14 安装后,重启不能进入图形界面,显示黑屏的解决办法
<br />fedora14安装后,不能显示图形界面,跟同事ly折腾了好久,解决办法如下:<br />(1) 首先进入系统后,进入文本输入模式,a +init3;<br />(2) 终端进入系统后,root用户运行Xorg –configure :1,生成xorg.conf.new文件;<br />(3) 运行Xorg –config xorg.conf.new –retro进行测试;ctr+alt+backspace退出测试;<br />(4) Cp xor原创 2011-04-01 09:25:00 · 4774 阅读 · 0 评论 -
linux fedora14下采用代理时,yum命令失效问题解决方法
<br />错误:<br />Error: Cannot retrieve repository metadata (repomd.xml) for repository: updates-released. Please verify its path and try again。<br /> <br />(1)修改/etc/yum.repos.d下面的fedora.repo如下:<br /> <br />[fedora]<br />name=Fedora $releasever - $basea原创 2011-04-08 16:12:00 · 1570 阅读 · 1 评论 -
linux 下内核2.6.35 skb_copy_bits 函数和map.c文件
<br />int skb_copy_bits(const struct sk_buff *skb, int offset, void *to, int len)<br />{<br /> int start = skb_headlen(skb);<br /> struct sk_buff *frag_iter;<br /> int i, copy;<br /><br /> if (offset > (int)skb->len - len)<br /> goto fau原创 2011-04-07 18:15:00 · 1576 阅读 · 0 评论 -
linux字符设备驱动程序源文件
<br />/*<br /> * linux/fs/char_dev.c<br /> *<br /> * Copyright (C) 1991, 1992 Linus Torvalds<br /> */<br /><br />#include <linux/init.h><br />#include <linux/fs.h><br />#include <linux/kdev_t.h><br />#include <linux/slab.h><br />#include <linux/string.h原创 2011-04-13 14:18:00 · 1274 阅读 · 1 评论 -
ubuntu14 x64编译x86程序
1. 确认打开多构架dpkg --print-foreign-architectures 出现结果:i386,则为已经打开.2.如果没有打开多构架支持功能,执行以下3条命令sudo dpkg --add-architecture i386 sudo apt-get update sudo apt-get dist-upgrade 依次执行上面的命令3.sud...原创 2019-08-13 17:29:28 · 827 阅读 · 0 评论