![](https://img-blog.csdnimg.cn/20201014180756925.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
LINUX
文章平均质量分 54
清涛
IT老兵
展开
-
inline的用法
inline + static:如果一个函数既是inline又是static,如果所有对函数的调用都能被展开在调用者里面,并且这个函数的地址从来没有被使用过,那么这种情况下不存在对这个函数本身汇编代码的引用。这时,GNU CC实际上并不输出这个函数的汇编代码,除非加选项“-fkeep-inline-functions”。存在一些由于各种原因不能被展开的调用(比如,在函数声明前的调用不能被展原创 2007-02-07 13:40:00 · 1249 阅读 · 0 评论 -
键鼠控制器
在IBM AT和IBM PS2键盘系统中,CPU不能直接和键盘鼠标通讯,需要经过8042芯片来屏蔽不同键盘和鼠标的差别。 CPU直接和8042芯片进行通信,以实现对整个键盘的控制;键盘从外界输入得到的数据也可以通过8042芯片通知给CPU,然后CPU可以通过8042芯片读取这些数据。另外,CPU也直接向8042芯片发送命令,以使用8042芯片自身所提供的功能。 键盘自身也有自己原创 2009-12-29 09:53:00 · 1458 阅读 · 0 评论 -
softirq机制分析
软中断的含义就是模仿硬中断的实现方式,软就是软件模拟的意思。它处于中断的下半部执行,目的是想要使中断上半部快速执行完毕。耗时的一些工作放到下半部去执行。避免丢中断和系统响应慢的问题。 在interrupt.h中定义了软中断号。enum{ HI_SOFTIRQ=0, TIMER_SOFTIRQ, NET_TX_SOFTIRQ, NET_RX_SOFTIRQ, BL原创 2009-12-31 12:43:00 · 2132 阅读 · 0 评论 -
Chrome OS的搜集和分析
是一个很新的操作系统。战略意义更大些,目前看来应该是google的战略性的部署。是下一代PC和移动互联产品。不需要很强的硬件配置。Web OS的架构。Chrome OS基于linux的内核,不必执行下载---安装----使用的过程。传统的OS如果重新安装系统,必须重复以上操作。而且在传统的OS中的文档和资料的安全性也受到质疑。而此时你拥有了Chrome操作系统,所有文档、资料、软件都装在或保存在谷原创 2010-01-14 10:25:00 · 1711 阅读 · 0 评论 -
Linux下USB模拟ps2鼠标驱动
在linu-kernel/drivers/input/mouse/psmouse-base.c是ps2鼠标驱动的主体,如psmouse_reset、psmouse_connect等函数具体实现在此文件之中。简单地,拿psmouse_reset为例,调用ps2_command()->ps2_sendbyte()->serio_write()来完成对硬件的操作。而serio_write()在已经指原创 2010-04-22 18:46:00 · 2711 阅读 · 0 评论 -
局域网P2P技术实现
<br />P2P技术实现方式有很多,现主要介绍利用socket tcp方式构建P2P环境的方法。<br />在开始的时候主要参考NBD协议部分的server端程序来实现BT服务端程序。<br />每个client端都有两个进程来实现P2P功能,一个是客户端的server程序,另一个是客户端的client程序。而BT服务器端只有一个进程,负责资源分配和负载平衡等工作。<br />下面是服务端程序的注意事项。调试是总发现有“Address already in use”信息出现,加入下面代码可以解决此问题。<原创 2010-06-17 10:54:00 · 2380 阅读 · 2 评论 -
vim中显示中文
vim显示中文的方法,不局限于此,对win/linux项目有益原创 2010-09-03 13:48:00 · 826 阅读 · 0 评论 -
很通俗的讲述多进程和多线程的优缺点,转一下
<br />Linux内核对多进程和多线程的支持方式:<br /> 线程机制支持并发程序设计技术,在多处理器上能真正保证并行处理。而在linux实现线程很特别,linux把所有的线程都当作进程实现。linux下线程看起来就像普通进程(只是该进程和其他进程共享资源,如地址空间)。上述机制与Microsoft windows或是Sun Solaris实现差异很大。<br /> Linux的线程实现是在核外进行的,核内提供的是创建进程的接口do_fork()。内核提供了两个系统调用__转载 2010-09-14 12:32:00 · 2231 阅读 · 0 评论 -
常用app在iphone文件系统中的位置
<br />pdf expert 打开文件位置 /private/var/mobile/Documents<br />熊猫看书 打开文件位置 /private/var/mobile/Media/EBooks<br />... to be continue原创 2010-09-29 16:45:00 · 1439 阅读 · 0 评论 -
android文件系统
<br />1、android文件系统的结构<br />android源码编译后得到system.img,ramdisk.img,userdata.img映像文件。其中, ramdisk.img是emulator的文件系统,system.img包括了主要的包、库等文件,userdata.img包括了一些用户数据,emulator加载这3个映像文件后,会把 system和 userdata分别加载到 ramdisk文件系统中的system和 userdata目录下。因此,我们可以把ramdisk.img里的所转载 2010-11-03 16:07:00 · 551 阅读 · 0 评论 -
How to install sun-java5-jdk in Ubuntu 11.04
sudo add-apt-repository "deb http://us.archive.ubuntu.com/ubuntu/ hardy multiverse"sudo add-apt-repository "deb http://us.archive.ubuntu.com/ubuntu/ hardy-updates multiverse"sudo apt-get updat原创 2011-12-26 19:21:53 · 700 阅读 · 0 评论 -
实模式、保护模式、V8086模式
从80386开始,cpu有三种工作方式:实模式,保护模式和虚拟8086模式。只有在刚刚启动的时候是real-mode,等到linux操作系统运行 起来以后就运行在保护模式。实模式只能访问地址在1M以下的内存称为常规内存,我们把地址在1M 以上的内存称为扩展内存。在保护模式下,全部32条地址线有效,可寻址高达4G字节的物理地址空间; 扩充的存储器分段管理机制和可选的存储器分页管理机制,不仅为存储器共转载 2009-12-25 11:00:00 · 1205 阅读 · 0 评论 -
xdirectfb installation in FC6/FC7
xdirectfb installation in FC6/FC7中间遇到很多问题,终于可以正常利用framebuffer显示了,详细步骤如下:cd /lib/modules/2.6.18-1.2798.fc6ln -s /usr/src/kernels/2.6.18-1.2798.fc6-i586 buildcd linux-fusion-8.1.1makemake installmodp原创 2009-11-10 17:06:00 · 1123 阅读 · 0 评论 -
gcov测试代码覆盖率及分析代码性能
1、资源列表Lcov:lcov可以采用html的格式显示gcov的结果,lcov的源码下载地址如下:http://ltp.sourceforge.net/coverage/lcov.php。下载lcov源码包(wget http://downloads.sourceforge.net/ltp/lcov-1.6.tar.gz),解压lcov压缩包(tar -xvf lcov-1.6.tar.转载 2009-09-03 17:17:00 · 2611 阅读 · 0 评论 -
内核里面屏蔽信号的方法
spin_lock_irqsave(¤t->sigmask_lock, flags); oldset = current->blocked; sigfillset(¤t->blocked); recalc_sigpending(current); // 重新计算current->sigpending spin_unlock_irqres原创 2007-01-04 14:59:00 · 1435 阅读 · 0 评论 -
gcc中的选项-L和-l
今天有空看看MAKEFILE编写,由于较长时间写代码,忘记了makefile的编写,发现-L是-l的搜索路径。记一下。 另外:GNU链接器几个开关项的解释:-lm -lc -lgcc -lm 代表链接器将连接GCC的数学库libm.a -lc 代表链接器将连接GCC的标准C库libc.a -lgcc 代表链接器将连接GCC的支持库libgcc.a 在连接时,这些库的排列顺序一般为原创 2007-02-07 15:38:00 · 1525 阅读 · 0 评论 -
signal_pending(current)用法
signal_pending(current)检查当前进程是否有信号处理,返回不为0表示有信号需要处理。返回 -ERESTARTSYS 表示信号函数处理完毕后重新执行信号函数前的某个系统调用。也就是说,如果信号函数前有发生系统调用,在调度信号处理函数之前,内核会检查系统调用的返回值,看看是不是因为这个信号而中断了系统调用.如果返回值-ERESTARTSYS,并且当前调度的信号具备-ERES原创 2007-01-10 15:12:00 · 4664 阅读 · 1 评论 -
_Sysctl的使用
如何在系统运行时改变系统参数呢?可以用_sysctl()函数,使用前,先用syscall()函数注册我们的_sysctl函数,其中syscall*表示_sysctl的参数个数。如果_sysctl有一个参数,这调用syscall1。 详细可以看man 2 sysctl的说明和例子。在实际工作中,我想改变/proc/sys/net/下面的tcp_keepalive_intvl参数,可以按如下方原创 2007-03-06 18:06:00 · 1385 阅读 · 0 评论 -
CVS的日常使用,目前用的比较多的。
版本分支的建立:cvs rtag -b -r release_1_0 release_1_0_patch proj_dir 按tag下载:cvs co -r tag名 -d 下载到本地目录名 cvs路径从分支下到某个具体目录: cvs co -r 分支名 -d 下载到本地目录名 cvs路径在cvs分支上面打rtag:cvs rtag -r 分支名称 tag名称 cvs路径删原创 2007-04-12 11:55:00 · 873 阅读 · 0 评论 -
rpcgen用法
Linux下C语言-RPC远程调用编程rpcgen用法在查看libc6-dev软件包提供的工具(用 dpkg -L libc6-dev 命令)的时候,发现此软件包提供了一个有用的工具rpcgen命令。通过rpcgen的man手册看到此工具的作用是把RPC源程序编译成C语言源程序,从而轻松实现远程过程调用。下面的例子程序的作用是客户端程序取中心服务器上时间的,编程过程如下:先编写一个 “ RPC转载 2008-04-09 09:17:00 · 8981 阅读 · 3 评论 -
__atribute__使用:关于_attribute__ ((used,__section__(".xxxx")))的理解
从etherboot代码中发现有一个__attribute__的使用,#define __pci_driver __attribute__ ((used,__section__(".drivers.pci")))/* Defined by the linker... */extern const struct pci_driver pci_drivers[];extern const struct原创 2008-01-16 09:37:00 · 4015 阅读 · 1 评论 -
事件驱动的应用开发模型
从目前看,大量数据的流动仍然主要分布在局域网的分布式系统中,该类系统的大流量、实时性的特点要求系统具有实时响应、交互动作异步非耦合、高可用性、高可得到性等特征。而因为系统主要局限在局域网内运行,因而在系统的构建上应用要具有灵活多样可靠稳定的性能。事实上,良好的局域网应用是联入广域网的前提。在该类分布式系统中,引导数据流动和分布式动作的往往是事件的作用,或者称之为消息。事件是激活和驱动分布式系统转载 2008-05-13 09:33:00 · 1199 阅读 · 0 评论 -
IRQ中断请求原理
IRQ ( 中斷請求 ) 是 PC 非常重要的一個功能. 在一般的電腦系統裡. 當裝備需要系統來服務時.有二種方法 :一是 polling. 由 CPU 一直去問裝備是否需要服務. 如果需要時就去服務它. 這很浪費 CPU 的時間. 另一種方法就是 IRQ 法. 當裝備需耍服務時就發出 IRQ. 當系統收到這個 IRQ 時才去服務它. 就樣可大大減小系統的負擔. IRQ 由中斷控制器 (825转载 2009-01-16 10:17:00 · 4204 阅读 · 0 评论 -
设备类的规定
Class Code TableClass CodesClassDescription0x00Devices built before class codes (i.e. pre PCI 2.0)0x01Mass storage controller0x02Network controller0x03Dis转载 2009-08-31 16:41:00 · 1009 阅读 · 0 评论 -
file system
§Filesystems are a collection of files that are stored in the system in some way§So many file system! Disk file:§Boot block§Super block−Magic number−Revision−Mount coun原创 2012-06-18 10:21:26 · 719 阅读 · 0 评论