JavaScript PC 模拟器

标签: Emulator javascript | 发表时间:2011-05-17 23:54 | 作者:黑日白月 kira
出处:http://linuxtoy.org

很难想象竟然用了这么久,Linux 才可以运行在浏览器的 JavaScript 引擎里面,要知道2008 年就可以在土豆上运行了~

如何实现的:

  1. 作者 Fabrice Bellard 使用 JavaScript 编写了一个简单的 PC 模拟器,包含32位 x86 兼容 CPU、8259 可编程中断控制器、8254 可编程中断计时器
  2. 实现 16450 UART 串口设备
  3. 用 JavaScript 实现一个终端
  4. 编译包含 FPU 模拟的 Linux 内核镜像。
  5. 使用 Buildroot 创建文件系统并在启动时载入 RAM。
  6. 添加基本工具集 BusyBox,微型 C 编译器 TinyCC,以及迷你编辑器 QEmacs

根据作者的描述,该模拟器的初衷是了解现在 JavaScript 引擎的工作,尤其是 Firefox 4 的 Jaeger Monkey 和 Chrome 的 V8,这个探索的结果,可以被用来:

  • 通过 Linux 的启动时间反应浏览器的 JavaScript 性能。(作者说目前在 Firefox 4 下比 Chrome 11 要快 2倍,Chrome 12 有 Bug 无法运行)。
  • 实验在用 JavaScript 进行客户端运算时载入 x86 运行库的可能性。
  • 进一步发展从而支持 DOS 游戏的运行。

JS-Linux 主页

技术内涵

分类: Emulator | 永久链接 | 收藏到 del.icio.us | Email 给好友 | 28 评论 | 捐助本站

相关 [javascript pc 模拟器] 推荐:

JavaScript PC 模拟器

- kira - LinuxTOY
很难想象竟然用了这么久,Linux 才可以运行在浏览器的 JavaScript 引擎里面,要知道2008 年就可以在土豆上运行了~. 作者 Fabrice Bellard 使用 JavaScript 编写了一个简单的 PC 模拟器,包含32位 x86 兼容 CPU、8259 可编程中断控制器、8254 可编程中断计时器.

JavaScript Gameboy Color模拟器

- ashuai - Solidot
程序员Grant Galitz发布了一个用HTML5/JavaScript编写的GameBoy Color模拟器(源代码),可以运行储存在本地的ROM镜像,游戏运行速度正常. 也有其他开发者用JavaScript编写出了启动Linux的X86模拟器.

[组图]PC进化简史

- 人之樗 - cnBeta全文版
用机器协助计算的梦想一直存在于人们心中. 在这一梦想的驱动下,无数先人们探索了上千年,先后发明了计算尺、差分机、打孔机等充满创意的计算设备. 最终,PC的出现和大规模普及改变了人们的生活.         很早之前,人们就开始着手发明一台可以辅助人们进行计算的设备. 在工业时代之前,诸多采用齿轮、刻度盘完成计算任务的机器已经出现.

要闻:HP - PC - webOS + Autonomy

- belltoy - LinuxTOY
惠普透露意图要淡出 PC 业务,逐渐暂停对 webOS 的研发支持,并且表示要收购 Autonomy 公司. 事情缘起董事会对于个人系统业务分部(Personal Systems Group,PC 业务)的战略性探索. 个人系统业务分部可能会部分或完全从惠普剥离出来. 计划停止对于 webOS 系统设备的运营,特别是 TouchPad 和手机产品.

PC 时代即将落幕

- 橙子 - 爱范儿 · Beats of Bits
世界上最大的 PC 制造商惠普将剥离 PC 生产业务,这消息引起很大的震撼. 其实在去年,乔布斯称已经进入后 PC 时代,而今年3月 PC 创始人马克·迪恩(Mark Dean)发表了 PC 时代即将结束言论. 而惠普现在用行动告诉我们 PC 时代真的要终结了. PC 曾经统领数字世界多年,但现在各种数据表明 PC 行业正面临衰退:PC 业务的利润逐年下降,现在降到不到5%.

当 PC 开始运行 Android……

- - 爱范儿 · Beats of Bits
有个问题,我想过无数遍:为什么 Google 推出安装 Chrome OS 的笔记本电脑,却不推出基于 Android 的. 后来,有无数人帮 Google 解释,比如 Chrome OS 更符合 Google 的哲学等等. 不过,人的想法是很难估摸的,比如说有的人买来 Android 电视棒,生生将液晶电视机变成大屏幕显示屏,再接上键盘和鼠标后,Android 就变成一个桌面的操作系统.

Javascript诞生记

- Milido - 阮一峰的网络日志
二周前,我谈了一点Javascript的历史. 今天把这部分补全,从历史的角度,说明Javascript到底是如何设计出来的. 只有了解这段历史,才能明白Javascript为什么是现在的样子. 我依据的资料,主要是Brendan Eich的自述. "1994年,网景公司(Netscape)发布了Navigator浏览器0.9版.

JavaScript,你懂的

- dylan - keakon的涂鸦馆
经常有人问我,JavaScript应该怎么学. 先学基本语法,如果曾学过C等语言,应该1小时内就能掌握了. 再去使用内置的函数、方法和DOM API,熟悉它能干什么;而在学习DOM API的过程中,你还不得不与HTML和CSS打交道. 然后弄懂匿名函数和闭包,学会至少一个常用的JavaScript库(例如jQuery).

Javascript 里跑Linux

- rockmaple - Shellex's Blog
牛逼到暴的大拿 Fabrice Bellard,用Javascript实现了一个x86 PC 模拟器,然后成功在这个模拟器里面跑Linux(请用Firefox 4 / Google Chrome 11打开,Chome 12有BUG). 关于这个东西… 伊说 “I did it for fun“,大大啊大大啊….

高效 JavaScript

- xtps - ITeye论坛最新讨论
传统上,网页中不会有大量的脚本,至少脚本很少会影响网页的性能. 但随着网页越来越像 Web 应用程序,脚本的效率对网页性能影响越来越大. 而且使用 Web 技术开发的应用程序现在越来越多,因此提高脚本的性能变得很重要. 对于桌面应用程序,通常使用编译器将源代码转换为二进制程序. 编译器可以花费大量时间优化最终二进制程序的效率.