有什么软件可以模拟 *** 作系统的环境,然后可以在那上面 *** 作

有什么软件可以模拟 *** 作系统的环境,然后可以在那上面 *** 作,第1张

VMware Workstation 是一款功能强大的桌面虚拟计算机软件,提供用户可做返在单一的桌面上同时运行不同的 *** 作系统,和进行开发、测试 、部署新的应用程序的最佳解决方案。VMware Workstation可在一部实体机器上模拟完整的网络环境,以及纯胡饥可便于携带的虚拟机器,其更好的灵活性与先进的技术胜过了市面上其他的虚拟计算机做滑软件。对于企业的 IT开发人员和系统管理员而言, VMware 在虚拟网路,实时快照,拖曳共享文件夹,支持 PXE 等方面的特点使它成为必不可少的工具。 满意就给分吧,吃饭上班去了,88.

从OS层说起吧。

OS都有加载程序的功能,一个可执行文件(比如exe,com等)内部都是机器指令(cpu相关的)和数据,所以可执行文件和OS以及编译器是密切相关的,不同的OS下不同的编译器产生的可执行文件都不尽相同。不同的平台上其格式大概有elf,pe,coff等。大致都是段的形式来表示。而OS的功能就是读懂这些文件然后完成从磁盘文件到内存的映射工作,也就是适当的时候把文件的内容搬到内存适当的位置;

OS加载的过程就是进程创建的过程,进程创建完毕后,会找到入口函数去执行;

进入入口函数后就等于进入了运行库,因为入口函数就是运行库的一部分;

入口函数开始初始化运行程序和程序的运行环境,比如堆的初始化,I/O初始化,线程的准备,全局变量等的初始化;

下一孙改步就进入程序的主体,也就是调用main函数部分。

main函数执行结束后又回到入口函数,此时入口函数要进行一些清理工作。

清理完成后执行一个系统调用来kill掉进程。

OK,一个可执行文件的整个执行周期就结束则拦判了。

对于c语言,运行库叫crt(c runtime),linux下的crt为glibc,它的程序入口函数为_start,是由汇编语言实现的,包含在crt1.o这个目标库文件里。在windows下crt为msvc crt,它的入口函衡颂数是mainCRTStartup。对于每个程序,链接过程都会给你的可执行程序加进一些运行库目标文件,这样才保证你的程序是一个独立的可执行体。正式这些额外的代码把你的main函数调用起来的。

一般在链接程序的时候须指定入口函数名。


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/yw/12308592.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-22
下一篇2023-05-22

发表评论

登录后才能评论

评论列表(0条)

    保存