1、系统中的父子进程关系,以及docker是如何处理的这种父子进程关系,线上问题发现,子进程长时间得不到退出。

2、调用system系统调用发生了啥事情,发现大量的页表拷贝。

3、通过shell命令通过tid得到pid

4、如何使用tcpdump看数据包的传输

5、stap中如何得到用户态的栈

6、SIGTERM、SIGKILL、SIGSTOP信号

sigtem是可以覆盖的,但是sigkill和sitstop的不可以截流。

7、如何查看某进程是否单独单独注册了信号处理函数?sigkill函数也是可以被覆盖的吗?在docker中,杀掉shim进程时发现整个容器都死掉了,这不符合进程的继承关系呢!  SIGKILL信号不能被重载,那么kill shim的时候为啥子进程也退出了?是因为什么特殊的fork吗?shim也不是一个容器里的1号进程呀,为啥这里就n

回答:自己想可能有两种解决方案了1)shim自己做成一个pid namespace,在这个namespace下再fork出一个namespace,第二种方案是A->shim->docker container,dockerd中记录着shim和container的对应关系,然后给1号进程发信号,抓trace看下。果然

      containerd-1038  [001] d... 114996.411125: signal_generate: sig=9 errno=0 code=0 comm=tail pid=2622 grp=1 res=0
tail-2622 [001] d... 114996.411157: signal_deliver: sig=9 errno=0 code=0 sa_handler=0 sa_flags=0
tail-2622 [000] d... 114996.435758: signal_generate: sig=17 errno=0 code=262146 comm=systemd pid=1 grp=1 res=0

  这里的1038就是containerd进程下的一个线程,原来是这样管理的进程

【各种技能都会,全栈工程师,每天为自己制定的计划必须全部完成】

一个已经终止、但是其父进程尚未对其进行善后处理(获取终止子进程的有关信息、释放它仍占用的资源)的进程是僵尸进程,fork了大量子进程,除非父进程等待去得子进程的终止状态,不然这些子进程终止后就会变成僵尸进程

8、进程成为僵尸进程会释放所有的fd吗?

在成为僵尸进程的时候,进程仍然保存着进程的,那么到底释放没有呢? 释放掉了

[<ffffffff8108401f>] do_exit+0x75f/0xae0
[<ffffffff81084423>] do_group_exit+0x43/0xb0
[<ffffffff810844a4>] SyS_exit_group+0x14/0x20
[<ffffffff818244f2>] entry_SYSCALL_64_fastpath+0x16/0x71
[<ffffffffffffffff>] 0xffffffffffffffff
【可不可以通过do_exit 0x75f/0xae0看出来到底在哪呢?通过readelf这】

9、readelf这些文件c文件和汇编到底准不准呢?   

10、用户id和有效用户id和设置用户id

用户id就是登录的时候的用户id了,有效用户id,有效用户id是设置在可执行文件上。当执行exec时候,当可执行文件上设置了s位,那么程序是按照可执行的属主来确定实际的文件的可执行权限,并且这个权限会粗放在suid中。这样文件执行起来就很方便了,在程序执行的过程中,程序可以随时剥夺程序的执行权限。那么sudo又干了啥事呢?看下sudo做了啥事情,

-rwsr-xr-x 1 root root 136808 3月  31  2016 /usr/bin/sudo

现在是所以从sudo继承过来就有了root权限了!!!!发现了一件事情:

-rw-rw-r--  1 guest  guest  4096 8月  18 23:35 fileGuest
-rw-rw-r-- 1 guest2 guest2 0 8月 18 23:05 fileGuest2
-rw-rw-r-- 1 hon hon 4096 8月 18 23:35 fileHon
-rw-rw-r-- 1 hon hon 96 8月 18 22:52 Makefile
-rwsrwxr-x 1 guest guest 8960 8月 18 23:33 uid

在上面的文件中,执行uid程序(./uid),uid程序既能访问fileGuest,也能访问fileHon,这说明是uid和euid是一起来决定文件的访问权限了吗?

但是有个奇怪的现象就是sudo ./uid,此时进程的权限是uid=0,euid=1002(guest),然后去访问fileHon发生了错误,如果是uid和euid一起决定对文件的访问权限,为什么uid=0就打不开文件了呢?

所以uid必须完全match才可以执行!!!!!!!root还不行!!!!!!!!!!!!!!好了这个问题到此位置

最新文章

  1. [LeetCode] Range Sum Query 2D - Mutable 二维区域和检索 - 可变
  2. FFRPC应用之Client/Server
  3. hdu 5400 Arithmetic Sequence
  4. SMTP邮件服务器配置
  5. Web网站架构设计
  6. 开发工具安装运行bug总结
  7. Kafka Topic Partition Replica Assignment实现原理及资源隔离方案
  8. 计算两点距离 ios
  9. html file选中图片后 不经过服务器 立刻显示在页面
  10. WINDOWS下安装PHP7出现PHP-CGI无法启动
  11. 第一百二十节,JavaScript事件对象
  12. 201521123056《Java程序设计》 第2周学习总结
  13. Linux下利用expect,不用交互模式,直接登陆远程主机
  14. Spotlight--你不得不用的Mac查询利器
  15. Sql server 经典常用函数
  16. algorithm与numeric的一些常用函数
  17. 实现本地svn目录同步时,服务器的相应目录保持自动同步
  18. MYSQL-8.0.11-WINX64(免安装版)配置
  19. Swift Precondition 预处理
  20. 关于Kafka high watermark的讨论2

热门文章

  1. e+\e-
  2. Docker入门系列02
  3. msys2-x86_64搭建QT Mingw64编译环境
  4. ORA-15032、ORA-15033—Linux环境
  5. 金山WPS面试题
  6. “腾讯WeTest助力《龙珠直播》盘点APP质量问题”
  7. java中的比较:instanceof、equals(hashcode)、==
  8. Java开发工程师(Web方向) - 04.Spring框架 - 第1章.Spring概述
  9. python学习笔记03 --------------程序交互与格式化输出
  10. TW实习日记:第16天