Linux
文章平均质量分 64
ishuang
这个作者很懒,什么都没留下…
展开
-
关于Linux静态库和动态库的分析
1.什么是库在windows平台和linux平台下都大量存在着库。本质上来说库是一种可执行代码的二进制形式,可以被操作系统载入内存执行。由于windows和linux的本质不同,因此二者库的二进制是不兼容的。本文仅限于介绍linux下的库。2.库的种类linux下的库有两种:静态库和共享库(动态库)。二者的不同点在于代码被载入的时刻不同。静态库的代码在编译过程中已经被载入可执行程序,因此体...原创 2010-09-28 10:29:17 · 111 阅读 · 0 评论 -
ubuntu下启用FrameBuffer模块
1. 编辑 /etc/initramfs-tools/modules,在其中加入:fbconvesafbvga16fb2. 编辑 /etc/modprobe.d/blacklist-framebuffer,注释掉以下两行:blacklist vesafbblacklist vga16fb3. 修改/boot/grub/ 内的menu.lst ,找到类似如下几行代码,在...原创 2009-08-18 17:13:56 · 408 阅读 · 0 评论 -
makefile的语法及写法
0.1 关于程序的编译和链接 在此,我想多说关于程序编译的一些规范和方法,一般来说,无论是C、C++、还是pas,首先要把源文件编译成中间代码文件,在Windows下也就是.obj 文件,UNIX下是 .o 文件,即 Object File,这个动作叫做编译(compile)。然后再把大量的ObjectFile合成执行文件,这个动作叫作链接(link)。 编译时,编译器...原创 2009-08-18 13:04:00 · 97 阅读 · 0 评论 -
vmware下Ubuntu上网问题
sudo cp /etc/network/interfaces /etc/network/interfaces_backupsudo gedit /etc/network/interfaces# The loopback network interfaceauto loiface lo inet loopback# The primary network interfaceauto eth0ifa...原创 2009-08-07 19:27:21 · 87 阅读 · 0 评论 -
LINUX 时间和日期
时间与日期通常对于一个程序来说可以确定时间与日期是十分用的。也许他要记录其运行的时间,或者是他要一个特定的时间改变其形为。例如,一个游戏程序也许不会在工作时间运行,或者是一个备份调度会在启动自动备份之前等待早些的工作完成。所有的Unix系统对于时间与日期都使用相同的起始点:1970年1月1日午午夜GMT。这是Unix的创世纪,而Linux也不例外。而在Linux系统中所有的时间...2010-04-01 19:09:56 · 104 阅读 · 0 评论 -
About pci.ids
pci.ids - This is a public repository of all known ID's used in PCI devices:ID's of vendors, devices, subsystems and device classes. '1543' with red underline : VendorID '30...2009-12-23 21:01:29 · 450 阅读 · 0 评论 -
port I/O
Nameoutb, outw, outl, outsb, outsw, outsl, inb, inw, inl, insb, insw, insl, outb_p, outw_p, outl_p, inb_p, inw_p,inl_p - port I/ODescriptionThis family of functions is ...原创 2009-12-21 15:27:44 · 217 阅读 · 0 评论 -
udev相关
udev 是Linux kernel 2.6系列的设备管理器。它主要的功能是管理/dev目錄底下的设备节点。它同时也是用来接替devfs及hotplug的功能,这意味着它要在添加/删除硬件时处理/dev目录以及所有用户空间的行为,包括加载firmware时。 udev的最新版本依赖于升级后的Linux kernel 2.6.13的uevent接口的最新版本。...原创 2009-12-11 20:22:04 · 91 阅读 · 0 评论 -
SMP(Symmetrical Multi-Processing)
对称多处理"(SymmetricalMulti-Processing)又叫SMP,是指在一个计算机上汇集了一组处理器(多CPU),各CPU之间共享内存子系统以及总线结构。它是相对非对称多处理技术而言的、应用十分广泛的并行技术。在这种架构中,一台电脑不再由单个CPU组成,而同时由多个处理器运行操作系统的单一复本,并共享内存和一台计算机的其他资源。虽然同时使用多个CPU,但是从...原创 2009-12-11 15:22:28 · 598 阅读 · 0 评论 -
GtkFB的工作原理
2.1.3 GtkFB的工作原理 DirectFB访问图形硬件设备依赖于操作系统提供的内核接口,即帧缓冲设备(FrameBuffer)。FrameBuffer实际上是用一块硬件来做显卡和软件之间的桥梁,Linux的内核将其开放出来,使用户的程序可以通过块内存来存取显卡。例如设定显示分辨率和色彩数、存取显示内存区等。不同的Linux需要提供针对不同显示硬件FrameBuffer的驱动...原创 2009-08-18 17:28:26 · 414 阅读 · 0 评论 -
linux中的信号处理(signal与alarm)
简单处理程序: #include<stdlib.h> #include<stdio.h> #include<unistd.h> #include<signal.h>void handle() { printf("I am steven\n"); alarm(1); } ...原创 2010-05-12 15:25:52 · 410 阅读 · 0 评论 -
linux下更改共享内存的最大值
System V IPC参数名字 描述 合理取值 SHMMAX最大共享内存段尺寸(字节)最少若干兆(见文本)SHMMIN最小共享内存段尺寸(字节)1SHMALL可用共享内存的总数量(字节或者页面)如果是字节,就和 SHMMAX 一样...原创 2010-07-26 13:22:49 · 318 阅读 · 0 评论 -
htonl(),htons(),ntohl(),ntons()--大小端模式转换函数
不同机器内部对变量的字节存储顺序不同,有的采用大端模式(big-endian),有的采用小端模式(little-endian)。大端模式是指高字节数据存放在低地址处,低字节数据放在高地址处。小端模式是指低字节数据存放在低地址处,高字节数据放在高地址处。在网络上传输数据时,由于数据传输的两端可能对应不同的硬件平台,采用的存储字节顺序也可能不一致,因此 TCP/IP 协议规定了在网络上必须...原创 2010-12-16 16:51:22 · 534 阅读 · 0 评论 -
Heartbeat
Heartbeat 项目是 Linux-HA 工程的一个组成部分,它实现了一个高可用集群系统。心跳服务和集群通信是高可用集群的两个关键组件,在 Heartbeat 项目里,由 heartbeat 模块实现了这两个功能。下面描述了 heartbeat 模块的可靠消息通信机制,并对其实现原理做了一些介绍。 高可用集群是指一组通过硬件和软件连接起来的独立计算机,它们在用户面前表现为一个单一系...原创 2010-09-01 19:31:47 · 155 阅读 · 0 评论 -
环境变量相关
系统环境变量:/etc/profile:此文件为系统的每个用户设置环境信息,当用户第一次登录时,该文件被执行.并从/etc/profile.d目录的配置文件中搜集shell的设置./etc/bashrc:为每一个运行bash shell的用户执行此文件.当bash shell被打开时,该文件被读取.当前用户变量:~/.bash_profile:每个用户都可使用...原创 2010-06-10 15:03:45 · 115 阅读 · 0 评论 -
Ubuntu 中软件的安装、卸载以及查看的方法总结
说明:由于图形化界面方法(如Add/Remove... 和Synaptic Package Manageer)比较简单,所以这里主要总结在终端通过命令行方式进行的软件包安装、卸载和删除的方法。一、Ubuntu中软件安装方法1、APT方式(1)普通安装:apt-get install softname1 softname2 …;(2)修复安装:apt-ge...原创 2009-09-03 13:55:09 · 768 阅读 · 0 评论 -
The Cairo graphics tutorial
http://cairographics.org/ To Be Continued...2009-09-01 12:29:51 · 80 阅读 · 0 评论 -
GTK+ 中的事件(events)和信号(signals)
引用http://zetcode.com/tutorials/gtktutorial/chinese/gtkevents/ 在我们教程的这一个章节中,我们会谈一谈GTK+函数工具库中的,“事件”系统 。 GTK+函数工具库是基于 “事件”系统的。所有的 GUI应用程序无一例外都是基于“事件”驱动的。假如没有“事件”发生,则应用程序就什么都不会做。在GTK+...原创 2009-08-31 20:28:44 · 487 阅读 · 0 评论 -
pkg-config
pkg-config用法http://www.sitearchitect.cn/archives/262概述返回已安装库文件的元信息。环境变量:PKG_CONFIG_PATH。pkg-config将在该变量下查找所有的.pc文件。此外,它还会查找/usr/lib/pkgconfig/下的.pc文件。pkg-config works on multiple platf...2009-08-26 15:42:56 · 68 阅读 · 0 评论 -
Linux 2.2 Framebuffer Device Programming Tutorial
This is a quick document I produced while figuring out how to use the framebuffer device to produce graphics on the Linux console. I don't claim to be an expert in this area, but when I looked for a g...原创 2009-08-25 20:16:04 · 123 阅读 · 0 评论 -
IPC之消息队列
消息队列缺点:1. 如果进程创建了一个消息队列,在该队列中放入了几则消息,然后终止,但是该消息队列及其内容并不会被删除。直到出现一下情况:某个进程调用msgrcv或msgctl读消息或删除消息队列,某个进程执行ipcrm(1)命令删除消息队列,或由正在启动的系统删除消息队列。2. 消息队列有大小限制,通常只用于小数据量的发送。系统对用户的大小限制可以通过 ulimit -q 命...2010-03-13 12:05:12 · 101 阅读 · 0 评论 -
如何让errno多线程/进程安全
在linux或者unix环境中,errno是一个十分重要的部分。在调用的函数出现问题的时候,我们可以通过errno的值来确定出错的原因,这就会 涉及到一个问题,那就是如何保证errno在多线程或者进程中安全?我们希望在多线程或者进程中,每个线程或者进程都拥有自己独立和唯一的一个 errno,这样就能够保证不会有竞争条件的出现。一般而言,编...2010-03-13 11:35:31 · 230 阅读 · 0 评论 -
Introduction to cross-compiling for Linux
Or: Host, Target, Cross-Compilers, and All Thathttp://landley.net/writing/docs/cross-compiling.htmlHost vs TargetA compiler is a program that turns source code into executable code. L...原创 2009-10-19 14:59:10 · 170 阅读 · 0 评论 -
Console Framebuffer in Ubuntu[Edited]
The Linux console framebuffer allows you toachieve higher screen resolutions within your Linux console. However,as of this writing, Ubuntu 7.10 Gutsy by default does not load therequired kerne...2009-10-15 19:32:59 · 83 阅读 · 0 评论 -
Intel 80386 Manual 读书笔记 - A20 地址线问题
A20 地址线问题1981 年8 月,IBM 公司最初推出的个人计算机IBM PC 使用的CPU 是Intel8088。在该微机中地址线只有20 根(A0 – A19)。在当时内存RAM 只有几百KB 或不到1MB时,20根地址线已足够用来寻址这些内存。其所能寻址的最高地址是0xffff:0xffff,也即0×10ffef。对于超出0×100000(1MB)的寻址地址将默认地环...2009-09-27 21:46:36 · 298 阅读 · 0 评论 -
师兄总结的
当我们心爱的ubuntu操作系统用了很长时间后,一般会形成很有个性化的配置,包括一些常用的软件以及相应的配置,桌面主题的美化,快捷键操作习惯的设定等等,如果在重装系统后再重新恢复的话,有时候是一件非常痛苦的事!幸好ubuntu足够强大,提供了相关的命令来备份上面讲到的所有的配置,下面就来看看到底是怎么做的?一 简单两步,轻松备份系统: 1、备份已安装软件包列表: sudo dp...2009-09-27 21:45:27 · 82 阅读 · 0 评论 -
linux tar打包解压详解
http://www.loveqiutian.cn/bencandy.php?id=63143---------------------------------------------------------------------------------------------------------------------tar命令 ...原创 2009-09-13 18:06:50 · 70 阅读 · 0 评论 -
tar打包原理分析
http://blog.chinaunix.net/u3/101042/showart_2020063.html----------------------------------------------------------------------------------------------------------------------------------------首先是进...原创 2009-09-13 18:04:34 · 1363 阅读 · 0 评论 -
Git使用笔记
1, Linus的 git tree,AKA 'mainline kernel': $ git -clone git :// git .kernel.org/pub/scm/linux/kernel/ git /torvalds/linux-2.6. git 其他的 git trees可以在[url]http:// git .kernel.org/[/u...原创 2009-09-12 12:59:17 · 109 阅读 · 0 评论 -
遇见的Linux 命令(更新中...)
$ grep MemTotal /proc/meminfo 检查内存空间$ grep SwapTotal /proc/meminfo 检查交换空间2006-10-17 21:16:21 · 79 阅读 · 0 评论 -
Linux下链接详解
链接文件 Linux具有为一个文件起多个名字的功能,称为链接。被链接的文件可以存放在相同的或不同的目录下。如果在同一目录下,二者必须有不同的文件名,而不用...原创 2009-10-22 22:00:07 · 140 阅读 · 0 评论 -
Ubuntu全自动安装微软雅黑字体
支持在Ubuntu8.10、Ubuntu9.04系统上自动安装微软雅黑、monaco-linux、lucida-console等字体。而且可以设置LED、CRT两种不同的显示器的渲染效果,无需手工配置,实现自动化安装。使用方法如下:打开命令控制器,然后运行下面的脚本(可以通过粘贴复制实现):wget -O get-fonts.sh.zip http://files.cnblogs....原创 2009-10-23 21:53:51 · 135 阅读 · 0 评论 -
让切换目录更方便: pushd,popd,dirs,cd -
一,为何要使用这几个命令? 可能大家会有疑问,为何要使用这几个命令, 难道用cd不就可以切换目录了吗? 没错,使用cd就可以切换到需要访问的目录, 但是有时会是一个路径很长,层次很多的目录,进到此目录下后,这时我们不小心运行了 cd命令, 理所当然,我们回到了自己的home目录,这时如果想回去怎么办? 还有:因为工作的需要,我们需要不停在几个很深层的...原创 2009-10-28 14:04:29 · 65 阅读 · 0 评论 -
Linux下库相关的概略介绍及动态库的搜索路径优先级
(本文主要针对动态连接库,内容来源网络,重新整理之,高亮部分的请重点关注) 一.基本知识 总体来说, 库可以有三种使用的形式: 静态、共享和动态. 静态库的代码在编译时就已连接到开发人员开发的应用程序中, 而共享库只是在程序开始运行时才载入. 在编译时, 只是简单地指定需要使用的库函数. 动态库则是共享库的另一种变化形式. 动态库也是在程序运行时载入,...2010-03-13 11:29:57 · 120 阅读 · 0 评论 -
ftok函数
系统建立IPC通讯(如消息队列、共享内存时)必须指定一个ID值。通常情况下,该id值通过ftok函数得到。ftok原型如下: key_t ftok( char * fname, int id) fname就时你指定的文件名,id是子序号。在一般的UNIX实现中,是将文件的索引节点号取出,前面加上子序号得到key_t的返回值。如指定文件的索引节点号为655...2010-03-13 11:01:29 · 111 阅读 · 0 评论 -
功能强大的sed命令
vim不太熟练,发现shell的sed命令很强大。1. Sed简介 2. 定址 3. Sed命令 4. 选项 5. 元字符集 6. 实例 7. 脚本1. Sed简介sed是一种在线编辑器,它一次处理一行内容。处理时,把当前处理的行存储在临时缓冲区中,称为“模式空间”(patternspace),接着用sed命令处理缓冲区中的内容,处理完成后,把缓...原创 2009-11-27 21:55:04 · 140 阅读 · 0 评论 -
/etc/sudoers配置文件的格式
-------下面文章转载自网络-----------# User privilege specificationroot ALL=(ALL) ALL # Members of the admin group may gain root privileges%admin ALL=(ALL) ALL下面对以上配置做简要说明:第一项配置的作用,是允...原创 2009-11-25 20:56:46 · 293 阅读 · 0 评论 -
/etc/sudoers中的含义
Sudo是允许系统管理员让普通用户执行一些或者全部的root命令的一个工具,如halt,reboot,su等等。这样不仅减少了root用户的登陆和管理时间,同样也提高了安全性。Sudo不是对shell的一个代替,它是面向每个命令的。 它的特性主要有这样几点: § Sudo能够限制用户只在某台主机上运行某些命令。 § Sudo提供了丰富...原创 2009-11-25 20:55:35 · 657 阅读 · 0 评论 -
linux下如何模拟按键输入和模拟鼠标
查看/dev/input/eventX是什么类型的事件, cat /proc/bus/input/devices设备有着自己特殊的按键键码,我需要将一些标准的按键,比如0-9,X-Z等模拟成标准按键,比如KEY_0,KEY-Z等,所以需要用到按键模拟,具体方法就是操作/dev/input/event1文件,向它写入个input_event结构体就可以模拟按键的输入了。linux/inp...原创 2009-11-14 10:06:53 · 198 阅读 · 0 评论 -
Linux root file system
1. Linux for PowerPC Embedded Systems HOWTO : Root file system 2. Embedded Linux Howto : Creating a root file system 3. The Linux Bootdisk HOWTO : Building a root fil...原创 2009-11-05 20:03:56 · 272 阅读 · 0 评论