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

软件开发小程序制作系统集成与运维空间租用硬件开发视频监控技术咨询与支持——联系电话:0311-88999002/88999003

首页 / 操作系统 / Linux

Linux系统下创建锁文件

Linux系统下创建锁文件

一、概述Linux提供了多种特性来实现文件锁定。其中最简单的方法就是以原子操作的方式创建锁文件,所谓“原子操作”就是在创建锁文件时,系统将不允许任何其它的事情发生。这就给程序提供了一种确保它所创建的文件是唯一性的方式,且该文件不可能被其它程序在同一时刻创建。二、方法锁文件仅仅是充当一个指示器的角色,程序间需要通过相互协作来使用它们。锁文件只是建议性锁,与此对立的是强制性锁。为创建一个用作指示器的文件,我们使用带O_CREATE和O_EXCL标志的open系...
“中立人士”对嵌入式Linux的相关评论

“中立人士”对嵌入式Linux的相关评论

上周,Green Hills Software(GHS)就嵌入式Linux撰写了一则措辞严厉的观点,下面就是它的开场白:“Embedded Linux是迄今为止最夸大其词的嵌入式操作系统。它吹嘘为廉价、高质量、高生产率、可靠、应用范围广以及得到很好的支持,可是,恰好相反...” Green Hills接着恭贺Linux供应商承认这种操作系统是“一片混沌”(要谢谢风河!)且是“无底洞!”(也感谢你,MontaVista!)然而,赞扬是短暂的,据GHS透露...
学习Linux内核能用来干什么

学习Linux内核能用来干什么

学习Linux内核能干什么?我个人的理解是:1、了解Linux内核的具体工作细节,对我们系统编程来说是非常有用处的,比如你了解了某个系统调用在内核中是怎么实现,用起来就会更加得心应手。2、学习Linux内核的工作原理和具体实现细节,本身就是一种挑战,内核是个非常庞大的工程,无论是从理论还是实现细节理解起来就是很有难度的,如果我们能坚持的把内核中某个子模块完全的理解后,一定会提升自己的自信心,无论以后我们是做内核编程,还是系统编程。3、Linux内核开发工程...
CentOS 5.1编译内核2.6.25.2以及相关后续工作

CentOS 5.1编译内核2.6.25.2以及相关后续工作

目的: 默认kernel没有把NTFS编译进去,同时也想尝试下编译内核。系统: CentOS 5.1内核: 2.6.25.2开始几次尝试,是看了鸟哥基础篇中的编译内核。make bzImage modules modules_install 做的,然后发现可能鸟哥书里的内核太老了点,关于devfs新内核没那个选项了。在make menuconfig中我把ipv6去掉了。后面带来的问题不少。make rpm 到rpm -ivhmkinitrd 重启,成功后续...
Linux操作系统下的鼠标操作

Linux操作系统下的鼠标操作

本不想写这些玩意儿,其实我并不喜欢它们,只不过没办法,谁叫我是靠这些家伙糊口的呢!若干年前,我自认为很喜欢Linux操作系统;若干年后,我发现我当初是何等的天真。恩,一分钱,一分货!我坚信这一点!所以我现在坚持用MS的Vista,正版的哦!言归正传,前段时间因为工作,需要在Linux下操作鼠标,当然啦,肯定不会是在X-window下操作,那样的话也就不会有这篇文章的存在了。我要做的就是在Console下面得到鼠标的坐标。百度、谷歌都用上了,可就是找不到相关...
Linux kernel CS8900网卡驱动的移植

Linux kernel CS8900网卡驱动的移植

网络传输是当今世界的一大主流,因此网卡驱动也自然而然在各类驱动中占领了一席之地。下面我们就简短地来说一下CS8900网卡驱动移植到Linux kernel的一些问题。首先要说的是函数入口。一般来说,我们在编译kernel时,设备驱动的选择有两种方式:一种是直接编译到kernel里,另一种是以模块方式挂接。CS8900网卡驱动如果以模块方式挂接,函数init_module就是入口;如果是直接编译到kernel里,那么函数cs89x0_probe才是入口。在此...
KDE性能提升建议

KDE性能提升建议

本文档罗列了些帮你提升你的KDE性能的建议。没有很多,其中许多可能已过时。当然,KDE的开发者们对不同的优化产生影响。不要试图对你的KDE做过多的优化,尤其是你缺乏经验;或者你已经优化得KDE不再正常运行了(如,不要从startkde脚本里删除你不知道是做什么用的那些语句)。大多数的建议有一些简要的关于这样优质的好处和坏处的说明,这样你可以考虑是否值得做。减少运行程序和数量在控制台运行“ps ux",会看到你做为用户运行的所有进程的列表。如果这些是在KDE...
几种容易被人忘记的Linux下的编程语言

几种容易被人忘记的Linux下的编程语言

我们逐渐的被各大商业公司的技术所掩盖。事实并非如此,还有几种被人忽略的Linux下的语言,他们实实在在的服务。1.C现在满大街都在造谣C语言无用论,特别是在大学,认为C语言已经不可行了。实质,现在大量的嵌入式,工业控制,低层软件开发完全依赖C语言。并且C语言也证实了自己是最强大的跨平台语言,他可以在各种硬件平台中工作。而且做C语言开发的人现在都是技术尖子呢。不要忘记了Linux下最重要的语言。2.ShellShell的强大远没有被我们所熟悉,实际上Linu...
SDL在win32平台与Linux平台下的一些差别

SDL在win32平台与Linux平台下的一些差别

最近在学习Linux,主要考虑到跨平台开发。我一直都在思考关于中文输入的问题,在win32下解决起来那么麻烦,难道SDL的作者会不解决吗──如果是bug的话。事实证明,在Linux平台下,我们自己把GB2312往Unicode转换的工作就多余了。当前Linux内部用的就是UTF-8(我的系统是Debian 4.0),SDL的TTF函数完全可以正常工作。不过,在Linux下面也会有些问题,现在发现的有这些,大家有发现的继续帮我补充哈。1、在Linux下,TT...
Linux系统驱动程序的设计

Linux系统驱动程序的设计

驱动程序框架:Linux把外部设备看成一种特殊文件,称为"设备文件".驱动程序可看做内核与外部设备接口,驱动向硬件屏蔽细节,使内核可以像操作普通文件一样操作外部设备.驱动程序是函数的集合,他们提供的功能是能从设备上读/写,就象操作文件一样.每个设备都具有文件特征,能使用open(),close(),read().write()等系统调用.设备分为两类:字符设备和块设备.驱动也分为两类: 字符设备驱动,块设备驱动. 另外每个设备都具备 两个设备号: 主设备号...
Linux下使用TCP通讯时遇到问题的解决实例

Linux下使用TCP通讯时遇到问题的解决实例

在这里总结一下这Linux用TCP通讯需要注意的几个问题,都是前一阵子工作中遇到的问题。问题1. 发送和接收数据时的不完整问题以接收为例,当对端发送1000个字节的数据时,本端进行接收,会出现调用recv返回500并且errno==EAGAIN的情况(测试中发现这种情况非常严重),这个错误表示当前设备忙,稍后再试。理想化的解决办法是这样的:使用select或者epoll机制,当有数据到来时,select或epoll会通知,此时一直接收直到recv返回0表示...
Linux内存计数详细解析

Linux内存计数详细解析

Linux读写文件时的缓存机制与windows不同,以致于读写大文件时cached值非常大且居高不下。近几天用Oracle,发现oracle狂用内存,经常内存小到10M的规模。汗一个,赶快让经理买了新的1G内存来装,上去后发现根本认不出来。加班一多小时才发现386内核根本不认高端内存(HIGHMEM),所以内存极限一直是896M。以前是1G内存,所以看不出来,现在换了1.5G,看出来了。赶快上了一个2.6.12-1-686的内核,然后重启,认出来了。不过f...
<< 1141 1142 1143 1144 1145 1146 1147 1148 1149 1150 >>