一开始比较慌,下意识里就想到用reset和push -f重置版本并强制推送到远程库,经过实验发现这样做只能保证自己的本地库和远程库回到之前一个版本,而其他人想通过git pull同步是无效的,远程库版本已经低于其他人的...
分类:
其他好文 时间:
2014-07-22 08:19:33
阅读次数:
188
dup,dup2,dup3函数 顾名思义,dup及duplicate的简写,也就是复制的意思。而事实上这几个函数的功能也确实是复制文件描述符。那为什么要复制文件描述符呢?呵呵,我认为是程序员想偷懒,因为这个功能可以进行输入输出重定向。下面这个程序将实现文件复制功能 1 #include 2 #i.....
分类:
系统相关 时间:
2014-07-21 10:05:22
阅读次数:
307
lib/setfl.c #include "apue.h"#include voidset_fl(int fd, int flags) /* flags are file status flags to turn on */{ int val; if ((val = fcntl(fd, F_GETF...
分类:
其他好文 时间:
2014-07-18 23:38:21
阅读次数:
333
lib/openmax.c#include "apue.h"#include #include #ifdef OPEN_MAXstatic long openmax = OPEN_MAX;#elsestatic long openmax = 0;#endif/* * If OPEN_MAX is i...
分类:
其他好文 时间:
2014-07-18 23:36:31
阅读次数:
279
SOCKET()我们使用系统调用socket()来获得文件描述符:#include#includeint socket(int domain,int type,int protocol);第一个参数domain设置为“AF_INET”。第二个参数是套接口的类型:SOCK_STREAM或SOCK_DG...
分类:
其他好文 时间:
2014-07-18 13:37:18
阅读次数:
330
Socket(套接字),类似文件描述符,三种1、流式套接字(SOCK_STREAM):可以提供可靠的、面向连接的通讯流,它使用TCP协议。TCP保证了数据传输的正确性和顺序性。2、数据报套接字(SOCK_DGRAM):定义了一种无连接的服务,数据通过相互独立的报文进行传输,是无序的,并且不保证可靠,...
分类:
系统相关 时间:
2014-07-17 21:38:22
阅读次数:
362
6月20号给美团的朋友说内推实习生,马上就打过来电话约了时间,刚创业的公司效率就是快。23号晚上电面一面,聊了半个小时,问的问题比较基础但是范围很广,什么是文件描述符?常用对文件描述符操作的函数,dup与dup2,熟悉的信号(sigchld,sigkill,sighup,sigterm,sigint...
分类:
其他好文 时间:
2014-07-16 14:56:13
阅读次数:
285
系统检测工具
tcpdump
tcpdump是一款经典的转包工具,tcpdump给使用者提供了大量的选项,泳衣过滤数据报或者定制输出格式。
lsof
lsof是一个列出当前系统打开的文件描述符的工具。通过它我们可以了解感兴趣的进程打开了哪些文件描述符,或者我们感兴趣的文件描述符被哪些进程打卡了。
nc
nc命令主要被用来快速构建网络连接。...
分类:
系统相关 时间:
2014-07-14 16:16:36
阅读次数:
265
个人学习整理,如有不足之处,请不吝指教。转载请注明:@CSU-Max
文件描述符
每个UNIX进程都有一个文件描述符范围,其大小为0到N,N标志文件描述符的最大值,N的大小取决于UNIX的版本及系统配置。
标准文件描述符
一般在进程运行时前三个文件描述符就已经打开了。
文件描述符 0 : 标准输入
文件描述符 1 : 标准输出...
分类:
系统相关 时间:
2014-07-12 22:41:14
阅读次数:
346
IO复用使得程序能够同时监听多个文件描述符,比如客户端需要同时处理用户输入和网络连接,服务器端需要同时处理监听套接字和连接套接字,select系统调用可以使得我们监听自己感兴趣描述符,可读,可写,异常等事件。select能处理的异常只有带外数据。下面这个程序展示了它的一般用法。
#include
#include
#include
#include
#include //bas...
分类:
其他好文 时间:
2014-07-12 18:53:36
阅读次数:
249