首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Windows内核有读写叉()指令吗?

Windows内核有读写叉()指令吗?
EN

Stack Overflow用户
提问于 2013-05-03 02:42:55
回答 1查看 386关注 0票数 1

因为符合POSIX.1是Windows的一个强制性目标,所以操作系统的设计是为了确保提供所需的基本系统支持,以便实现POSIX.1子系统(例如在Windows执行部分实现的fork函数,以及对Windows文件系统中硬文件链接的支持)。

这个分叉函数是抄写的吗?如果是的话,它是否仍然存在于最新版本的Windows中?如果是这样的话,它是否也可以称为Win32应用程序(尽管是一个无文档的API)?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-05-05 06:44:27

从Windows内部的记忆来看,fork是一个复制到写的实现.根据其他Windows内存管理器的工作方式,它将是不寻常和令人惊讶的事情。

我似乎还记得,实现叉子的方式是将所有内存分配放在节对象中,以便可以在进程之间复制区段,并在写入设置中复制副本。

不幸的是,这意味着您可能无法在非posix子系统进程中使用它,因为您需要仔细地设置您的地址空间,以便只包含部分。标准的Win32进程不会这样做。

另外,如果您要支持fork(),那么每个人都需要支持它--从内核到内核。对于一个系统的示例,它可能会惊讶地得到-ed,请考虑窗口系统。在这种情况下,它会做什么呢?(我猜想X11对此有一个答案,但我不知道它是什么)。因为在Windows上使用-ing是非常不寻常的事情,所以如果要对标准的Win32进程执行此操作,我希望您的进程会被完全控制。

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/16350784

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档