
书本学习
文章平均质量分 84
cogbee
苦B的娃。。。
展开
-
关于vfork和_exit
exit 和_exit的区别是:exit是要做一些操作才进入内核终结的,比如清除缓存之类的。但是_exit()则是立即进入内存终结,不会进行exit该有的操作。这样就出现这样的问题。#include#include#includeint glob = 100;int main(){ pid_t pid; int var; var = 10; if((pid = vfork())原创 2013-03-23 18:32:53 · 1629 阅读 · 1 评论 -
线程特定数据(学习)
1、首先,为什么要使用线程特定数据呢?什么是线程特定数据。这牵涉到重入函数和不可重入函数。重入函数就是在多个进程或者线程中,可以同时进行运行的函数,可重入函数就是不可以同时运行的函数,这个主要是可能多个进程或线程共享了一个变量,这个变量只有一个,这样同时运行的时候,就会出问题了,因为我们不知道这个静态变量具体是存入的什么值,可能刚存入一个值,立马又因为调用这个函数编程另外一个值。更加通俗的说,原创 2013-08-15 21:53:30 · 3440 阅读 · 2 评论 -
Linux命令行一些要点(四)
1、hostname :查看主机名或设置主机名ifconfig----查看或设置网络接口(与windows下ipconfig相似,注意命令是不一样的哦),主要作用是配置或显示网络设备(网络适配器,NIC),配置当前网络借口的配置信息。改变ip地址,用到的命令如下ifconfig eth0 192.168.0.104 netmask 255.255.255.0 broadcast 192原创 2013-08-28 10:21:36 · 1060 阅读 · 0 评论 -
磁盘排序(编程珠玑第一章)
原文地址:http://www.cnblogs.com/sooner/archive/2013/03/06/2946953.html“设计者确定其设计已经达到了完美的标准不是不能再添加任何问题,而是不能再减少任何问题”,程序员应该以此为标准。。。怎样给一个磁盘文件排序?问题描述:输入:一个最多含有n个不相同的正整数的文件,其中每个数都小于等于n,且n=10^7。输出转载 2013-08-31 15:31:49 · 932 阅读 · 0 评论 -
编程珠玑1.9题的别人的分析加上愚见
分析如下:来源http://blog.youkuaiyun.com/cattylll/article/details/7056898题目: One problem with trading more space to use less time is that initializing the space can itself take a great deal of time. Show how t转载 2013-09-03 22:51:09 · 835 阅读 · 1 评论 -
CRC 校验(循环冗余检测)
这个CRC在大一的时候就已经学习了,当时看的还很懂的样子,但是现在又什么都忘记了。于是找来《计算机网络》重新温习一下,同时也做一个笔记,方便以后查阅。CRC编码也称为多项式编码。在网络传输过程中,在帧的结构中,有一个CRC校验。CRC编码操作如下:假如我们有一个长度为d比特的数据D,发送节点要发送到接收节点。发送方和接收方必须事先商量一个r+1比特的模式,称为生成多项式,我们将其表示为原创 2013-09-21 19:09:55 · 1920 阅读 · 0 评论 -
规范法问题
读书笔记:规范化是指将数据用最简单最基本的形式进行规范化描述的过程。比如,Brayn有很多种表示方法,包括,Brayn,BrAyN,Br%79an(%79是y的十六进制)等等。有不止一种表示方法来表示。因为规范化的问题这就带来了一些很大的问题。黑客也常用这些来欺骗解析器。1、‘/’和‘\’一样能够代表同样的路径。你在自己的电脑上输入C:\Windos,和C:/Windos会使同一个目录。有原创 2013-10-08 21:15:06 · 1030 阅读 · 0 评论 -
Linux内核进程切换
Linux内核进程切换 本文主要参考了Understanding The Linux Kernel 和水木精华区的分析进程切换宏 switch_to 。感谢相关的作者!本文中有部分内容直接从上面提到的文章中重复,仅仅是为了方便大家阅读。本文中提到的所有内核代码可以到Linux Cross Reference上查阅。欢迎转载本文,转载请保留这份声明。 本文仅讨论内核进程的转载 2013-10-25 16:26:21 · 858 阅读 · 0 评论 -
信号的相关函数
本文 是一篇学习文章,学习的《unix高级环境编程》1、信号集,它的处理跟5个函数紧密相关。 信号集是一个能表示多个信号的数据类型,sigset_t set ;set即一个信号集。 既然是一个集合,就需要对集合进行添加/删除等操作。 int sigemptyset(sigset_t *set); 将set集合置空 int sigfillset(sig原创 2014-01-10 08:52:20 · 2269 阅读 · 0 评论 -
TCp 11中状态转换图
首先上面两个图。网上挺多的哦,来说说几个我自己的理解看法吧。首先第一个图从上往下,主动打开,发送SYN分节,这个在下面这个图也很好展现出来。我主要说同时打开的情形。当客户在syn-sent状态,接收到syn,这个时候,实际上就是,客户发送一个请求要连接服务器,碰巧服务器这个时候也是发送了一个请求要连接客户端。这个时候,你要想成,客户端即将变成服务器了。所以,这个时候是会变成SYN-原创 2014-01-10 15:18:13 · 1605 阅读 · 0 评论 -
ping and traceroute(tracert)
1、ping程序简介这个原创 2014-06-26 10:35:16 · 3613 阅读 · 0 评论 -
UDP
1、UDP是简单的面向数据的运输层协议。原创 2014-06-28 10:04:15 · 1241 阅读 · 0 评论 -
Linux命令行的一些要点(三)
1、显示用户在线时间的统计信息ac,基于系统wtmp文件中记录的用户登录和退出时间得到的用户的总的在线时间。所以防止wtmp文件过大,可以适当进行删除。2、adduser 新建用户账户,需要使用passwd命令设置账户密码才能使用。finger 显示用户的有关信息。finger还可以查看远程计算机上的用户信息。passwd 设置密码。passwd还可以用来锁定和解锁用户。比原创 2013-08-27 10:37:13 · 775 阅读 · 0 评论 -
linux 命令行一些要点(二)
1、压缩文件 (压缩,解压,查看压缩文件)bzip2 是一个无损压缩,采用的Burrow Wheller块状有序文本压缩算法和Huffman编码,bzip2能将文件压缩到原来的10%~12%。因此得到广泛运用。bzip2可以对任何普通文件进行压缩,也可以对其他压缩工具压缩的文件进行二次压缩,但是不能对xxx.bz2的压缩文件进行二次压缩(你可以修改一下后缀,这样就可以继续压缩,也就是说原创 2013-08-26 15:13:41 · 1727 阅读 · 0 评论 -
linux 命令行一些要点(学习)(一)
1、linux下以源代码的形式安装新程序,第一步就是对安装文件进行配置,用户可以查看系统变量$?的值来检查配置是否正确。返回0 就是正确的,否则说明配置有问题。echo $?目的是用来用来返回上一条执行的结果!2、wc testfile :统计testfile的行数,单词数,字符数。如果需要具体只看某一项的话,可以在wc后面加 -c -m -w 等等.3、iconv,转换文件编码方式。原创 2013-08-25 16:09:26 · 934 阅读 · 0 评论 -
linux下作业控制
有3个特殊字符可使终端驱动程序产生信号,经常使用:中断字符:(DELETE或Ctrl+C),产生SIGINT。退出字符:(Ctrl + \)产生SIGQUIT。挂起字符:(Ctrl+Z)产生SIGTSTR。我们在linux下,让一个程序后台启动,要加上一个&。比如$ cat > test & 上面的程序表示在后台启动,从标准输入流读。键入回车,原创 2013-03-24 11:20:08 · 5304 阅读 · 0 评论 -
使用telnet 进行http测试
Http协议详解版本二1. 基础概念篇1.1 介绍 HTTP是Hyper Text Transfer Protocol(超文本传输协议)的缩写。它的发展是万维网协会(World Wide Web Consortium)和Internet工作小组IETF(Internet Engineering Task Force)合作的结果,(他们)最终发布了一系列的RFC转载 2013-05-17 15:49:08 · 27590 阅读 · 1 评论 -
关于CSpreadSheet的若干问题
1、对于微软的excel,用程序操作的话,有封装好的类。就是CSpreadSheet.h 和 CSpreadSheet.cpp。这个在优快云上面可以下载。具体地址:http://download.youkuaiyun.com/detail/happyeggplant/2162615。2、关于CSpreadSheet这个封装类的使用,有一个比较全的地址。http://www.vckbase.com/ind原创 2013-05-04 23:23:17 · 6879 阅读 · 8 评论 -
socket 结构体一些问题
今天遇到了socket传送结构体的问题。于是网上搜刮了一些idea。但是在具体编程中还是遇见了一些问题,在此记录一下。我的结构体是这样的:typedef struct info{ int index; int tag; int len; char *content;}原创 2013-05-23 21:22:43 · 783 阅读 · 0 评论 -
关于多进程共享一个链表的问题
最近遇见一个麻烦事情,就是多个进程之间共享一个链表,怎么办?最开始我的想法是共享内存+信号量机制。就是把链表的头结点共享,然后大家都可以通过这个头结点来对这个链表进行操作了。但是事实是错误额。运行程序发现共享不了链表。那该怎么办呢?网上查资料,有很多这样的问题。解决办法也是多种多样,但是对于我来说都是不能满足自己的要求。在这儿总结一下网上的说法吧。1、改用线程。线程可以共享,毕竟他们是原创 2013-05-25 08:49:06 · 4006 阅读 · 0 评论 -
wait 和 waitpid 区别
1、当一进程终止的时候,如果想要知道终止进程的一些信息。我们可以使用函数wait 和 waitpid。包涵的头文件#includesys/types.h>#include函数原型如下:pid_t wait (int * status);pid_t waitpid(pid_t pid,int * status,int options);status 是一个整形指针,存原创 2013-06-14 15:05:29 · 1506 阅读 · 0 评论 -
linux 网络编程与 windows 网络编程
最近写了一个程序,涉及到在windows下运行的一个程序到运行在linux下的服务器取出数据。一开始还真没有适应过来。下面说说我遇见的一些问题。1、windows下connect不成功。最开始也是不清楚哪里出错,程序莫名其妙就在这个connect断下,而且会花费很长的时间在connect这一句停留很长时间才会跳到下一句。于是找错。函数GetLastError。输出的是10065.10065原创 2013-06-06 15:07:54 · 1476 阅读 · 0 评论 -
ftp xferlog日志说明
日志格式基本上按照规范都是一样的。设置了xferlog_std_format=YES。下面给出在/var/log/xferlog文件的一个格式:Sun Jun 16 12:23:53 2013 1 127.0.0.1 12 /pub/dd b _ o a 1 ftp 0 * cSun Jun 16 12:27:58 2013 1 192.168.1.100 12 /pub/dd a _ o原创 2013-06-17 08:53:41 · 14114 阅读 · 0 评论 -
NFS 服务器初探
1、首先知道NFS是什么?为什么会有NFS出现,这个网上书上很多了。NFS(Network File System)中文名:网络文件系统。他可以使安装了不同操作系统的计算机之间进行数据共享。有效提高资源的利用率,节省本地磁盘空间,方便集中管理。NFS是采用的C/S模式。其他系统在挂载了这个共享目录之后就可以像访问本地目录一样访问这个文件目录了。NFS支持的功能很多,不同功能由不同的程序来执原创 2013-06-17 11:05:05 · 861 阅读 · 0 评论 -
ftp安装配置运行(转写)
最开始,我在网上下载了vsftpd的源码进行编译,make的时候发现除了一大堆的问题。网上看看,发现是几个包没有安装,这是因为依赖包(libpam0g-dev libcap-dev libwrap0-dev libssl-dev )没有安装。安装好了之后就可以make了。当然我没有选这一条路,具体行不行不知道,但是估计是可以的。我的虚拟机是CentOs ,我用了另外一个方法安装vsftpd。y原创 2013-06-16 20:49:43 · 4065 阅读 · 0 评论 -
close 与 shutdown 《Unix网络编程》
1、close函数关闭套接口,终止TCP连接。#includeint close(int sockfd);默认情况下,close会将一个tcp连接终止,立即返回到调用进程。不能在这个套接口上面进行read和write。但是,若该套接口缓冲区已经有一些数据了,TCP将尝试将这些数据发送到对端,发送完毕就是正常的TCP连接终止序列。就是TCP终止的4次握手。close有一个需要注意原创 2013-06-19 10:01:39 · 1113 阅读 · 0 评论 -
入口点
入口点是应用程序能够接受输入的地方,对于攻击者来说,入口点是尝试突破的最佳位置。因此搞清楚有哪些入口点,入口点的安全级别等是非常有必要的。常见入口点:1、文件文件包含用户指定的数据,或程序提交的数据。很多文件可能会以xml这种中间格式存储,或者让用户可以选择文件上传等等。我们常常只是关注了文件的内容,忽略了与这个文件相关的其他数据,比如权限等。攻击者比较感兴趣的是:文件包含敏感原创 2013-07-09 09:58:14 · 1235 阅读 · 0 评论 -
我的sulley安装过程
好了,最开始是在freebuf上看到的原创 2014-06-26 17:46:08 · 7120 阅读 · 1 评论