logo
分类于: 编程语言 计算机基础 互联网 云计算&大数据 人工智能

简介

理解Unix进程

理解Unix进程 7.4分

资源最后更新于 2020-03-29 05:06:40

作者:〔美〕Jesse Storimer

译者:门佳

出版社:出版社人民邮电出版社

出版日期:2013-06

ISBN:9787115316899

文件格式: pdf

标签: 网络 计算机 编程 操作系统

简介· · · · · ·

本书从Unix编程的基础概念着手,采用循序渐进的方法,详细介绍了Unix进程的内部工作原理。《理解Unix进程》提供的许多简单而强大的技术,能够帮助Web开发人员深入了解Unix系统的并发性、守护进程、生成进程(spawning process)与信号等。同时,读者也可以使用这些技术和方法编写并调试自己的服务器。此外,《理解Unix进程》附录部分也涉及了一些流行的Ruby项目,让读者进一步了解如何巧妙运用Unix进程。Jesse Storimer,高级软件工程师与自出版作家,服务于美国电子商务方案提供商Shopify。痴迷于编程,编程之余喜欢阅读、园艺以及徒步旅行等户外运动。除了经常写技术博客文章外,他还著有Working with TCP Sockets, Working with Ruby Threads两本颇有影响力的电子书。

想要: 点击会收藏到你的 我的收藏,可以在这里查看

已收: 表示已经收藏

Tips: 注册一个用户 可以通过用户中心得到电子书更新的通知哦

目录

  1. 致谢
  2. 第1章 引言
  3. 第2章 基础知识
  4. 2.1 干嘛要在意?
  5. 2.2 驾驭神力!
  6. 2.3 概述
  7. 2.4 系统调用
  8. 2.5 命名法,wtf(2)
  9. 2.6 进程:Unix之本
  10. 第3章 进程皆有标识
  11. 3.1 交叉参考
  12. 3.2 实践领域
  13. 3.3 系统调用
  14. 第4章 进程皆有父
  15. 4.1 交叉参考
  16. 4.2 实践领域
  17. 4.3 系统调用
  18. 第5章 进程皆有文件描述符
  19. 5.1 万物皆为文件
  20. 5.2 描述符代表资源
  21. 5.3 标准流
  22. 5.4 实践领域
  23. 5.5 系统调用
  24. 第6章 进程皆有资源限制
  25. 6.1 找出限制
  26. 6.2 软限制与硬限制
  27. 6.3 提高软限制
  28. 6.4 超出限制
  29. 6.5 其他资源
  30. 6.6 实践领域
  31. 6.7 系统调用
  32. 第7章 进程皆有环境
  33. 7.1 这是个散列吗?
  34. 7.2 实践领域
  35. 7.3 系统调用
  36. 第8章 进程皆有参数
  37. 8.1 这是个数组!
  38. 8.2 实践领域
  39. 第9章 进程皆有名
  40. 9.1 进程命名
  41. 9.2 实践领域
  42. 第10章 进程皆有退出码
  43. 如何退出进程
  44. 第11章 进程皆可衍生
  45. 11.1 Luke,使用fork(2)
  46. 11.2 多核编程?
  47. 11.3 使用block
  48. 11.4 实践领域
  49. 11.5 系统调用
  50. 第12章 孤儿进程
  51. 12.1 失控
  52. 12.2 弃子
  53. 12.3 管理孤儿
  54. 第13章 友好的进程
  55. 13.1 对CoW好点
  56. 为何不可?
  57. 13.2 MRI/RBX用户
  58. 第14章 进程可待
  59. 14.1 看顾(Babysitting)
  60. 14.2 Process.wait一家子
  61. 14.3 使用Process.wait2进行通信
  62. 14.4 等待特定的子进程
  63. 14.5 竞争条件
  64. 14.6 实践领域
  65. 14.7 系统调用
  66. 第15章 僵尸进程
  67. 15.1 等待终有果
  68. 15.2 僵尸长什么样子?
  69. 15.3 实践领域
  70. 15.4 系统调用
  71. 第16章 进程皆可获得信号
  72. 16.1 捕获SIGCHLD
  73. 16.2 SIGCHLD与并发
  74. 16.3 信号入门
  75. 16.4 信号来自何方?
  76. 16.5 信号一览
  77. 16.6 重定义信号
  78. 16.7 忽略信号
  79. 16.8 信号处理程序是全局性的
  80. 16.9 恰当地重定义信号处理程序
  81. 16.10 何时接收不到信号?
  82. 16.11 实践领域
  83. 16.12 系统调用
  84. 第17章 进程皆可互通
  85. 17.1 我们的第一个管道
  86. 17.2 管道是单向的
  87. 17.3 共享管道
  88. 17.4 流与消息
  89. 17.5 远程IPC?
  90. 17.6 实践领域
  91. 17.7 系统调用
  92. 第18章 守护进程
  93. 18.1 首个进程
  94. 18.2 创建第一个守护进程
  95. 18.3 深入Rack
  96. 18.4 逐步将进程变成守护进程
  97. 18.5 进程组和会话组
  98. 18.6 实践领域
  99. 18.7 系统调用
  100. 第19章 生成终端进程
  101. 19.1 fork + exec
  102. 19.2 exec的参数
  103. Kernel#system
  104. Kernel#`
  105. Process.spawn
  106. IO.popen
  107. Open3
  108. 19.3 实践领域
  109. 19.4 系统调用
  110. 第20章 尾声
  111. 20.1 抽象
  112. 20.2 通信
  113. 20.3 再会,而非永别
  114. 附录A Resque如何管理进程
  115. A.1 架构
  116. A.2 利用进程衍生进行内存管理
  117. A.3 何必自找麻烦?
  118. A.4 难道垃圾收集器就不帮我们清理一下?
  119. 附录B Unicorn如何收割工作进程
  120. B.1 收割什么?
  121. B.2 总结
  122. 附录C preforking服务器
  123. C.1 高效的内存利用
  124. C.1.1 多个Mongrel
  125. C.1.2 多个Unicorn
  126. C.2 高效的负载均衡
  127. C.3 高效的系统管理
  128. preforking服务器的基础样例
  129. 附录D Spyglass
  130. D.1 Spyglass的体系
  131. D.2 启动Spyglass
  132. D.3 请求抵达之前
  133. D.4 建立连接
  134. D.5 万事皆毕
  135. D.6 启程