Windows设计师:多核芯片要求全新操作系统
2010-12-06 22:58
429 查看
微软Windows核心操作系统部门内核设计师戴夫·普罗伯特(Dave Probert)表示,随着处理器集成的内核数量不断增多,当前操作系统的基本设计需要改变。
普罗伯特说,当前操作系统利用多核处理器处理能力的 方法非常复杂,不够完美。关键问题不是在并行编程方面投入更多资源,而是重新考虑操作系统的基本设计。目前的计算机并没有充分发挥多核处理器的处理能力。
普罗伯特在微软的工作是开发新一代Windows,但他表示,这一观点与其在微软从事的工作没有任何联系,Windows内核开发团队的许多其他设计师不同意其观点。普罗伯特称,新一代操作系统应当不同于Windows或Unix。
目前,普通桌面计算机都能同时运行多个软件,例如在上网冲浪或编辑电子邮件时播放音乐。普罗伯特说,“响应速度最为重要,用户非常重视响应速度”,要解决响应速度问题,操作系统就必须了解哪个任务具有更高的优先性。例如,用户不希望因为安全软件在扫描系统就花数分钟时间等待Word启动。大多数操作系统都部分采用优先权调度算法,但算法仍然相当粗糙。
芯片厂商在生产多核处理器时一厢情愿地认为,软件开发者将为多核处理器开发软件。普罗伯特说,问题是目前的桌面系统软件不能有效地利用多核处理器的处理能力。开发者需要利用并行编程技术才能充分利用多核处理器的处理能力。除专业的科学计算软件外,并行软件并不普及,而且并行编程技术也相对难于掌握。
普罗伯特称,一种更好的方法是重新考虑操作系统管理多核处理器的方式,“问题不在于并行编程,而在于操作系统如何管理处理器”。在计算技术发展的早期,一个处理器只运行一个软件。如果需要一个处理器运行多个软件,处理器就被分配给不同的进程,使软件“产生错觉”:它们各自独占一个处理器。当操作系统开始管理同时运行的多个软件时,它就需要一个不受用户和软件干扰的受保护的空间,这就催生了内核模式。内核模式与用户模式相互分离。普罗伯特说,内核模式和用户模式将一个处理器模拟成两个处理器。
虚拟处理器会争夺物理处理器资源,在不同虚拟处理器间切换的“费用”也会不断增长,并影响系统的响应速度,特别是在配置多核处理器的系统中。普罗伯特指出,由于英特尔和AMD预计处理器内核数量将继续增长,操作系统社区需要放弃一些观念,例如内核模式和用户模式,“如果系统中的内核足够多,每个软件都可以获得一个内核”。
在这种模式中,操作系统更像是一位“管理者”。在虚拟系统中,“管理者”是虚拟机和硬件间的一个中间层。普罗伯特表示,软件将负责更多的资源管理工作。操作系统负责将一个处理器内核和一定量的内存分配给一个软件,软件将利用编译器产生的元数据充分利用获得的资源。
普罗伯特表示,要对这种方法进行测试很困难,因为它要求大量现有软件,但这是值得的,“这种模式更灵活”。
普罗伯特说,当前操作系统利用多核处理器处理能力的 方法非常复杂,不够完美。关键问题不是在并行编程方面投入更多资源,而是重新考虑操作系统的基本设计。目前的计算机并没有充分发挥多核处理器的处理能力。
普罗伯特在微软的工作是开发新一代Windows,但他表示,这一观点与其在微软从事的工作没有任何联系,Windows内核开发团队的许多其他设计师不同意其观点。普罗伯特称,新一代操作系统应当不同于Windows或Unix。
目前,普通桌面计算机都能同时运行多个软件,例如在上网冲浪或编辑电子邮件时播放音乐。普罗伯特说,“响应速度最为重要,用户非常重视响应速度”,要解决响应速度问题,操作系统就必须了解哪个任务具有更高的优先性。例如,用户不希望因为安全软件在扫描系统就花数分钟时间等待Word启动。大多数操作系统都部分采用优先权调度算法,但算法仍然相当粗糙。
芯片厂商在生产多核处理器时一厢情愿地认为,软件开发者将为多核处理器开发软件。普罗伯特说,问题是目前的桌面系统软件不能有效地利用多核处理器的处理能力。开发者需要利用并行编程技术才能充分利用多核处理器的处理能力。除专业的科学计算软件外,并行软件并不普及,而且并行编程技术也相对难于掌握。
普罗伯特称,一种更好的方法是重新考虑操作系统管理多核处理器的方式,“问题不在于并行编程,而在于操作系统如何管理处理器”。在计算技术发展的早期,一个处理器只运行一个软件。如果需要一个处理器运行多个软件,处理器就被分配给不同的进程,使软件“产生错觉”:它们各自独占一个处理器。当操作系统开始管理同时运行的多个软件时,它就需要一个不受用户和软件干扰的受保护的空间,这就催生了内核模式。内核模式与用户模式相互分离。普罗伯特说,内核模式和用户模式将一个处理器模拟成两个处理器。
虚拟处理器会争夺物理处理器资源,在不同虚拟处理器间切换的“费用”也会不断增长,并影响系统的响应速度,特别是在配置多核处理器的系统中。普罗伯特指出,由于英特尔和AMD预计处理器内核数量将继续增长,操作系统社区需要放弃一些观念,例如内核模式和用户模式,“如果系统中的内核足够多,每个软件都可以获得一个内核”。
在这种模式中,操作系统更像是一位“管理者”。在虚拟系统中,“管理者”是虚拟机和硬件间的一个中间层。普罗伯特表示,软件将负责更多的资源管理工作。操作系统负责将一个处理器内核和一定量的内存分配给一个软件,软件将利用编译器产生的元数据充分利用获得的资源。
普罗伯特表示,要对这种方法进行测试很困难,因为它要求大量现有软件,但这是值得的,“这种模式更灵活”。
相关文章推荐
- Windows设计师:多核芯片要求全新操作系统
- Windows 8寄托着微软对移动计算、客厅控制和超级操作系统的全新理解与尝试
- Windows 8和Windows RT - Windows操作系统的全新方法
- Windows 8寄托着微软对移动计算、客厅控制和超级操作系统的全新理解与尝试
- windows操作系统的密码复杂性要求
- Windows 8操作系统硬件配置要求
- 最全的windows操作系统快捷键
- windows 10 mobile 最低硬件要求
- JDK不同操作系统的FileSystem(Windows)下篇
- 在64位Windows 7/2008操作系统上部署32位的Web应用程序错误
- Windows 7 系统要求
- JAVA用JNI方法调用C代码实现HelloWorld(含windows及ubuntu两种操作系统环境下的操作)
- 【操作系统-Windows】在文件右键菜单 发送 中添加自定义的目标文件夹
- 自动执行和管理 Windows 操作系统部署
- 我的最大的疑问:windows系统是如何管理应用程序的?即:应用程序是如何在操作系统中被加载执行的??
- 巧妙安装各种Windows操作系统
- 实现windows操作系统和VB下Linux虚拟操作系统相互传取文件方式总结
- sp2200系列安腾服务器更换主板后恢复原windows 2003操作系统引导项的方法
- windows与其他操作系统socket通讯时,类必须写在以下定义直接
- 使用Windows操作系统的13个窍门