ptrace和wait的理解 (ptrace监控进程)

ptrace(追踪控制另一进程)wait, waitpid, waitid(等待进程状态改变) 这里有一个问题,就是当子进程调用PTRACE_TRACEME或者父进程调用PTRACE_ATTACH之后,在什么情况下会将子进程stop(从而将控制权交给父进程)呢?要回答这个问题,首先要知道当我们使用...

2017-07-11 16:51:47

阅读数 905

评论数 0

ubuntu装jdk

sudo add-apt-repository ppa:webupd8team/javasudo apt-get updatesudo apt-get install oracle-java8-installersudo apt-get install oracle-java8-set-defau...

2015-10-06 23:23:56

阅读数 413

评论数 0

【linux】用户空间(0-3G):进程私有,内核空间(3G-4G):所有进程共享

每个进程有各自的私有用户空间(0~3G),这个空间对系统中的其他进程是不可见的。最高的1GB字节虚拟内核空间则为所有进程以及内核所共享

2014-09-14 13:22:06

阅读数 1621

评论数 0

进程UID : 父进程(UID/setUID) / 加载文件的SUID

2013-12-09 19:44:55

阅读数 540

评论数 0

读懂diff

diff是Unix系统的一个很重要的工具程序。 它用来比较两个文本文件的差异,是代码版本管理的基石之一。你在命令行下,输入:   $ diff diff就会告诉你,这两个文件有何差异。它的显示结果不太好懂,下面我就来说明,如何读懂diff。 一、diff...

2012-11-09 11:21:57

阅读数 332

评论数 0

socket=IP+端口+协议(传输层)

2012-11-07 15:07:59

阅读数 301

评论数 0

【+】Linux Socket编程

1、网络中进程之间如何通信? 2、Socket是什么? 3、socket的基本操作 3.1、socket()函数 3.2、bind()函数 3.3、listen()、connect()函数 3.4、accept()函数 3.5、read()、write...

2012-11-07 13:50:03

阅读数 416

评论数 0

一个epoll例子

#include   #include   #include   #include   #include   #include   #include   #include   #include   using namespace std;  #define MAX_EVENTS 500  stru...

2012-11-06 19:33:51

阅读数 457

评论数 0

Linux 解压命令

.tar  解包:tar xvf FileName.tar 打包:tar cvf FileName.tar DirName (注:tar是打包,不是压缩!) ——————————————— .gz 解压1:gunzip FileName.gz 解压2:gzip -d FileName...

2012-05-09 16:04:14

阅读数 334

评论数 0

linux 主目录 配置文件

用户目录下的配置文件通常使用的 rc 和 .(点)文件 1、~/.bash_login 请参考“man bash”。如果~/.bash_profile 不存在,bash 则将 ~/.bash_login 作为 ~/.bash_profile 处理。 2、~/.bash_logout 请参考“m...

2012-04-27 11:04:47

阅读数 993

评论数 0

Linux的.a .so和.o文件

“LINUX下只有.o、.a和.so”      .o、.a、.so文件都是Linux下的程序函数库,即编译好的可以供其他程序使用的代码和数据 优点:程序模块化,容易重新编译,方便升级。 分类:静态函数库(对应.a文件)、共享函数库(对应.so文件,类似于Windows的dll文件)、动态加...

2012-03-22 17:29:38

阅读数 487

评论数 0

ptrace

ptrace系统调用给予了一个进程控制调试另外一个进程的能力。 当一个进程处于被调试状态后, 1)所有发往该进程的信号都会导致该进程处于stopped状态,父进程此时调用wait系统调用会直接返回,并且WIFSTOPPED(status)为真,通过WSTOPSIG(status)可以取得该信号...

2012-02-21 11:15:59

阅读数 959

评论数 0

Linux中ELF格式 可执行文件+动态链接器 的加载

两种加载方式 (1)加载可执行文件,通过PT_INTERP加载动态链接器 (2)直接加载动态链接器,再由其加载可执行文件 On a typical ELF system such as Linux, the kernel is normally responsible for...

2012-02-20 15:46:02

阅读数 781

评论数 0

dup和dup2函数

int dup2(int fd):复制(返回)文件句柄fd int dup2(int fd1, int fd2):复制句柄fd1到fd2上,返回句柄fd2 int main(void) { int fd, save_fd; char msg[] = "Thi

2011-09-26 10:26:43

阅读数 467

评论数 0

内核对象管理:Slab,Slub

http://www.ibm.com/developerworks/cn/linux/l-cn-slub/

2011-08-31 10:22:10

阅读数 485

评论数 0

Linux(内核和用户态的)动态内存管理

http://www.ibm.com/developerworks/cn/linux/l-cn-slub/ 内核对象缓冲区管理 Linux 内核在运行过程中,常常会需要经常使用一些内核的数据结构(对象)。例如,当进程的某个线程第一次打开一个文件的时候,内核需要为该

2011-08-29 17:12:20

阅读数 1706

评论数 0

GNU (内部)make函数

<br /><br />GNU make的函数提供了处理文件名、变量、文本和命令的方法。使用函数我们的Makefile可以书写的更加灵活和健壮。可以在需要的地方地调用函数来处理指定的文本(需要处理的文本作为函数的参数),函数的在调用它的地方被替换为它的处理结果。函数调用(引...

2011-05-06 10:23:00

阅读数 819

评论数 0

提示
确定要删除当前文章?
取消 删除
关闭
关闭