jpcsp源码解读7:HLE

作为一个模拟器,也就是一个虚拟机,所作的事情就是解释执行运行于该机器上的软件代码,包括系统软件和用户态的应用软件。

基于这个想法,系统软件应该是被加载到内存中的某些位置,当应用软件使用系统调用时,就跳转到系统函数的入口。在这个过程中,模拟器所做的事前后没有本质区别,就是取指令并解析执行,没有必要区分系统软件还是应用软件。

但是为了提高运行速度,jpcsp实现了psp上运行的系统软件的功能,如 内存管理,进程调度,文件系统 等。

当模拟器解析应用程序(比如一个游戏)时,发现该程序使用了syscall指令,就解析用户请求的系统功能,并调用自己实现的函数来完成这些功能。

这使得jpcsp从一个纯硬件虚拟机,升格为操作系统层面的虚拟机。他提供的不单是psp硬件的功能,而是把psp的固件(系统软件)也包括了进去。

jpcsp的源码更新日志中声称系统调用功能的执行速度提升了50%。可见,这是一个很有效的优化。

实现这些系统软件功能的类,通常以HLE开头,是什么单词的缩写暂时还不清楚。

具体每个HLE模块的实现还没有解析,不过可以暂放一边,先解析模拟器的解释引擎主体。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值