dbo:abstract
|
- في علم الحاسوب، الظاهرية أو البيئة الافتراضية (بالإنجليزية: virtualization) هي تقنية حديثة طُورت في أواخر تسعينيات القرن العشرين، وتختلف عن المحاكاة (simulation)، والمضاهاة (emulation). توظف الظاهرية تقنيات تُستخدم لإنشاء مثيلات لبيئة ما، على عكس المحاكاة، التي تُنمذج البيئة، أو المضاهاة، التي تستنسخ البيئة المستهدفة مثل أنواع معينة من بيئات الآلات الافتراضية. تتطلب الظاهرية الكاملة إظهار كل ميزة بارزة للعتاد في أحد الآلات الافتراضية المتعددة، بما في ذلك مجموعة التعليمات الكاملة وعمليات الإدخال /الإخراج، والمقاطعة، والوصول إلى الذاكرة وأي عناصر أخرى يستخدمها البرنامج الذي يعمل على الآلة العارية أو المجردة، والذي يراد تشغيله في آلة افتراضية. في مثل هذه البيئة، يمكن تشغيل أي برنامج قابل للتنفيذ على العتاد الخام في الآلة الافتراضية، وفي أي نظام تشغيل تحديدًا. يتمثل الفحص البيّن للظاهرية الكاملة في ما إذا كان نظام التشغيل المخصص للاستخدام المستقل يمكن تشغيله بنجاح داخل آلة افتراضية. يقوم ركن الأساس في الظاهرية الكاملة أو الظاهرية من النوع الأول على مراقب أجهزة افتراضية أو نظام سوبر أو إس الذي يعمل بمستوى امتياز أعلى من نظام التشغيل. يتطلب مراقب الأجهزة الافتراضية هذا أو سوبر أو إس ميزتين أساسيتين لتوفير البيئات الافتراضية وحمايتها. هاتان الميزتان هما: 1.
* إدارة وحدات التخزين المستقلة عن نظام التشغيل لتوفير الموارد لجميع البيئات الافتراضية المدعومة مثل لينكس، أو مايكروسوفت ويندوز، أو البيئات المضمنة ولحماية هذه البيئات من الوصول غير المصرح به، 1.
* تحويل البيئات الافتراضية لتخصيص موارد الحوسبة الحقيقية للبيئات الافتراضية. راجع إنتل في تي-إكس أو إي إم دي -في؛ للحصول على وصف تفصيلي لمستويات الامتيازات الخاصة بمراقب الأجهزة الافتراضية، نظام التشغيل ونمط المستخدم، في إم سي أس (بيئة التحكم بالآلة الافتراضية)، في إم إكزيت، وفي إم إنتري. لا يجب الخلط بين هذه الظاهرية وبين تطبيقات آي بي أم فيرتشوال ماشين في أواخر ستينيات وأوائل سبعينيات القرن العشرين، إذ أن بنية أنظمة آي بي إم تدعم نمطين فقط للمشرف والبرنامج اللذين لم يوفرا أمان الآلات الافتراضية أو انفصالها. تسمح الأشكال الأخرى من ظاهرية المنصات بتشغيل برامج معينة أو معدلة فقط داخل الآلة الافتراضية. أسِس مفهوم الظاهرية الكاملة بشكل جيد في الكتب، ولكنه لا يُشار إليه دائمًا بهذا المصطلح المحدد. من الأمثلة الهامة على الآلات الافتراضية، التي لا ينبغي الخلط بينها وبين الظاهرية المنفذة عن طريق المضاهاة، كانت تلك التي يوفرها برنامج التحكم الخاص بنظام التشغيل سي بي/ سي أم أس من شركة آي بي إم. تبين ذلك لأول مرة مع نظام البحث سي بي-40 لشركة آي بي أم في عام 1967، ثم وُزع من خلال مصدر مفتوح في سي بي/ سي أم أس خلال الفترة من عام 1967 حتى عام 1972، ثم أعيد تطبيقه في عائلة في إم لشركة آي بي إم ابتداءً من عام 1972 وحتى الوقت الحاضر. زُود كل مستخدم لنظام سي بي/ سي أم أس بحاسوب محاكاة مستقل. كان لدى كل من هذه الأجهزة الافتراضية القدرات الكاملة للجهاز الأساسي، ولم يمكن ممكنًا تمييز الجهاز الافتراضي (بالنسبة لمستخدمه) عن النظام الخاص. كانت هذه المحاكاة شاملة، واستندت إلى دليل مبادئ التشغيل للعتاد. بالتالي تضمن عناصر مثل مجموعة التعليمات، الذاكرة الرئيسية، المقاطعات، الاستثناءات والوصول إلى الجهاز. كانت النتيجة آلة واحدة يمكن مضاعفتها بين العديد من المستخدمين. (ar)
- In computer science, virtualization is a modern technique developed in late 1990s and is different from simulation and emulation. Virtualization employs techniques used to create instances of an environment, as opposed to simulation, which models the environment; or emulation, which replicates the target environment such as certain kinds of virtual machine environments. Full virtualization requires that every salient feature of the hardware be reflected into one of several virtual machines – including the full instruction set, input/output operations, interrupts, memory access, and whatever other elements are used by the software that runs on the bare machine, and that is intended to run in a virtual machine. In such an environment, any software capable of execution on the raw hardware can be run in the virtual machine and, in particular, any operating systems. The obvious test of full virtualization is whether an operating system intended for stand-alone use can successfully run inside a virtual machine. The cornerstone of full virtualization or type-1 virtualization is a hypervisor or Super Operating system that operates at a higher privilege level than the OS. This Hypervisor or Super OS requires two key features to provision and protect virtualized environments. These two features are: 1.
* OS-Independent Storage Management to provision resources for all supported Virtual Environments such as Linux, Microsoft Windows or embedded environments and to protect those environments from unauthorized access and, 2.
* Switching of Virtualized environments to allocate physical computing resources to Virtual Environments. See Intel VT-x or AMD-V for a detailed description of privilege levels for Hypervisor, OS and User modes, VMCS, VM-Exit and VM-Entry. This virtualization is not to be confused with IBM Virtual Machine implementations of late 60's and early 70's as IBM systems architecture supported only two modes of Supervisor and Program which provided no security or separation of Virtual Machines. Other forms of platform virtualization allow only certain or modified software to run within a virtual machine. The concept of full virtualization is well established in the literature, but it is not always referred to by this specific term; see platform virtualization for terminology. An important example of Virtual Machines, not to be confused with Virtualization implemented by emulation was that provided by the control program of IBM's CP/CMS operating system. It was first demonstrated with IBM's CP-40 research system in 1967, then distributed via open source in CP/CMS in 1967–1972, and re-implemented in IBM's VM family from 1972 to the present. Each CP/CMS user was provided a simulated, stand-alone computer. Each such virtual machine had the complete capabilities of the underlying machine, and (for its user) the virtual machine was indistinguishable from a private system. This simulation was comprehensive, and was based on the Principles of Operation manual for the hardware. It thus included such elements as an instruction set, main memory, interrupts, exceptions, and device access. The result was a single machine that could be multiplexed among many users. Full virtualization is possible only with the right combination of hardware and software elements. For example, it was not possible with most of IBM's System/360 series with the exception being the IBM System/360-67; nor was it possible with IBM's early System/370 system. IBM added virtual memory hardware to the System/370 series in 1972 which is not the same as Intel VT-x Rings providing a higher privilege level for Hypervisor to properly control Virtual Machines requiring full access to Supervisor and Program or User modes. Similarly, full virtualization was not quite possible with the x86 platform until the 2005–2006 addition of the AMD-V and Intel VT-x extensions (see x86 virtualization). Many platform hypervisors for the x86 platform came very close and claimed full virtualization even prior to the AMD-V and Intel VT-x additions. Examples include Adeos, Mac-on-Linux, Parallels Desktop for Mac, Parallels Workstation, VMware Workstation, VMware Server (formerly GSX Server), VirtualBox, Win4BSD, and Win4Lin Pro. VMware, for instance, employs a technique called binary translation to automatically modify x86 software on-the-fly to replace instructions that "pierce the virtual machine" with a different, virtual machine safe sequence of instructions; this technique provides the appearance of full virtualization. A key challenge for full virtualization is the interception and simulation of privileged operations, such as I/O instructions. The effects of every operation performed within a given virtual machine must be kept within that virtual machine – virtual operations cannot be allowed to alter the state of any other virtual machine, the control program, or the hardware. Some machine instructions can be executed directly by the hardware, since their effects are entirely contained within the elements managed by the control program, such as memory locations and arithmetic registers. But other instructions that would "pierce the virtual machine" cannot be allowed to execute directly; they must instead be trapped and simulated. Such instructions either access or affect state information that is outside the virtual machine. Full virtualization has proven highly successful for:
* sharing a computer system among multiple users;
* isolating users from each other (and from the control program);
* emulating new hardware to achieve improved reliability, security and productivity. (en)
- 計算機科学において、完全仮想化(かんぜんかそうか、英: Full virtualization)とは、特定の種類の仮想機械環境を提供し、基本的なハードウェアを完全にシミュレーションする仮想化技術のこと。準仮想化の対の概念として用いられる。 (ja)
- 완전 가상화(完全 假想化)는 특정한 종류의 가상 머신 환경을 제공하는 데 쓰이는 가상화 기술로, 기반 하드웨어를 완전하게 시뮬레이트하는 것을 가리킨다. 이는 가상화 기술의 한 갈래로, 이 밖에도 반가상화(paravirtualization)가 있다. 반가상화는 게스트의 소프트웨어가 적절히 수정되어야 하며, 이를 포팅한다고 할 수 있다. 반면 완전 가상화는 CPU 혹은 시스템 전체를 완전히 가상화함으로써 운영 체제나 하이퍼바이저를 포함한 전체 소프트웨어를 '수정 없이' 가상머신 안에서 실행할 수 있도록 하는 기술이다. VMWare 워크스테이션과 같은 기술이 대표적이며, 최근에는 하드웨어를 이용한 방식들이 도입되고 있다. (ko)
- В компьютерных науках полная виртуализация — это технология, используемая для предоставления определенной виртуальной среды, которая обеспечивает полное симулирование базового оборудования. Любое программное обеспечение, которое может работать на базовом оборудовании может быть запущено в виртуальной среде, как правило любая операционная система должна выполняться без проблем в виртуальной среде, при условии, что она работает на базовом оборудовании.Другие типы платформенной виртуализации позволяют выполняться в виртуальной среде только некоторому или модифицированному программному обеспечению. Пример полной виртуализации реализован в управляющей программе IBM CP/CMS ОС. Она впервые продемонстрирована в исследовательской системе IBM CP-40 в 1967-м году, затем она предоставлялась с открытым исходным кодом в CP/CMS 1967—1972 гг и была внедрена в линейку VM с 1972 до настоящего времени. Каждому пользователю CP/CMS была предоставлена имитация автономного компьютера. Каждая такая виртуальная машина имела все возможности базовой машины, и для своих пользователей виртуальная машина была ничем неотличима от реальной. Эта имитация была полной и основывалась на принципе оперативных инструкций к оборудованию. Таким образом она включает такие элементы как: набор инструкций, оперативную память, прерывания, исключения и устройства доступа. В результате получили систему, которая могла мультиплексировать много пользователей. Полная виртуализация возможна исключительно при условии правильной комбинации оборудования и программного обеспечения. Например, она была невозможной ни в серии IBM System/360, за исключением IBM System/360-67, ни в ранних IBM System/370, пока IBM не добавила оборудование виртуальной памяти в своих System/370 в 1972 г. Аналогичная ситуация и с платформой х86: полная виртуализация была возможна не в полной мере, до добавления технологий AMD-V и Intel VT(эти технологии ниже будут рассмотрены более подробно в пункте «Аппаратная виртуализация»). Много продуктов виртуализации для платформы x86 подошли вплотную и заявляли о полной виртуализации еще до реализации AMD-V и Intel-VT. Примеры включают такие решения как: ADEOS, Mac-на-Linux, Parallels Desktop для Mac, Parallels Workstation, VMware Workstation, VMware Server (бывший GSX Server), VirtualBox, Win4BSD и Win4Lin Pro. VMware, например, использует технологию, называемую «бинарной трансляцией», для автоматического изменения ПО для x86 «на лету», для замены инструкций безопасными для виртуальной машины последовательностями инструкций. Эта технология предоставляет видимость полной виртуализации. Ключевой задачей полной виртуализации является перехват и симуляция привилегированных операций, таких как инструкции ввода-вывода. Эффект выполнения каждого процесса, запущенного в определенной виртуальной машине, должен быть сохранен только в пределах этой виртуальной машины — нельзя допустить, чтобы виртуальные процессы изменяли состояние других виртуальных машин, управляющей программы или оборудования. Некоторые машинные команды могут быть выполнены непосредственно на оборудовании, поскольку их результаты целиком содержатся в элементах, управляемых управляющей программой, таких как память и арифметические регистры. Но другие инструкции, нельзя разрешать выполнять напрямую, — они должны быть перехвачены и симулированы. Это инструкции к доступу или изменению статической информации, которая находится за пределами виртуальной машины. Полная виртуализация была успешно опробована для:
* совместного использования компьютера несколькими пользователями;
* изоляции пользователей друг от друга (и от управляющей программы);
* эмуляции нового оборудования для обеспечения лучшей надежности, безопасности и производительности. (ru)
- 在计算机科学中,全虚拟化(英語:Full virtualization)是硬件虚拟化的一种,允许未经修改的客操作系统(英語:Guest OS)隔离运行。硬件虚拟化对客操作系统隐藏了真实的硬件,虚拟机运行在一个架设在硬件或主机操作系统(英語:Host OS)之上的虚拟机监视器(VMM)中。对于全虚拟化,硬件特征会被映射到虚拟机上,这些特征包括完整的指令集、I/O操作、中断和内存管理等。在全虚拟化环境中,任何可以运行在裸机上的软件(通常是操作系统)都可以未经修改地运行在虚拟机中。相对地,(英語:Paravirtualization)则要求对客操作系统做出必要的更改,以适应VMM提供的半虚拟化API。 实现一个比主机操作系统优先级更高的VMM或超级操作系统(英語:Super OS)是全虚拟化与(英語:Type-1 virtualization)的基础。监视器或超级操作系统需要两个关键特性来提供并保护虚拟化环境: 1.
* 操作系统无关的储存管理,可以为不同的虚拟环境(如Linux、Windows和嵌入式环境)提供资源,并保护这些环境不会被未经授权地访问; 2.
* 虚拟化环境的切换,以向虚拟机分配物理计算资源。Intel VT-x与AMD-V的x86虚拟化和IBM在20世纪60年代末到70年代初的早期虚拟机有着不同的实现。 全虚拟化仅仅在波佩克与戈德堡虚拟化需求得以满足时才是可行的。 在大多数IBM System/360(IBM System/360-67是一个例外)和早期的是无法实现全虚拟化的。IBM于1972年在System/370上添加了实现虚拟化内存的硬件,从而实现了全虚拟化。 全虚拟化在早期的x86平台上也无法实现。直到2006年前后,AMD和Intel分别加入了AMD-V和Intel VT-x扩展(参见x86虚拟化)。Intel VT-x采用了保护环的实现方式,以恰当地控制虚拟机的内核模式特权。然而在此之前许多x86上的平台VMM已经非常接近于实现全虚拟化,甚至宣称支持全虚拟化。比如 Adeos、Mac-on-Linux、Parallels Desktop for Mac、Parallels Workstation、VMware Workstation、VMware Server、VirtualBox、Win4BSD和Win4Lin Pro。以VMware为例,它使用二进制翻译的技术,可以在运行时将x86软件中的一些可以“穿过虚拟机”的指令自动地翻译成对主机安全的指令。 全虚拟化技术应对的关键挑战是对有高特权操作的侦听和模拟,比如I/O操作。虚拟机中所有操作的副作用一定要限制在虚拟机之内——虚拟操作不可以修改其他虚拟机的状态、控制程序或是硬件。对于涉及对象完全受VMM管理的机器指令,可以直接在硬件上执行,例如内存地址和算数寄存器。其他一些指令可能会“穿过虚拟机”,即可以访问或影响状态信息或对虚拟机外产生影响,这些指令就不可以直接执行,它们必须被软中断之后由VMM模拟执行。 全虚拟化已被证实的成功之处有:
* 多用户之间共享系统
* 隔离用户(和控制程序)
* 模拟新硬件,提升可靠性、安全性和生产力 (zh)
|
rdfs:comment
|
- 計算機科学において、完全仮想化(かんぜんかそうか、英: Full virtualization)とは、特定の種類の仮想機械環境を提供し、基本的なハードウェアを完全にシミュレーションする仮想化技術のこと。準仮想化の対の概念として用いられる。 (ja)
- 완전 가상화(完全 假想化)는 특정한 종류의 가상 머신 환경을 제공하는 데 쓰이는 가상화 기술로, 기반 하드웨어를 완전하게 시뮬레이트하는 것을 가리킨다. 이는 가상화 기술의 한 갈래로, 이 밖에도 반가상화(paravirtualization)가 있다. 반가상화는 게스트의 소프트웨어가 적절히 수정되어야 하며, 이를 포팅한다고 할 수 있다. 반면 완전 가상화는 CPU 혹은 시스템 전체를 완전히 가상화함으로써 운영 체제나 하이퍼바이저를 포함한 전체 소프트웨어를 '수정 없이' 가상머신 안에서 실행할 수 있도록 하는 기술이다. VMWare 워크스테이션과 같은 기술이 대표적이며, 최근에는 하드웨어를 이용한 방식들이 도입되고 있다. (ko)
- في علم الحاسوب، الظاهرية أو البيئة الافتراضية (بالإنجليزية: virtualization) هي تقنية حديثة طُورت في أواخر تسعينيات القرن العشرين، وتختلف عن المحاكاة (simulation)، والمضاهاة (emulation). توظف الظاهرية تقنيات تُستخدم لإنشاء مثيلات لبيئة ما، على عكس المحاكاة، التي تُنمذج البيئة، أو المضاهاة، التي تستنسخ البيئة المستهدفة مثل أنواع معينة من بيئات الآلات الافتراضية. تتطلب الظاهرية الكاملة إظهار كل ميزة بارزة للعتاد في أحد الآلات الافتراضية المتعددة، بما في ذلك مجموعة التعليمات الكاملة وعمليات الإدخال /الإخراج، والمقاطعة، والوصول إلى الذاكرة وأي عناصر أخرى يستخدمها البرنامج الذي يعمل على الآلة العارية أو المجردة، والذي يراد تشغيله في آلة افتراضية. في مثل هذه البيئة، يمكن تشغيل أي برنامج قابل للتنفيذ على العتاد الخام في الآلة الافتراضية، وفي أي نظام تشغيل تحديدًا. يتمثل الفحص البيّن للظاهرية الكا (ar)
- In computer science, virtualization is a modern technique developed in late 1990s and is different from simulation and emulation. Virtualization employs techniques used to create instances of an environment, as opposed to simulation, which models the environment; or emulation, which replicates the target environment such as certain kinds of virtual machine environments. Full virtualization requires that every salient feature of the hardware be reflected into one of several virtual machines – including the full instruction set, input/output operations, interrupts, memory access, and whatever other elements are used by the software that runs on the bare machine, and that is intended to run in a virtual machine. In such an environment, any software capable of execution on the raw hardware can (en)
- В компьютерных науках полная виртуализация — это технология, используемая для предоставления определенной виртуальной среды, которая обеспечивает полное симулирование базового оборудования. Любое программное обеспечение, которое может работать на базовом оборудовании может быть запущено в виртуальной среде, как правило любая операционная система должна выполняться без проблем в виртуальной среде, при условии, что она работает на базовом оборудовании.Другие типы платформенной виртуализации позволяют выполняться в виртуальной среде только некоторому или модифицированному программному обеспечению. (ru)
- 在计算机科学中,全虚拟化(英語:Full virtualization)是硬件虚拟化的一种,允许未经修改的客操作系统(英語:Guest OS)隔离运行。硬件虚拟化对客操作系统隐藏了真实的硬件,虚拟机运行在一个架设在硬件或主机操作系统(英語:Host OS)之上的虚拟机监视器(VMM)中。对于全虚拟化,硬件特征会被映射到虚拟机上,这些特征包括完整的指令集、I/O操作、中断和内存管理等。在全虚拟化环境中,任何可以运行在裸机上的软件(通常是操作系统)都可以未经修改地运行在虚拟机中。相对地,(英語:Paravirtualization)则要求对客操作系统做出必要的更改,以适应VMM提供的半虚拟化API。 实现一个比主机操作系统优先级更高的VMM或超级操作系统(英語:Super OS)是全虚拟化与(英語:Type-1 virtualization)的基础。监视器或超级操作系统需要两个关键特性来提供并保护虚拟化环境: 1.
* 操作系统无关的储存管理,可以为不同的虚拟环境(如Linux、Windows和嵌入式环境)提供资源,并保护这些环境不会被未经授权地访问; 2.
* 虚拟化环境的切换,以向虚拟机分配物理计算资源。Intel VT-x与AMD-V的x86虚拟化和IBM在20世纪60年代末到70年代初的早期虚拟机有着不同的实现。 全虚拟化仅仅在波佩克与戈德堡虚拟化需求得以满足时才是可行的。 (zh)
|