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

做网站的公司 苏迪网站建设需要ui吗

做网站的公司 苏迪,网站建设需要ui吗,好的排版设计网站,phpwind 企业网站提示:以下是本篇文章正文内容,下面案例可供参考 一、程序替换的原理 我们可以创建子进程通过程序替换,来执行不同的程序。程序替换不会重新创建子进程,我们通过程序替换函数,内核将磁盘中的可执行程序和数据加载到内存…

 


提示:以下是本篇文章正文内容,下面案例可供参考

一、程序替换的原理

4420d37a84ed427e82c795e156341a8d.png

我们可以创建子进程通过程序替换,来执行不同的程序。程序替换不会重新创建子进程,我们通过程序替换函数,内核将磁盘中的可执行程序和数据加载到内存,这个加载的过程将该进程的代码和数据替换掉。那内核怎么知道替换的程序位置,因为有程序计数器。那怎么知道要执行程序的开始位置呢,其实可执行程序也是有格式的(ELF),可以找到可执行程序的入口地址。

be36a0bcaa94474f81ab117cdc6b1227.png

(子进程)程序替换后,就不会执行后面的代码了.比如exit(0).

bc83c5854a0142fdb17f89759cb753c9.png

二、程序替换函数

6e042b7ad6644c62b4e313c61510f6a8.png

(1)execl

82682d428c794fe1aa7515c205a9d1b5.png

这个函数参数是个可变参数,可以接收多个参数,最后要以NULL结尾(可以简单理解为压栈结束,其中涉及到函数栈帧的问题)。

第一个参数是程序文件的路径,程序也是个文件,它存储在磁盘中,后面的参数就是执行这个程序需要的参数。

67bf95faec064ea29dc74be717144a2a.png

小技巧:后面的参数,之前怎么在命令行怎么执行命令,就怎么传参。 

(2)execlp05100e8904f0482ab28d8290c752893a.png

p代表path,它会到环境变量中查找程序,l是代表list就是列表。 

b556a4eaa2af4eaea9cd9c8569da130a.png

faf88e83736c4ff1a462fecbb52d8c9b.png

这里我们可能有个疑问,两个ls.其实它们的作用不同的,第一个查找的程序文件是哪个,第二个是作为参数使用。

(3)execvp

d37a14565814423c818d2f3d63e8eabe.png

这个函数就没有可变参数了,p表示它会根据你的文件名,去环境变量path中查找,v就是数组的意思。

第一个参数是可执行程序的文件名,第二个是字符串数组(存储执行程序需要的参数),最后一个元素必须为NULL。

b16d0cf1769845c2a73e1b4dbfe240d2.png c990129cd8d849a0a0ffe233f07fbcb8.png

 (4) execv

d83af3889f144cf68bbbebad98485113.png

这个和 execvp不同的是,这个要我们自己写路径,(它没有p不会到环境变量下找)。

00d9fbbb0aba4f0cbdc0251cf25764a2.png


(5) execle与execvpe

 41dc9483572241a1916f6076c6c72a66.png8dc8b629ec68416b8725147df66857d2.png

 这里的e表示环境变量的意思,可以选择要哪个环境变量表,如果我们不用系统的环境变量,那我们就可以使用这个函数直接覆盖掉原来的环境变量。

验证:先自己建一个环境变量的表argv2,然后程序替换后打印所有的环境变量,我们可以看到环境变量已经被覆盖了,新程序的environ指针也指向了这个新的环境变量表。

655757798e4b4a768ae853cbe5349b1c.png

227de4acc586410ea1952e23a455d827.png

034ac1d988204dc5b8b0b75f731edf87.png

三.系统调用接口---execve

4ff2bf5e93c8490bbec454be86141dbf.png

这个是系统调用接口,以上的都是函数都是对这个系统调用的封装,就是说不管你选择哪种以上的程序替换,最终都会转化为这个系统调用。其实也挺容易理解的,程序替换是涉及到内核的,为了保证安全性,操作系统提供了系统调用,一旦涉及了系统调用,用户态立刻变为了内核态,控制权就交给了操作系统。

总结:

这个替换过程可以是同语言内的替换,也可以是跨语言的替换,比如下面脚本语言

脚本文件

c815066a7e8b498bba08dcf4c8e9e696.png

a1c474d40ba14017af88ec0f8967e887.png

be19760e17a54bd0822a6e892ca3aa44.png

 

 

http://www.yayakq.cn/news/811356/

相关文章:

  • 南通网站建设策划书内江 网站建设
  • 为什么网站用静态页面软件开发的阶段
  • 下载类网站 建设方案建立门户网站多少钱
  • 永州公司网站建设泉州seo网络优化公司
  • vs平台做网站html5优秀企业网站
  • 商品网站建设实验报告中国建设银行网站公积金查询余额
  • 吴江企业建设网站微网站是自己做可以不
  • 小天才电话手表网站wordpress更改链接后网站打不开
  • 潍坊专业技术继续教育平台苏州优化方式
  • 网站建设与网页设计专业广告设计与制作专业可以考二建吗
  • 中国水运建设行业协会网站网站建站在线制作
  • crm网站推荐wordpress 读书主题
  • 做网站开发用什么APP好即墨公司做网站
  • 长春 房地产网站建设公司开个网站多少钱
  • 苏州高端网站建设合肥seo网站多少钱
  • 有必要自建网站做导购吗苏州吴江区住房和城乡建设局网站
  • 做网站做推广有效果吗百度怎么推广自己的信息
  • 梅州新农村建设网站优秀企业门户网站
  • 制作百度移动网站模板免费下载东营住房与城乡建设部网站
  • 杭州知名的网站建设策划免费高清视频下载
  • 苏宁易购网站上的营销页面wordpress怎么发文章到别的页面
  • 会展网站模板seo分析师
  • 网站怎么添加横幅wordpress 多用户博客
  • 什么是理财北京网站建设公司做配资网站多少钱
  • 建站公司最新排名做动态图网站
  • 技术支持 湘潭网站建设做网站专家
  • 如何做网站网页费用楼市最新消息2023年房价走势
  • 如何做网站推广下拉刘贺稳14浙江省建设门户网站
  • 网站开发培训学校网站江苏省建设执业中心网站
  • 电商网站的图片免费刷赞网站推广qq免费