linux学习
文章平均质量分 85
孑虫
平凡的人,一个平淡的人生,亦知足。
展开
-
gdb常用命令
调用gdb编译需要在cc后面加 -g参数再加-o;[root@redhat home]#gdb 调试文件:启动gdb(gdb) l :(字母l)从第一行开始列出源码(gdb) break n :在第n行处设置断点(gdb) break func:在函数func()转载 2011-09-07 00:17:10 · 622 阅读 · 0 评论 -
sock编程学习1
面试经常问到IPC机制,但没一次想到套接字。管道、先进先出、消息对立、信号量、共享内存、套接字,这些都是在同一台机子上运行的进程。不同的机子上运行的进程同性机制必须用套接字了。 1、套接字描述符: 套接字是通信端点的抽象,在unix系统中套接字是由文件描述符实现的 int socket(int domain, int type, int p原创 2013-07-19 17:36:53 · 828 阅读 · 0 评论 -
关于linux动态链接库
找工作之余,把apue上一个简单面向连接的socket程序写了下。上面用到别的章节的函数直接都用的extern,因为前天面试问我动态链接库了,就想这让用到的这些外部函数,直接动态链接。顺便学习下,怎么编译动态链接库的。没学习那么深,只是知道怎么制作,应用就好,可中间还是碰到了点小问题。 要判断一个程序有没有动态链接库,可以用ldd命令,如果目标程序没有链接动态库,则打印“no原创 2013-07-18 00:07:36 · 849 阅读 · 0 评论 -
linux线程函数
参考引用:http://www.cnblogs.com/forstudy/archive/2012/04/05/2433853.html进程和线程的区别:简而言之,一个程序至少有一个进程,一个进程至少有一个线程. 线程的划分尺度小于进程,使得多线程程序的并发性高。另外,进程在执行过程中拥有独立的内存单元,而多个线程共享内存,从而极大地提高了程序的运行效率。线程在执行过程原创 2013-05-30 16:34:53 · 674 阅读 · 0 评论 -
linux进程调度浅析
操作系统要实现多进程,进程调度必不可少。有人说,进程调度是操作系统中最为重要的一个部分。我觉得这种说法说得太绝对了一点,就像很多人动辄就说"某某函数比某某函数效率高XX倍"一样,脱离了 实际环境,这些结论是比较片面的。 而进程调度究竟有多重要呢? 首先,我们需要明确一点:进程调度是对TASK_RUNNING状态的进程进行调度(参 见《linux 进程状态浅析 》)。如果进程不可执行(正转载 2012-08-14 16:38:00 · 696 阅读 · 0 评论 -
getaddrinfo函数原型
.getaddrinfo函数原型函数参数说明int getaddrinfo(const char* nodenameconst char* servname,const struct addrinfo* hints,//struct addrinfo** res);nodename:节点名可以是主机名,也可以是转载 2012-07-13 17:39:59 · 713 阅读 · 0 评论 -
一致代码段和非一致代码段
http://blog.csdn.net/feijj2002_/article/details/4597174之所以出现这个定义是因为系统要安全:内核要和用户程序分开..内核一定要安全.不能被用户程序干涉.但是有时候用户程序也需要读取内核的某些数据,怎么办呢?操作系统就引入了访问特权等级(0-3)的机制.这些特权等级,通过三个符号来体现CPL/DPL/RPL.其中C转载 2012-03-19 19:13:51 · 1692 阅读 · 0 评论 -
Curses函数说明(SCO)
一.全局变量 WINDDW* curscr:当前屏幕 WINDOW* stdscr:标准屏幕 int LINES:终端上的行数 int COLS:终端上的列数 bool TRUE:真标志,1 bool FALSE:假标志,0 int ERR:错误标志,-1 int OK:OK标志,0 ---------转载 2011-11-06 15:33:25 · 1283 阅读 · 0 评论 -
linux:vi 替换命令
vi/vim 中可以使用 :s 命令来替换字符串。以前只会使用一种格式来全文替换,今天发现该命令有很多种写法(vi 真是强大啊,还有很多需要学习),记录几种在此,方便以后查询。 :s/vivian/sky/ 替换当前行第一个 vivian 为 sky :s/vivian/sky/g 替换当前行所有 vivian 为 sky :n,$s/vivian/sky/ 替换第 n 行开始到转载 2011-11-23 22:35:54 · 425 阅读 · 0 评论 -
Linux下的vim配置和插件管理
1写在前面 Linux下编程一直被诟病的一点是: 没有一个好用的IDE, 但是听说Linux牛人, 黑客之类的也都不用IDE. 但是对我等从Windows平台转移过来的Coder来说, 一个好用的IDE是何等的重要啊, 估计很多人就是卡在这个门槛上了, "工欲转载 2011-10-15 00:06:23 · 1607 阅读 · 0 评论 -
Linux内核常用宏和数据结构二(学习内核必备)
3. HASH表 HASH表适用于不需要对整个空间元素进行排序,而是只需要能快速找到某个元素的场合,是一种以空间换时间的方法,本质也是线性表,但由一个大的线性表拆分为了多个小线性表,由于只需要查找小表,因此搜索速度就会线性查整个大表提高很多,理想情况下,有多少个小线性表,转载 2011-09-21 00:29:49 · 1208 阅读 · 0 评论 -
Linux内核常用宏和数据结构一(学习内核必备)
本文档的Copyleft归yfydz所有,使用GPL发布,可以自由拷贝,转载,转载时请保持文档的完整性,严禁用于任何商业用途。msn: yfydz_no1@hotmail.com来源:http://yfydz.cublog.cn 1. 前言 本文介绍lin转载 2011-09-21 00:28:56 · 851 阅读 · 0 评论 -
Linux下数字表示文件的操作权限(777,755,..)
Linux下数字表示文件的操作权限(777,755,..)Linux下,查看某路径下用(ls -l)查看所有文件的详细属性列表时,会看到文件的操作权限,类似“drwxr-xr-x”的字符串。这串字符可以分成4段理解,结构为“d + 文件所有者操作权限 + 文件所有转载 2011-09-16 01:30:22 · 7570 阅读 · 0 评论 -
sock编程学习2
面向连接的服务SOCK_STREAM、SOCK_SEQPACKET,在开始交换数据之前,需要在请求服务的进程套接字和提供服务的进程套接字之间建立一个连接:connect. int connect(int sockfd const struct *addr, socklen_t len); 在connect中所指定的地址是想与之通信的服务器地址,如果sockfd没有绑定到原创 2013-07-19 20:46:59 · 1779 阅读 · 0 评论