
Unix/Linux
文章平均质量分 61
hjhomw
今天的苦逼是为了不这样一直苦逼下去,坚持,坚持,坚持!
展开
-
ubuntu的安装与使用(2)
常用的apt和dpkt命令 apt-cache search package 搜索包apt-cache show package 获取包的相关信息,如说明、大小、版本等sudo apt-get install package 安装包sudo apt-get install package – - reinstall 重新安装包sudo apt-get -f install 修复安装”-f = ——原创 2015-09-11 20:59:38 · 368 阅读 · 0 评论 -
C/C++ Linux 程序员必须了解的 10 个工具
想成为 Linux 下专业的 C/C++ 程序员,下面工具都是必须要了解的。基本命令 http://mally.stanford.edu/~sr/computing/basic-unix.html http://pangea.stanford.edu/computing/unix/shell/commands.php http://infohost.nmt.edu/tcc/help/unix转载 2016-03-20 19:47:09 · 340 阅读 · 0 评论 -
Linux库文件
什么是库在windows平台和linux平台下都存在着大量的库。本质上来说库是一种可执行代码的二进制形式,可以被操作系统载入内存执行。由于windows和linux的本质不同,因此二者库的二进制是不兼容的。库的种类linux下的库有两种:静态库和共享库(动态库)。二者的不同点在于代码被载入的时刻不同。静态库的代码在编译过程中已经被载入可执行程序,因此体积较大。共享库的代码是在可执行程序运行时才转载 2016-03-12 18:52:02 · 361 阅读 · 0 评论 -
linux 系统调用与标准库调用的区别详细解析
1、系统调用和库函数的关系 系统调用通过软中断int 0x80从用户态进入内核态。 函数库中的某些函数调用了系统调用。 函数库中的函数可以没有调用系统调用,也可以调用多个系统调用。 编程人员可以通过函数库调用系统调用。高级编程也可以直接采用int 0x80进入系统调用,而不必通过函数库作为中介。 如果是在核心编程,也可以通过int 0x80进入系统调用,此时不能使用函数库。因为函数库中的函数是内转载 2016-04-07 10:44:42 · 565 阅读 · 0 评论 -
Linux系统编程之错误处理:perror,strerror和errno
1,在系统编程中错误通常通过函数返回值来表示,并通过特殊变量errno来描述。errno这个全局变量在< errno.h>头文件中声明如下:extern int errno;errno是一个由POSIX和ISO C标准定义的符号,看(用)起来就好像是一个整形变量。当系统调用或库函数发生错误的时候,比如以只读方式打开一个不存在的文件时,它的值将会被改变,根据errno值的不同,我们就可以知道自己的程序转载 2016-04-08 09:21:10 · 1196 阅读 · 0 评论 -
close_on_exec 标志位
close_on_exec 是一个进程所有文件描述符(文件句柄)的位图标志,每个比特位代表一个打开的文件描述符,用于确定在调用系统调用execve()时需要关闭的文件句柄(参见include/fcntl.h)。当一个程序使用fork()函数创建了一个子进程时,通常会在该子进程中调用execve()函数加载执行另一个新程序。此时子进程将完全被新程序替换掉,并在子进程中开始执行新程序。若一个文件描述符在原创 2016-04-08 14:54:40 · 480 阅读 · 0 评论 -
父、子进程同步的5个例程的两种实现方式
1. 使用信号实现static volatile sig_atomic_t sigflag; /* set nonzero by sig handler */static sigset_t newmask, oldmask, zeromask;static void sig_usr(int signo) /* one signal handler for SIGUSR1 and SIGUSR2原创 2016-04-09 10:53:15 · 1106 阅读 · 0 评论 -
chmod
chmod—-改变一个或多个文件的存取模式(mode)chmod [options] mode files只能文件属主或特权用户才能使用该功能来改变文件存取模式。mode可以是数字形式或以who opcode permission形式表示。who是可选的,默认是a(所有用户)。只能选择一个opcode(操作码)。可指定多个mode,以逗号分开。options:-c,–changes 只输出被改变文原创 2016-04-13 15:18:05 · 332 阅读 · 0 评论 -
init进程
init进程,它是内核启动的第一个用户级进程。init有许多很重要的任务,比如像启动getty(用于用户登录)、实现运行级别、以及处理孤立进程。1. 简介 对于Linux系统的运行来说,init程序是最基本的程序之一。但你仍可以大部分的忽略它。一个好的Linux发行版本通常随带有一个init的配置,这个配置适合于绝大多数系统的工作,在这样一些系统上不需要对init做任何事。通常,只有你在碰到诸如串原创 2016-04-10 21:29:22 · 1363 阅读 · 0 评论 -
使用文件描述符存取打开文件与直接使用文件名相比有何优点?
首先,文件名是一个字符串,操作速度慢且占空间大,而文件描述符为一整数,其处理效率明显高于字符串。其次,文件被打开后其控制信息(FCB)被缓冲到内存系统空间,文件描述符作为用户打开文件表中的入口地址直接与内存FCB建立起联系,而文件名无法做到这一点。转载 2016-04-14 17:09:31 · 640 阅读 · 0 评论 -
信号量
信号量 一.什么是信号量 信号量的使用主要是用来保护共享资源,使得资源在一个时刻只有一个进程(线程)所拥有。信号量的值为正的时候,说明它空闲。所测试的线程可以锁定而使用它。若为0,说明它被占用,测试的线程要进入睡眠队列中,等待被唤醒。信号量的本质是一种数据操作锁,它本身不具有数据交换的功能,而是通过控制其他的通信资源(文件,外部设备)来实现进程间通信,它本身只是一种外部资源的标识。信号量在此过程转载 2016-04-11 17:44:45 · 851 阅读 · 0 评论 -
C/C++作用域详解
作用域规则告诉我们一个变量的有效范围,它在哪儿创建,在哪儿销毁(也就是说超出了作用域)。变量的有效作用域从它的定义点开始,到和定义变量之前最邻近的开括号配对的第一个闭括号。也就是说,作用域由变量所在的最近一对括号确定。(1) 全局变量:全局变量是在所有函数体的外部定义的,程序的所在部分(甚至其它文件中的代码)都可以使用。全局变量不受作用域的影响(也就是说,全局变量的生命期一直到程序的结束)。如果在一转载 2016-03-20 15:28:41 · 478 阅读 · 0 评论 -
gcc/g++编译
gcc/g++在执行编译工作的时候,总共需要4步(1).预处理,生成.i的文件[预处理器cpp] (2).将预处理后的文件不转换成汇编语言,生成文件.s[编译器egcs] (3).有汇编变为目标代码(机器代码)生成.o的文件[汇编器as] (4).连接目标代码,生成可执行程序[链接器ld][参数详解] -x language filename 设定文件所使用的语言,使后转载 2016-03-20 15:16:32 · 294 阅读 · 0 评论 -
Ubuntu系统的安装与使用(1)
链接: http://jingyan.baidu.com/article/6181c3e06e6003152ef15300.html原创 2015-09-11 20:05:07 · 576 阅读 · 0 评论 -
2013一年一度的Linux周刊读者投票结果
一年一度的Linux周刊读者投票结果已经登于2013第12期。这是Linux爱好者们自 己的“奥斯卡”: Linux周刊的小编们列出一系列Linux相关的“最佳项目”进行面向读者的投票。竞选项目包括: 最佳Linux发行版, 最佳Linux平板,最佳移动Linux系统等等。其中ubuntu,Android,Nexus7皆榜上有名。本文节选了一部分有一意思的项目进行了整理翻译,所有文字均来源于Linu转载 2015-09-11 19:32:10 · 481 阅读 · 0 评论 -
ubuntu博客
卡书的新博客地址: https://kashu.org原创 2015-09-11 19:29:45 · 289 阅读 · 0 评论 -
Ubuntu PPA的介绍和使用
PPA是Personal Package Archives首字母简写。翻译是:个人软件包文档 只有Ubuntu用户可以用,而所有的PPA都是寄存在launchpad.net网站上。Launchpad(启动器)是Canonical公司所架设的网站,是一个提供维护、支援或连络Ubuntu开发者的平台。其中Launchpad提供了线上翻译软件的功能,你可以自由的参与Ubuntu或相关自由软件的开发或翻译转载 2015-09-11 19:39:32 · 856 阅读 · 0 评论 -
ubuntu下解决解压zip文件中文文件名乱码问题
在Ubuntu下解压Windows下压缩的zip文件时,会出现解压出的带中文文件名的文件名乱码,这是因为Ubuntu和Windows默认的编码不同,Ubuntu下默认的编码是UTF-8,而Windows下默认的编码是GBK,而zip文件自身却不带有任何标识其编码的信息。对于这个问题,主要有以下三种解决方法:一、命令行指定解压字符集解压时指定字符集,可以是CP936,GBK,GB18030$unzip转载 2015-09-14 14:48:29 · 2131 阅读 · 0 评论 -
打造自己的Vim的IDE
参考地址:http://www.cnblogs.com/tianjintou/p/4769548.html 非常详细原创 2015-09-14 15:02:15 · 372 阅读 · 0 评论 -
Vim常用命令
插入 字符 含义 a 在当前光标后插入文本 A 在本行行尾插入文本 i 在光标前插入文本 I 在本行行首插入文本 o 在光标下插入新行 O 在光标上插入新行 h 左移一个字符 j 下移一个字符 k 下移一个字符 I 右移一个字符 $ 移动至当前行的行尾 0 移动至当前行的行首(数字零) H转载 2015-09-13 18:37:35 · 302 阅读 · 0 评论 -
Linux快速教程和图说设计模式(互联网博集)
大cc博客地址: http://www.cnblogs.com/me115/图说设计模式 博客地址: http://design-patterns.readthedocs.org/zh_CN/latest/index.htmlGitHub地址: https://github.com/me115Linux快速教程 博客地址: http://linuxtools-rst.readthedoc原创 2015-09-13 18:52:31 · 1077 阅读 · 0 评论 -
Linux系统的头文件和库文件搜索路径
Include的header文件,连结数据库,系统定义,总共有下列来源指定gcc去那找。当初在编译时指定的(在~gcc/gcc/collect2.c:locatelib()写在specs内的后来用-D -I -L指定的gcc环境变量设定(编译的时候)ld.so的环境变量(这是run time的时候)一、头文件gcc 在编译时如何去寻找所需要的头文件 :※所以header file的搜寻会从-I开始※转载 2015-10-02 22:04:51 · 993 阅读 · 0 评论 -
字符集与编码方式解惑
1、什么是【locale】?【locale】指一个程序或者操作系统所处的国家、字符集、时间显示的格式、货币符号等。在C标准库的locale.h文件中定义了常量LC_ALL(全部locale项)、LC_COLLATE(排序)、LC_CTYPE(语言符号)、LC_MESSAGES、LC_MONETARY(货币符号)、LC_NUMERIC、LC_TIME(日期格式)等。locale是linux系统和C语言转载 2016-03-16 14:46:37 · 495 阅读 · 0 评论 -
命令行和Shell
严格意义上讲: 命令行指的是提供用户输入命令的界面,其本身只是接受输入,然后把命令传递给命令解释器。 shell,本质上,shell是程序,它在用户和操作系统之间提供了一个面向行的可交互接口。用户在命令行中输入命令,运行在后天的shell把命令转换成指令代码发送给操作系统。shell提供了很多高级特性,使得用户和操作系统之间的交互变得简便和高效。常用的有Bourne Shell(简称sh)、C-原创 2016-04-20 16:50:35 · 609 阅读 · 0 评论