Introduction to Oracle VM server for SPARC
来源:互联网 发布:matlab 关联矩阵 编辑:程序博客网 时间:2024/06/06 02:55
1、关于oracle虚拟技术的划分:
T系列的机器上,solaris10、11上可以支持Znoe和LDoms。
M系列的机器上,可以支持Dynamic System Domains。
本文我们重点研究LDoms,Logical Domains是基于Fireware层的虚拟化
首先,介绍什么是Hypervisor?
2、SPARC Hypervisor:
SPARC virtualization begins with low overhead cost, by using a small and efficient hypervisor layerthat holds only the minimum state necessary to describe and control guest OSs. At the same time, the hypervisor is robust enough to achieve its two primary functions.:
First, it improves system security and reliability, effectively isolating each guest OS in its own logical domain.
Second, it improves system efficiency and utilization, providing the ability to dynamically rebind virtual processors to physical resources at any time.
Oracle VM Server for SPARC directly integrates the hypervisor with paravirtualized(半虚拟化) guest operation systems.
Using paravirtualization, a guest OS such as Oracle Solaris 10 explicitly calls a support function implemented by hypervisor code rather than trying to access a system register itself. Much of the code that traditionally exists in the lowest layers of an OS is moved from the OS and placed in the hypervisor. Oracle VM Server for SPARC optimizes performance and security by implementing the hypervisor in firmware, setting virtualization technology apart from other hypervisor based virtualization technology.
一个guest系统,比如Solaris10,显示的调用 hypervisor代码实现的支持功能,而不是用os去访问这些资源。许多传统的代码,在以往都是在os层底部的。但是现在,被放到了hypervisor层。oracle VM for SPARC通过firmware内的hypervisor层,优化了系统的性能和安全性。
Hypervisor:A small firmware layer that provides a set of hardware-specific support functions to operating systems through a stable interface, known as the sun4v architecture. The hypervisor creates virtual machines by subdividing physical devices across multiple logical domains, exposing some resources to a specific partition and hiding others. In addition, the hypervisor creates communication channels, logical domain channels, between logical domains to provide a conduit for services, such as networks and shared devices.
3、VM for SPARC为什么可以比其他虚拟化技术更能充分利用主机的性能,而降低虚拟技术本身的消耗?
The natural level of granularity of a logical domain is an execution CPU thread, not a time-sliced microsecond of execution resources. Each CPU thread can be treated as an independent virtual processor. The scheduler is naturally built into the CPU, instead of the scheduler implementation at hypervisor which requires extra overhead . The Solaris dispatcher dispatches tasks to virtual CPUs which are effectively physical CPU threads. Moreover, the CPU threads can be dynamically changed in the running logical domains, and customers gain the benefits of increased service level and agility.
logical domain的自然粒度是cpu的线程数量,而不是微秒资源的时间片。这也就是说,每个logical domain最少需要一个cpu线程,而不像x86架构的虚拟软件,可以不考虑cpu线程数量,建好多个logical domian。调度器是建立在cpu内部的,而不是放在hypervisor层,因为放在hypervisor层会有额外的消耗。Solaris的调度器调度资源任务给虚拟cpu的时候,实际上就是给了物理cpu的某个线程,这样大大提高了效率,减少物理cpu上下文切换的时间。另外:cpu的线程数量也可以动态的增加。
- Introduction to Oracle VM server for SPARC
- Setup Server _only for SPARC system
- Introduction to Oracle Coherence
- Introduction to Oracle Clusterware
- Introduction to Oracle LOBs
- Introduction to Active Server Pages
- An Introduction to Proxy Server
- Introduction to Java Server Face
- Introduction to Oracle SALT Programming
- Introduction to MySQL Cluster for MySQL Users
- Introduction to .NET 3.0 for Architects
- An Introduction to WCF for Device Developers
- 5.1. Rationale for and Introduction to NAT
- Introduction to Ajax for Java Web Applications
- A painless introduction to PIX for Windows
- Introduction to Stream Programming Guide for Cocoa
- Introduction to Coding Guidelines for Cocoa
- Introduction to The Solr Enterprise Search Server
- java WEB开发:过滤器、监听器、拦截器的区别
- Ubuntu Cocos2dx 学习笔记——错误总结
- Spring中数据库连接池的三种配置(dbcp,c3p0,proxool)(转载)
- linux下/var/run目录下的pid文件作用
- java NIO —— 缓冲区
- Introduction to Oracle VM server for SPARC
- 各大公司笔试面试题之数据结构与算法
- CRON表达式详解与案例
- KanKan甄选,BaseAdapter我要对你说,ViewHolder你懂得,性能优化必读
- Unity手稿
- 理解 Node.js 里的 process.nextTick()
- 杭州武林广场塔吊倒塌 致一人死亡
- 设计模式六大原则(4):接口隔离原则
- 排序中的哨兵