2015年11月23日

linux 进程学习笔记-进程退出/终止进程

摘要: Ÿ 退出/终止进程 void _exit(int status) 与 void exit(int status) 这两个函数都是让进程退出, 参数status表示进程将以何种状态退出,在中预定义了一些状态,比如EXIT_SUCCESS(值为0)表示以成功状态退出,EXIT_FAILURE(值为1)表... 阅读全文

posted @ 2015-11-23 14:32 zyz913614263 阅读(466) 评论(0) 推荐(0) 编辑

linux 进程学习笔记-等待子进程结束

摘要: Ÿ 等待子进程结束 pid_t waitpid(pid_t pid, int *stat_loc, int options) 另外有一个函数叫wait,其相当于 waitpid(-1, &status, 0) 大家经常看到的关于waitpid的经典例子是:你下载了某个软件的安装程序A,其在安装即将结... 阅读全文

posted @ 2015-11-23 14:31 zyz913614263 阅读(3960) 评论(0) 推荐(0) 编辑

linux 进程学习笔记-进程跟踪

摘要: 进程跟踪 long ptrace(enum __ptrace_request request, pid_t pid, void *addr, void *data); Linux用ptrace来进行进程跟踪,就跟我们平时用GDB debug一样,它允许一个进程去跟踪和控制另外一个进程。当被跟踪进程有信号发生时,被跟踪进程会被暂停下来,其内存空间变得可读写,跟踪它的进程可以选择是否忽略该信号... 阅读全文

posted @ 2015-11-23 14:31 zyz913614263 阅读(1159) 评论(0) 推荐(0) 编辑

linux 进程学习笔记-暂停进程

摘要: Ÿ 暂停进程 int pause() 其会挂起当前进程直到有信号来唤醒或者进程被结束。 随便提一下,如果你仅仅需要简单地暂停一下(press any key to continue...), 可以使用 system("pause")这个系统调用,甚至是getch()之类的。 下面这个demo有点晦... 阅读全文

posted @ 2015-11-23 14:31 zyz913614263 阅读(440) 评论(0) 推荐(0) 编辑

linux 进程学习笔记-进程pipe管道

摘要: 所谓“进程间通信(IPC,inter-process communication)”,按照其目的讲就是让进程之间能够“共享数据”,“传输数据”,“事件通知”等,我所知道的一共有“管道” “信号” “消息队列(报文)” “共享内存” “套接字” 这几种方式。 这里先看看“管道” 可以将管道想... 阅读全文

posted @ 2015-11-23 14:30 zyz913614263 阅读(1054) 评论(0) 推荐(0) 编辑

linux 进程学习笔记-进程信号sigal

摘要: 信号(或软中断)是在软件层次上对中断的一个模拟,其运行在“用户空间”,一个进程对另外一个或几个进程通过发送信号来实现异步通信。当接收进程接收到信号后,其可以注册一下处理函数来说对这些信号进行处理(也可以选择忽略该信号或者采用系统默认的处理方式)。 我看可以通过“kill -l”命令来查看系统支持的信... 阅读全文

posted @ 2015-11-23 14:29 zyz913614263 阅读(1022) 评论(0) 推荐(0) 编辑

linux 进程学习笔记-named pipe (FIFO)命名管道

摘要: 与“无名管道”不同的是,FIFO拥有一个名称来标志它,所谓的名称实际上就是一个路径,比如“/tmp/my_fifo”,其对应到磁盘上的一个管道文件,如果我们用file命令来查看其文件类型的话,会得到如下输出:my_fifo: fifo (named pipe) 为了简化对FIFO的理解,我们可以这样... 阅读全文

posted @ 2015-11-23 14:29 zyz913614263 阅读(921) 评论(0) 推荐(1) 编辑

linux 进程学习笔记-消息队列messagequeue

摘要: 可以想象,如果两个进程都可以访问同一个队列:其中一个进程(sender)向其中写入结构化数据,另外一个进程(receiver)再从其中把结构化的数据读取出来。那么这两个进程就是在利用这个队列进行通信了,这个队列也就称为消息队列(message queue)。 消息队列有system V和POSIX两... 阅读全文

posted @ 2015-11-23 14:27 zyz913614263 阅读(1022) 评论(0) 推荐(0) 编辑

linux 进程学习笔记-共享内存

摘要: 如果能划定一块物理内存,让多个进程都能将该内存映射到其自身虚拟内存空间的话,那么进程可以通过向这块内存空间读写数据而达到通信的目的。另外,和消息队列不同的是,共享的内存在用户空间而不是核空间,那么就不存在“用户空间和内核空间之间数据复制”的问题,这会减少不少开销。 由于不同进程都可能向同一个空间读写... 阅读全文

posted @ 2015-11-23 14:26 zyz913614263 阅读(354) 评论(0) 推荐(0) 编辑

TCP协议与流通信

摘要: 作者:Vamei 出处:http://www.cnblogs.com/vamei 欢迎转载,也请保留这段声明。谢谢!TCP(Transportation Control Protocol)协议与IP协议是一同产生的。事实上,两者最初是一个协议,后来才被分拆成网络层的IP和传输层的TCP。我们已经在U... 阅读全文

posted @ 2015-11-23 13:36 zyz913614263 阅读(451) 评论(0) 推荐(0) 编辑

php 中文字符串截取

摘要: 直接使用PHP函数substr截取中文字符可能会出现乱码,主要是substr可能硬生生的将一个中文字符“锯”成两半。解决办法:1、使用mbstring扩展库的mb_substr截取就不会出现乱码了。2、自己书写截取函数,但效率不如用mbstring扩展库来得高。3、如果仅是为了输出截取的串,可用如下... 阅读全文

posted @ 2015-11-23 13:36 zyz913614263 阅读(2297) 评论(0) 推荐(0) 编辑

perl 语言学习总结

摘要: 1.#!/usr/bin/perl -w 内建警告信息,Perl发出警告 2.字符串 . 连接符 3.重复次数 "fred" x 3 4.字符串与数字之间的自动转换 5.$变量 赋值 $fred =17; + += *= .= not and or xor 6.print 输出 7.比较字符 数值 == != = 字符串 eq ne lt gt le ge 8... 阅读全文

posted @ 2015-11-23 13:35 zyz913614263 阅读(230) 评论(0) 推荐(0) 编辑

php设置编码格式的方法

摘要: a. 如果欲使用gb2312编码,那么php要输出头:header(“Content-Type: text/html; charset=gb2312"),静态页面添加,所有文件的编码格式为ANSI,可用记事本打开,另存为选择编码为ANSI,覆盖源文件。b. 如果欲使用utf-8编码,那么php要输出... 阅读全文

posted @ 2015-11-23 13:34 zyz913614263 阅读(969) 评论(0) 推荐(0) 编辑

linux 使用总结

摘要: shell 简单的实现守护进程 单纯的使用 &命令 + ctrl+D退出终端 原理: 关闭终端有两种方式,一种是点叉,这时候,你关闭的是gnome-terminal这个进程,而Bash是它的子进程,它会将Bash杀死,而Bash的所有子进程都会因为 父进程死了而同时死掉,所以你直接点叉会导致firefox被关掉。而如果你是在终端里输exit命令或者ctrl-d,实际上是Bash自己退出,b... 阅读全文

posted @ 2015-11-23 13:34 zyz913614263 阅读(241) 评论(0) 推荐(0) 编辑

浅析linux 下shell命令执行和守护进程

摘要: 说下几种方式的区别第一种和第二种没有什么区别,两种方式都需要提前赋予脚本以执行权限。第三种是把脚本当做bash的调用来处理,所以,脚本不需要有执行权限就可以执行。前三种方式都是在当前shell中打开一个子shell来执行脚本内容,当脚本内容结束,则子shell关闭,回到父shell中。第四种是使脚本 阅读全文

posted @ 2015-11-23 13:33 zyz913614263 阅读(2203) 评论(1) 推荐(0) 编辑

linux 进程学习笔记-信号semaphore

摘要: 信号灯(信号量)不是进程通信手段,其是用于控制和协调在进程间通信过程中的共享资源访问,就如同互斥锁(两者的区别可以参考这里) 可以将简单地将信号灯想象成一个计数器,初始时计数器值为n(有n个资源可供使用),当进程占用资源时计数器减1,资源被释放时计数器加1,没有资源可用时计数器为0。 如果资源只用“... 阅读全文

posted @ 2015-11-23 13:31 zyz913614263 阅读(432) 评论(0) 推荐(0) 编辑

PHP实现简单爬虫-抓取网页url

摘要: \'\"\ ]*).*?>/'; $result = preg_match_all($reg_tag_a, $web_content, $match_result); if ($result) { return $match_result[1]; } } /** * ... 阅读全文

posted @ 2015-11-23 13:30 zyz913614263 阅读(917) 评论(0) 推荐(0) 编辑

mysql修改初始密码

摘要: 通过MySQL命令行,可以修改MySQL数据库的密码,下面就为您详细介绍该MySQL命令行,如果您感兴趣的话,不妨一看。格式:mysqladmin -u用户名 -p旧密码 password 新密码1、给root加个密码ab12。首先在DOS下进入目录mysql\bin,然后键入以下命令mysqlad... 阅读全文

posted @ 2015-11-23 13:29 zyz913614263 阅读(384) 评论(0) 推荐(0) 编辑

linux命令学习笔记(62)-curl命令-url下载工具

摘要: linux curl是一个利用URL规则在命令行下工作的文件传输工具。它支持文件的上传和下载,所以是综合传输工具,但按传统,习惯称url为下载工具。一,curl命令参数,有好多我没有用过,也不知道翻译的对不对,如果有误的地方,还请指正。-a/--append 上传文件时,附加到目标文件-A/--u... 阅读全文

posted @ 2015-11-23 13:28 zyz913614263 阅读(345) 评论(0) 推荐(0) 编辑

linux sed命令详解

摘要: 简介sed 是一种在线编辑器,它一次处理一行内容。处理时,把当前处理的行存储在临时缓冲区中,称为“模式空间”(pattern space),接着用sed命令处理缓冲区中的内容,处理完成后,把缓冲区的内容送往屏幕。接着处理下一行,这样不断重复,直到文件末尾。文件内容并没有 改变,除非你使用重定向存储输... 阅读全文

posted @ 2015-11-23 13:27 zyz913614263 阅读(231) 评论(0) 推荐(0) 编辑

导航