Виртуальная машина Java является действительно виртуальной машиной в том же смысле как мой VMware или файл Параллелей?

Если я смогу получить ваш вопрос, то я думаю, что вы хотите получить данные здесь, в этой строке var arrayCalendar = this.getCalendarData(),

Так что вам нужно подписаться на Observable.

var arrayCalendar:any = []
 this.getCalendarData().subscribe((data: any) => {
     arrayCalendar = data;
     console.log(arrayCalendar);   
   }
 );
24
задан Aaron Fi 14 May 2009 в 03:30
поделиться

3 ответа

No.

VMWare and the rest actually virtualize the hardware of the machine. The operating system running inside of a VMWare container (or Parallels or Windows' virtualization containers or Bochs or ...) have varying degrees of awareness of running within a virtualized container. Within VMWare, the operating system has no idea that it is running within a virtual container. The operating system is not modified at all, although specialized drivers are usually installed (most importantly video) to prevent performance problems. Some other VM's don't do full hardware virtualization and instead require the OS inside the container the make special calls to the container in place of the regular hardware calls.

The JVM is not a virtual machine in that sense at all. No hardware other than the processor is virtualized. The JVM is essentially a virtualized CPU plus the same sort of runtime that is included with a C++ or any other object oriented language, plus garbage collection and other necessities. Additionally, of course, Java class files (and JAR files, etc) are not machine code, but an intermediate byte code. So the JVM has to compile or interpret class files (whether contained in a JAR file or not) at runtime, and has the ability to load and find new code dynamically at runtime.

The JVM is called a virtual machine because the JVM definition defines an abstract machine. This includes registers, stack, etc, and the byte code that Java source is compiled to is practically machine code for this virtual machine. The JVM then interprets or compiles this byte code into native machine instructions.

The difference is essentially that the JVM is a virtualized processor and the other virtual machines are virtualized machines (including video card, network, and other external devices and hardware registers).

34
ответ дан 28 November 2019 в 23:25
поделиться

Нет. Существует разница между системной виртуальной машиной и виртуальной машиной процесса. JVM - это виртуальная машина процесса, тогда как VMWare и подобные - системные виртуальные машины. Для получения дополнительной информации см. запись в википедии .

Что касается параллельных виртуальных машин, вышеупомянутые состояния записи,

PVM (параллельная виртуальная машина) не являются строго виртуальные машины, так как приложения, работающие поверх, все еще имеют доступ ко всем службам ОС и поэтому не ограничен системой модель предоставлена ​​«ВМ».

8
ответ дан 28 November 2019 в 23:25
поделиться

В «Запуск Xen: Практическое руководство по искусству виртуализации» Джинны Мэтьюз и др. есть достойный обзор различий. ( Amazon ). VMWare является примером полной виртуализации и стремится виртуализировать архитектуру физического оборудования, чтобы на ней могли работать различные немодифицированные гостевые операционные системы. Виртуальная машина Java - это пример того, что они называют виртуализацией приложений , где «приложения выполняются в виртуальной среде выполнения, которая предоставляет стандартный API для межплатформенного выполнения и управляет потреблением приложением локальных ресурсов». (стр. 13)

В обоих случаях у вас есть уровень виртуализации, поверх которого работает программное обеспечение. JVM запускает приложения Java, в то время как VMWare запускает полные операционные системы. VMWare виртуализирует машину, которая раньше всегда выражалась как физическое оборудование. JVM виртуализирует машину, которая может быть выражена в физическом оборудовании, но почти всегда не является (но см. аппаратные JVM ).

3
ответ дан 28 November 2019 в 23:25
поделиться
Другие вопросы по тегам:

Похожие вопросы: