当前位置: 首页 > news >正文

免费网站建设培训学校一个人做网站 知乎

免费网站建设培训学校,一个人做网站 知乎,wordpress注册接口,浏览器下载安装目录一、fork函数二、vfork函数1.函数的原理2.函数的隐患3.解决函数隐患的方法在Linux的进程学习中#xff0c;常使用fork函数来创建子进程#xff0c;但其实还有一个vfork函数也可以创建子进程。但是这两个函数的实现机制不同#xff0c;fork函数使用了写实拷贝技术#x… 目录一、fork函数二、vfork函数1.函数的原理2.函数的隐患3.解决函数隐患的方法在Linux的进程学习中常使用fork函数来创建子进程但其实还有一个vfork函数也可以创建子进程。但是这两个函数的实现机制不同fork函数使用了写实拷贝技术而vfork函数不是这样。 在看本文前需要对虚拟内存有一定的了解因为创建子进程离不开虚拟内存。 一、fork函数 pid_t fork(void); fork函数运用的是写实拷贝技术子进程不但会复制父进程的pcb的信息也会复制父进程的虚拟空间和页表。 所以在刚创建子进程后子进程和父进程映射的是同一块物理内存因此实现了父子进程代码共享。 但是如果子进程需要修改数据比如程序中有一个变量a子进程想要修改a的数据那么系统就会给子进程在物理内存重新开辟一块空间存储a的数据子进程要修改就修改自己的a不要去修改父进程的a。这样就保证了父子进程的数据独有。 二、vfork函数 pid_t vfork(void); 1.函数的原理 vfork与fork相比vfork创建的子进程只复制了父进程的pcb并没有复制虚拟空间和页表。父子进程使用的是同一块虚拟空间和页表因此父子进程映射的是同一块物理内存。 2.函数的隐患 1由于vfrok创建的子进程和父进程共用虚拟空间和页表因此访问的是同一个内存空间那么一旦子进程改变了某个数据父进程的数据同样会随之改变。 2更严重的问题是会导致调用栈混乱。 当程序运行一个函数时就要先将函数压入函数调用栈当运行完毕才会将函数出栈。vfork创建的父子进程共用调用栈当父进程运行A函数时需要把A函数压入函数调用栈如果在A函数还没运行完的时候时间片就用完了就需要切换到子进程。子进程运行的是B函数子进程还没运行完B函数的时候时间片就用完了因此切换到父进程运行。父进程在这个时间片把函数A运行完了因此函数A需要出栈但此时函数调用栈的栈顶是B函数就会将B函数出栈从而造成调用栈混乱。 结合下图来理解 3.解决函数隐患的方法 既然vfork函数如上所述的缺点那么自然要有相应的解决方法。 如果用vfrok函数创建子进程当子进程运行时父进程会被阻塞。父进程被阻塞到什么时候一直到子进程退出或者是子进程进行了程序替换后。这样就可以解决上面的缺点。
http://www.eeditor.cn/news/120060/

相关文章:

  • 惠州网站建设服务商进入秦皇岛最新规定
  • 网站上用什么格式的图片做阿里巴巴的网站的费用
  • 国际网站建设公司广州建站费用
  • python 做网站模块泊头网站制作案例
  • 网站模版上线需要什么意思网站交换链接如何实施
  • 建造个网站花多少钱网站怎么做的精致一点
  • 大连网站搭建与推广向祖国建设者致敬网站
  • 昆山规建设局网站免费在线网站
  • 关于建筑设计的网站免费软件库
  • 阿里巴巴网站建设的功能定位企业wordpress主题下载地址
  • 网站建设企业营销自己怎么做网站空间
  • 深圳网站建设公司招聘电话销售地图标注申请入口免费
  • 石排网站建设军事最新新闻头条
  • 做模具在哪个网站找工作网站规划与设计方向
  • 网站备案 管局审核 需要多长时间企业邮箱地址格式
  • 做网站3年3万社交电商怎么做
  • 网站前置审批专项深圳网站建设公司招聘电话销售
  • 在线解压缩网站网页升级访问中自动跳转
  • 电子商务网站推广怎么做最好的网站建设公司有哪些
  • 怎样自己建个人网站网站由哪些部分组成部分组成
  • 网站下载免费的视频软件网站制作合同注意事项
  • ftp网站后台上传WordPress之后
  • 青岛本地招聘网站深圳小蚁人网站建设
  • 最新电子产品网站模板优化网站公司价格是多少钱
  • 企业网站商城天河建设网站公司
  • 广州网站建设联系电话制作网页软件免费
  • 无锡建设工程质量监督网站锦江会员通app下载
  • wordpress 重定位seo线下培训机构
  • 可以进入的网站建设储蓄卡网站
  • 网站后台首页设计php网站建设与维护