QQ登录

只需一步,快速开始

 找回密码
 注册

QQ登录

只需一步,快速开始

楼主: npcomet

Longene-0.3.0 发布『兼容内核』

[复制链接]
发表于 2010-6-4 16:19:59 | 显示全部楼层
需要改版的wine的dll,这个部分怕是没有办法并入内核。
所以还是需要装wine的,只不过.exe文件可以直接执行。
在magic上普通版本和兼容内核版本使用起来基本没有区别,而且因为兼容内核版本是.exe做为普通程序的,必须加上权限,而普通版本是通过wine的,反而不需要权限,且可运行的程序更多一些,不过兼容内核的效率也许更好一些。
回复

使用道具 举报

发表于 2010-6-4 18:43:18 | 显示全部楼层
原帖由 jiangtao9999 于 2010-6-4 15:34 发表
好像还需要一个改版的 wine ,貌似还没有完全合并进入内核吧?

官方一堆文档,看完也就知道是做什么、为什么做、怎样做了
http://www.longene.org/whitebook.php
回复

使用道具 举报

发表于 2010-6-4 19:49:16 | 显示全部楼层
原帖由 jiangtao9999 于 2010-6-4 15:34 发表
好像还需要一个改版的 wine ,貌似还没有完全合并进入内核吧?



四大件要用改版的: http://www.longene.org/techdoc/0910255001227685966.html

Wine中的底层四大件,即kernel32.dll、user32.dll、gdi32.dll、以及ntdll.dll,原来把所有的系统调用都引向Linux系统调用。随着开发的进展,每实现一个Windows系统调用,就应该在Wine这一层上把原先的系统调用“重定向”到这个Windows系统调用上来。为此,可以对DLL的装入/连接机制加以扩充,以实现“虚拟连接”、即重定向的功能。例如,可以在装入/连接下层DLL时对于需要从下层DLL引入的每一个函数都先检查一个映射文件,看是否需要把这个函数重定向到另一个DLL文件中的另一个函数名。这样,每实现一个Windows系统调用以后,只要修改这个映射文件,并提供另一组底层DLL就可以了。发展到最后,Wine原有的底层DLL就为新的(同名)DLL所取代。这时候,Wine就变成了Wine’。
回复

使用道具 举报

发表于 2010-6-4 20:04:08 | 显示全部楼层
原帖由 sejishikong 于 2010-6-4 16:19 发表
需要改版的wine的dll,这个部分怕是没有办法并入内核。
所以还是需要装wine的,只不过.exe文件可以直接执行。
在magic上普通版本和兼容内核版本使用起来基本没有区别,而且因为兼容内核版本是.exe做为普通程序的,必须加上权 ...



dll在用户空间运行相当于应用软件,不属于内核的组成部分,所以不会合并到内核的.
回复

使用道具 举报

发表于 2010-6-4 20:25:14 | 显示全部楼层
原帖由 wsm 于 2010-6-4 14:48 发表
这么解释吧 他一直兼容老的接口 但是他也发布新的接口 而且新的接口比较好 所以新的软件都会去用新的接口 于是想要兼容他就得不断的分析他新的接口... ...


微软可以打如意算盘,但是还得看应用软件厂商买不买他的帐.

比如photoshop,为了降低开发和维护成本当然希望一份代码就可以在windows xp, vista, 7, 8中运行,而不是贪新鲜使用新的api.除非新的api确实提供它必须的通过其他途径得不到的功能.但win32 api发展到今天功能已经非常丰富了,微软再提供新的api吸引力也难以得到市场的认可.软件厂商很多时候把市场的因素看的比技术的还重.
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

GMT+8, 2024-4-17 07:16 , Processed in 0.051381 second(s), 12 queries .

© 2021 Powered by Discuz! X3.5.

快速回复 返回顶部 返回列表