VirtualBox

source: vbox/trunk/doc/manual/en_US/user_BasicConcepts.xml@ 68716

Last change on this file since 68716 was 68280, checked in by vboxsync, 7 years ago

doc/manual: added section about unattended guest installation

File size: 70.6 KB
Line 
1<?xml version="1.0" encoding="UTF-8"?>
2<!DOCTYPE chapter PUBLIC "-//OASIS//DTD DocBook XML V4.4//EN"
3"http://www.oasis-open.org/docbook/xml/4.4/docbookx.dtd">
4<chapter id="BasicConcepts">
5 <title>Configuring virtual machines</title>
6
7 <para>Whereas <xref linkend="Introduction" /> gave you a quick introduction
8 to VirtualBox and how to get your first virtual machine running, the
9 following chapter describes in detail how to configure virtual
10 machines.</para>
11
12 <para>You have considerable latitude in deciding what virtual hardware will
13 be provided to the guest. The virtual hardware can be used for communicating
14 with the host system or with other guests. For instance, if you provide
15 VirtualBox with the image of a CD-ROM in an ISO file, VirtualBox can present
16 this image to a guest system as if it were a physical CD-ROM. Similarly, you
17 can give a guest system access to the real network via its virtual network
18 card, and, if you so choose, give the host system, other guests, or
19 computers on the Internet access to the guest system.</para>
20
21 <sect1 id="guestossupport">
22 <title>Supported guest operating systems</title>
23
24 <para>Since VirtualBox is designed to provide a generic virtualization
25 environment for x86 systems, it may run operating systems of any kind,
26 even those not listed here. However, the focus is to optimize VirtualBox
27 for the following guest systems:</para>
28
29 <para><glosslist>
30 <glossentry>
31 <glossterm>Windows NT 4.0</glossterm>
32
33 <glossdef>
34 <para>All versions, editions and service packs are fully
35 supported; however, there are some issues with older service
36 packs. We recommend to install service pack 6a. Guest Additions
37 are available with a limited feature set.</para>
38 </glossdef>
39 </glossentry>
40
41 <glossentry>
42 <glossterm>Windows 2000 / XP / Server 2003 / Vista / Server 2008 /
43 7 / 8 / 8.1 / 10 RTM 10240 / Server 2012</glossterm>
44
45 <glossdef>
46 <para>All versions, editions and service packs are fully supported
47 (including 64-bit versions, under the preconditions listed below).
48 Guest Additions are available. Windows 8 and later requires hardware
49 virtualization to be enabled.</para>
50 </glossdef>
51 </glossentry>
52
53 <glossentry>
54 <glossterm>DOS / Windows 3.x / 95 / 98 / ME</glossterm>
55
56 <glossdef>
57 <para>Limited testing has been performed. Use beyond legacy
58 installation mechanisms not recommended. No Guest Additions
59 available.</para>
60 </glossdef>
61 </glossentry>
62
63 <glossentry>
64 <glossterm>Linux 2.4</glossterm>
65
66 <glossdef>
67 <para>Limited support.</para>
68 </glossdef>
69 </glossentry>
70
71 <glossentry>
72 <glossterm>Linux 2.6</glossterm>
73
74 <glossdef>
75 <para>All versions/editions are fully supported (32 bits and 64
76 bits). Guest Additions are available.</para>
77
78 <para>We strongly recommend using a Linux kernel version 2.6.13 or
79 higher for better performance.<note>
80 <para>Certain Linux kernel releases have bugs that prevent
81 them from executing in a virtual environment; please see <xref
82 linkend="ts_linux-buggy" /> for details.</para>
83 </note></para>
84 </glossdef>
85 </glossentry>
86
87 <glossentry>
88 <glossterm>Linux 3.x and later</glossterm>
89
90 <glossdef>
91 <para>All versions/editions are fully supported (32 bits and 64
92 bits). Guest Additions are available.</para>
93 </glossdef>
94 </glossentry>
95
96 <glossentry>
97 <glossterm>Solaris 10 (u6 and higher), Solaris 11 (including Solaris
98 11 Express)</glossterm>
99
100 <glossdef>
101 <para>Fully supported (64 bits, prior to Solaris 11 11/11 also 32 bits).
102 Guest Additions are available.</para>
103 </glossdef>
104 </glossentry>
105
106 <glossentry>
107 <glossterm>FreeBSD</glossterm>
108
109 <glossdef>
110 <para>Requires hardware virtualization to be enabled. Limited
111 support. Guest Additions are not available yet.</para>
112 </glossdef>
113 </glossentry>
114
115 <glossentry>
116 <glossterm>OpenBSD</glossterm>
117
118 <glossdef>
119 <para>Requires hardware virtualization to be enabled. Versions 3.7
120 and later are supported. Guest Additions are not available
121 yet.</para>
122 </glossdef>
123 </glossentry>
124
125 <glossentry>
126 <glossterm>OS/2 Warp 4.5</glossterm>
127
128 <glossdef>
129 <para>Requires hardware virtualization to be enabled. We
130 officially support MCP2 only; other OS/2 versions may or may not
131 work. Guest Additions are available with a limited feature
132 set.<footnote>
133 <para>See <xref linkend="KnownIssues" />.</para>
134 </footnote></para>
135 </glossdef>
136 </glossentry>
137
138 <glossentry>
139 <glossterm>Mac OS X</glossterm>
140
141 <glossdef>
142 <para>VirtualBox 3.2 added experimental support for Mac OS X
143 guests, but this comes with restrictions. Please see the following
144 section as well as <xref linkend="KnownIssues" />.</para>
145 </glossdef>
146 </glossentry>
147 </glosslist></para>
148
149 <sect2 id="intro-macosxguests">
150 <title>Mac OS X guests</title>
151
152 <para>Starting with version 3.2, VirtualBox has experimental support for
153 Mac OS X guests. This allows you to install and execute unmodified
154 versions of Mac OS X on supported host hardware.</para>
155
156 <para>Whereas competing solutions perform modifications to the Mac OS X
157 install DVDs (e.g. different boot loader and replaced files), VirtualBox
158 is the first product to provide the modern PC architecture expected by
159 OS X without requiring any "hacks".</para>
160
161 <para>You should be aware of a number of <emphasis role="bold">important
162 issues</emphasis> before attempting to install a Mac OS X guest:<orderedlist>
163 <listitem>
164 <para>Mac OS X is commercial, licensed software and contains
165 <emphasis role="bold">both license and technical restrictions</emphasis>
166 that limit its use to certain hardware and usage scenarios. It is
167 important that you understand and obey these restrictions.</para>
168
169 <para>In particular, for most versions of Mac OS X, Apple prohibits
170 installing them on non-Apple hardware.</para>
171
172 <para>These license restrictions are also enforced on a technical
173 level. Mac OS X verifies whether it is running on Apple hardware,
174 and most DVDs that come with Apple hardware even check for an
175 exact model. These restrictions are <emphasis>not</emphasis>
176 circumvented by VirtualBox and continue to apply.</para>
177 </listitem>
178
179 <listitem>
180 <para>Only <emphasis role="bold">CPUs</emphasis> known and tested
181 by Apple are supported. As a result, if your Intel CPU is newer
182 than the build of Mac OS X, or if you have a non-Intel CPU, it will
183 most likely panic during bootup with an "Unsupported CPU"
184 exception. It is generally best to use the Mac OS X DVD that came
185 with your Apple hardware.</para>
186 </listitem>
187
188 <listitem>
189 <para>The Mac OS X installer expects the harddisk to be
190 <emphasis role="bold">partitioned</emphasis> so when it does not
191 offer a selection, you have to launch the Disk Utility from the
192 "Tools" menu and partition the hard disk. Then close the Disk
193 Utility and proceed with the installation.</para>
194 </listitem>
195
196 <listitem>
197 <para>In addition, as Mac OS X support in VirtualBox is currently
198 still experimental, please refer also to <xref linkend="KnownIssues" />.</para>
199 </listitem>
200 </orderedlist></para>
201 </sect2>
202
203 <sect2 id="intro-64bitguests">
204 <title>64-bit guests</title>
205
206 <para>VirtualBox supports 64-bit guest operating systems, even on 32-bit
207 host operating systems,<footnote>
208 <para>64-bit guest support was added with VirtualBox 2.0; support
209 for 64-bit guests on 32-bit hosts was added with VirtualBox
210 2.1.</para>
211 </footnote> provided that the following conditions are
212 met:<orderedlist>
213 <listitem>
214 <para>You need a 64-bit processor with hardware virtualization
215 support (see <xref linkend="hwvirt" />).</para>
216 </listitem>
217
218 <listitem>
219 <para>You must enable hardware virtualization for the particular
220 VM for which you want 64-bit support; software virtualization is
221 not supported for 64-bit VMs.</para>
222 </listitem>
223
224 <listitem>
225 <para>If you want to use 64-bit guest support on a 32-bit host
226 operating system, you must also select a 64-bit operating system
227 for the particular VM. Since supporting 64 bits on 32-bit hosts
228 incurs additional overhead, VirtualBox only enables this support
229 upon explicit request.</para>
230
231 <para>On 64-bit hosts (which typically come with hardware
232 virtualization support), 64-bit guest operating systems are always
233 supported regardless of settings, so you can simply install a
234 64-bit operating system in the guest.</para>
235 </listitem>
236 </orderedlist></para>
237
238 <para><warning>
239 <para>On any host, you should enable the <emphasis role="bold">I/O
240 APIC</emphasis> for virtual machines that you intend to use in
241 64-bit mode. This is especially true for 64-bit Windows VMs. See
242 <xref linkend="settings-general-advanced" />. In addition, for
243 64-bit Windows guests, you should make sure that the VM uses the
244 <emphasis role="bold">Intel networking device</emphasis>, since
245 there is no 64-bit driver support for the AMD PCNet card; see <xref
246 linkend="nichardware" />.</para>
247 </warning></para>
248
249 <para>If you use the "Create VM" wizard of the VirtualBox graphical user
250 interface (see <xref linkend="gui-createvm" />), VirtualBox will
251 automatically use the correct settings for each selected 64-bit
252 operating system type.</para>
253 </sect2>
254 </sect1>
255
256 <sect1 id="basic-unattended">
257 <title>Unattended guest installation</title>
258 <para>VirtualBox is able to automatically install a guest by providing
259 the installation medium as well as a few parameters like the name of
260 the default user.</para>
261 <para>To perform an unattended guest installation, a VM has to be
262 prepared. A VM can be created using the GUI as described in <xref
263 linkend="gui-createvm" /> or by using VBoxManage as described in
264 <xref linkend="vboxmanage-createvm" />. In general it's sufficient to
265 chose the type of the guest operating system and to use the proposed
266 defaults for that operating system. See the following sections on how
267 to change the VM settings for certain needs.</para>
268 <para>After the VM was created, the VM has to be prepared for unattended
269 guest execution use VBoxManage, see <xref
270 linkend="vboxmanage-unattended" />. During this step VirtualBox scans
271 the installation medium and changes certain parameters for a seamless
272 installation as a guest running on VirtualBox.</para>
273 <para>Once the preparation phase was successfully finished, the VM can
274 be started either from the GUI or from VBoxManage, see <xref
275 linkend="vboxmanage-startvm" />. The VM will now perform the automatic
276 installation. Please note that the boot order was changed during the
277 preparation phase by giving the virtual hard disk the highest priority.
278 As the disk is normally empty before an automatic installation is started,
279 the VM will boot from the virtual DVD drive as next available boot medium
280 and the installation will start. If, for some reason, the virtual hard
281 disk contains a bootable operating system then the installation will not
282 start unless the boot order was manually changed by pressing F12 during
283 the BIOS splash screen.</para>
284 </sect1>
285
286 <sect1>
287 <title>Emulated hardware</title>
288
289 <para>VirtualBox virtualizes nearly all hardware of the host. Depending on
290 a VM's configuration, the guest will see the following virtual
291 hardware:<itemizedlist>
292 <listitem>
293 <para><emphasis role="bold">Input devices.</emphasis> By default,
294 VirtualBox emulates a standard PS/2 keyboard and mouse. These
295 devices are supported by almost all past and present operating
296 systems.</para>
297
298 <para>In addition, VirtualBox can provide virtual USB input devices
299 to avoid having to capture mouse and keyboard, as described in <xref
300 linkend="keyb_mouse_normal" />.</para>
301 </listitem>
302
303 <listitem>
304 <para><emphasis role="bold">Graphics.</emphasis> The VirtualBox
305 graphics device (sometimes referred to as VGA device) is, unlike
306 nearly all other emulated devices, not based on any physical
307 counterpart. It is a simple, synthetic device which provides
308 compatibility with standard VGA and several extended registers used
309 by the VESA BIOS Extensions (VBE).</para>
310 </listitem>
311
312 <listitem>
313 <para><emphasis role="bold">Storage.</emphasis> VirtualBox currently
314 emulates the standard ATA interface found on Intel PIIX3/PIIX4
315 chips, the SATA (AHCI) interface, and two SCSI adapters (LSI Logic
316 and BusLogic); see <xref linkend="harddiskcontrollers" /> for
317 details. Whereas providing one of these would be enough for
318 VirtualBox by itself, this multitude of storage adapters is required
319 for compatibility with other hypervisors. Windows is particularly
320 picky about its boot devices, and migrating VMs between hypervisors
321 is very difficult or impossible if the storage controllers are
322 different.</para>
323 </listitem>
324
325 <listitem>
326 <para><emphasis role="bold">Networking.</emphasis> See <xref
327 linkend="nichardware" />.</para>
328 </listitem>
329
330 <listitem>
331 <para><emphasis role="bold">USB.</emphasis> VirtualBox emulates three
332 USB host controllers: xHCI, EHCI, and OHCI. While xHCI handles all USB
333 transfer speeds, only guest operating systems released approximately
334 after 2011 support xHCI. Note that for Windows 7 guests, 3rd party
335 drivers must be installed for xHCI support.</para>
336 <para>
337 Older operating systems typically support OHCI and EHCI. The two
338 controllers are needed because OHCI only handles USB low- and full-speed
339 devices (both USB 1.x and 2.0), while EHCI only handles high-speed
340 devices (USB 2.0 only).</para>
341 <para>
342 The emulated USB controllers do not
343 communicate directly with devices on the host but rather with a
344 virtual USB layer which abstracts the USB protocol and allows the
345 use of remote USB devices.</para>
346 </listitem>
347
348 <listitem>
349 <para><emphasis role="bold">Audio.</emphasis> See <xref
350 linkend="settings-audio" />.</para>
351 </listitem>
352 </itemizedlist></para>
353 </sect1>
354
355 <sect1 id="generalsettings">
356 <title>General settings</title>
357
358 <para>In the Settings window, under "General", you can configure the most
359 fundamental aspects of the virtual machine such as memory and essential
360 hardware. There are three tabs, "Basic", "Advanced" and
361 "Description".</para>
362
363 <sect2>
364 <title>"Basic" tab</title>
365
366 <para>Under the "Basic" tab of the "General" settings category, you can
367 find these settings:</para>
368
369 <glosslist>
370 <glossentry>
371 <glossterm>Name</glossterm>
372
373 <glossdef>
374 <para>The name under which the VM is shown in the list of VMs in
375 the main window. Under this name, VirtualBox also saves the VM's
376 configuration files. By changing the name, VirtualBox renames
377 these files as well. As a result, you can only use characters
378 which are allowed in your host operating system's file
379 names.</para>
380
381 <para>Note that internally, VirtualBox uses unique identifiers
382 (UUIDs) to identify virtual machines. You can display these with
383 <computeroutput>VBoxManage</computeroutput>.</para>
384 </glossdef>
385 </glossentry>
386
387 <glossentry>
388 <glossterm>Operating system / version</glossterm>
389
390 <glossdef>
391 <para>The type of the guest operating system that is (or will be)
392 installed in the VM. This is the same setting that was specified
393 in the "New Virtual Machine" wizard, as described in <xref
394 linkend="gui-createvm" />.</para>
395
396 <para>Whereas the default settings of a newly created VM depend on
397 the selected operating system type, changing the type later has no
398 effect on VM settings; this value is then purely informational and
399 decorative.</para>
400 </glossdef>
401 </glossentry>
402 </glosslist>
403 </sect2>
404
405 <sect2 id="settings-general-advanced">
406 <title>"Advanced" tab</title>
407
408 <para><glosslist>
409 <glossentry>
410 <glossterm>Snapshot Folder</glossterm>
411
412 <glossdef>
413 <para>By default, VirtualBox saves snapshot data together with
414 your other VirtualBox configuration data; see <xref
415 linkend="vboxconfigdata" />. With this setting, you can specify
416 any other folder for each VM.</para>
417 </glossdef>
418 </glossentry>
419
420 <glossentry>
421 <glossterm>Shared Clipboard</glossterm>
422
423 <glossdef>
424 <para>You can select here whether the clipboard of the guest
425 operating system should be shared with that of your host. If you
426 select "Bidirectional", then VirtualBox will always make sure
427 that both clipboards contain the same data. If you select "Host
428 to guest" or "Guest to host", then VirtualBox will only ever
429 copy clipboard data in one direction.</para>
430
431 <para>Clipboard sharing requires that the VirtualBox Guest
432 Additions be installed. As a result, this setting has no effect
433 otherwise; see <xref linkend="guestadditions" /> for
434 details.</para>
435
436 <para>The shared clipboard is disabled by default. See
437 <xref linkend="security_clipboard"/> for an explanation. This
438 setting can be changed at any time using the "Shared Clipboard"
439 menu item in the "Devices" menu of the virtual machine.</para>
440 </glossdef>
441 </glossentry>
442
443 <glossentry>
444 <glossterm>Drag and Drop</glossterm>
445 <glossdef>
446 <para>This setting allows to enable support for drag and drop: Select
447 an object (e.g. a file) from the host or guest and directly copy
448 or open it on the guest or host. Multiple per-VM drag and drop modes
449 allow restricting access in either direction.</para>
450
451 <para>For drag and drop to work the Guest Additions need to be
452 installed on the guest.</para>
453
454 <para><note><para>Drag and drop is disabled by default. This setting can be
455 changed at any time using the "Drag and Drop" menu item in the
456 "Devices" menu of the virtual machine.</para></note></para>
457
458 <para>See <xref linkend="guestadd-dnd"/> for more information.
459 <footnote><para>Experimental support for drag and drop was added
460 with VirtualBox 4.2.</para></footnote></para>
461 </glossdef>
462 </glossentry>
463
464 </glosslist></para>
465 </sect2>
466
467 <sect2>
468 <title>"Description" tab</title>
469
470 <para>Here you can enter any description for your virtual machine, if
471 you want. This has no effect on the functionality of the machine, but
472 you may find this space useful to note down things like the
473 configuration of a virtual machine and the software that has been
474 installed into it.</para>
475 <para>To insert a line break into the description text field, press
476 <emphasis>Shift+Enter</emphasis>.</para>
477 </sect2>
478 </sect1>
479
480 <sect1 id="settings-system">
481 <title>System settings</title>
482
483 <para>The "System" category groups various settings that are related to
484 the basic hardware that is presented to the virtual machine.<note>
485 <para>As the activation mechanism of Microsoft Windows is sensitive to
486 hardware changes, if you are changing hardware settings for a Windows
487 guest, some of these changes may trigger a request for another
488 activation with Microsoft.</para>
489 </note></para>
490
491 <sect2 id="settings-motherboard">
492 <title>"Motherboard" tab</title>
493
494 <para>On the "Motherboard" tab, you can influence virtual hardware that
495 would normally be on the motherboard of a real computer.<glosslist>
496 <glossentry>
497 <glossterm>Base memory</glossterm>
498
499 <glossdef>
500 <para>This sets the amount of RAM that is allocated and given to
501 the VM when it is running. The specified amount of memory will
502 be requested from the host operating system, so it must be
503 available or made available as free memory on the host when
504 attempting to start the VM and will not be available to the host
505 while the VM is running. This is the same setting that was
506 specified in the "New Virtual Machine" wizard, as described with
507 guidelines under <xref linkend="gui-createvm" /> above.</para>
508
509 <para>Generally, it is possible to change the memory size after
510 installing the guest operating system (provided you do not
511 reduce the memory to an amount where the operating system would
512 no longer boot).</para>
513 </glossdef>
514 </glossentry>
515
516 <glossentry>
517 <glossterm>Boot order</glossterm>
518
519 <glossdef>
520 <para>This setting determines the order in which the guest
521 operating system will attempt to boot from the various virtual
522 boot devices. Analogous to a real PC's BIOS setting, VirtualBox
523 can tell a guest OS to start from the virtual floppy, the
524 virtual CD/DVD drive, the virtual hard drive (each of these as
525 defined by the other VM settings), the network, or none of
526 these.</para>
527
528 <para>If you select "Network", the VM will attempt to boot from
529 a network via the PXE mechanism. This needs to be configured in
530 detail on the command line; please see <xref
531 linkend="vboxmanage-modifyvm" />.</para>
532 </glossdef>
533 </glossentry>
534
535 <glossentry>
536 <glossterm>Chipset</glossterm>
537
538 <glossdef>
539 <para>Here you can select which chipset will be presented to the
540 virtual machine. Before VirtualBox 4.0, PIIX3 was the only
541 available option here. For modern guest operating systems such
542 as Mac OS X, that old chipset is no longer well supported. As a
543 result, VirtualBox 4.0 introduced an emulation of the more
544 modern ICH9 chipset, which supports PCI express, three PCI
545 buses, PCI-to-PCI bridges and Message Signaled Interrupts
546 (MSI). This allows modern operating systems to address more PCI
547 devices and no longer requires IRQ sharing. Using the ICH9 chipset
548 it is also possible to configure up to 36 network cards (up to 8
549 network adapters with PIIX3). Note that the ICH9 support is
550 experimental and not recommended for guest operating systems which
551 do not require it.</para>
552 </glossdef>
553 </glossentry>
554
555 <glossentry>
556 <glossterm>Pointing Device</glossterm>
557
558 <glossdef>
559 <para>The default virtual pointing devices for older guests is the
560 traditional PS/2 mouse. If set to <emphasis>USB tablet</emphasis>,
561 VirtualBox reports to the virtual machine that a USB tablet
562 device is present and communicates mouse events to
563 the virtual machine through this device. The third setting is
564 a <emphasis>USB Multi-Touch Tablet</emphasis> which is suited
565 for recent Windows guests.</para>
566
567 <para>Using the virtual USB tablet has the advantage that
568 movements are reported in absolute coordinates (instead of as
569 relative position changes), which allows VirtualBox to translate
570 mouse events over the VM window into tablet events without
571 having to "capture" the mouse in the guest as described in <xref
572 linkend="keyb_mouse_normal" />. This makes using the VM less
573 tedious even if Guest Additions are not installed.<footnote>
574 <para>The virtual USB tablet was added with VirtualBox 3.2.
575 Depending on the guest operating system selected, this is
576 now enabled by default for new virtual machines.</para>
577 </footnote></para>
578 </glossdef>
579 </glossentry>
580 <glossentry>
581 <glossterm>Enable I/O APIC</glossterm>
582
583 <glossdef>
584 <para>Advanced Programmable Interrupt Controllers (APICs) are a
585 newer x86 hardware feature that have replaced old-style
586 Programmable Interrupt Controllers (PICs) in recent years. With
587 an I/O APIC, operating systems can use more than 16 interrupt
588 requests (IRQs) and therefore avoid IRQ sharing for improved
589 reliability.<note>
590 <para>Enabling the I/O APIC is <emphasis>required</emphasis>
591 for 64-bit guest operating systems, especially Windows
592 Vista; it is also required if you want to use more than one
593 virtual CPU in a virtual machine.</para>
594 </note></para>
595
596 <para>However, software support for I/O APICs has been
597 unreliable with some operating systems other than Windows. Also,
598 the use of an I/O APIC slightly increases the overhead of
599 virtualization and therefore slows down the guest OS a
600 little.<warning>
601 <para>All Windows operating systems starting with Windows
602 2000 install different kernels depending on whether an I/O
603 APIC is available. As with ACPI, the I/O APIC therefore
604 <emphasis>must not be turned off after
605 installation</emphasis> of a Windows guest OS. Turning it on
606 after installation will have no effect however.</para>
607 </warning></para>
608 </glossdef>
609 </glossentry>
610
611 <glossentry>
612 <glossterm>Enable EFI</glossterm>
613
614 <glossdef>
615 <para>This enables Extensible Firmware Interface (EFI), which
616 replaces the legacy BIOS and may be useful for certain
617 advanced use cases. Please refer to <xref linkend="efi" /> for
618 details.</para>
619 </glossdef>
620 </glossentry>
621
622 <glossentry>
623 <glossterm>Hardware clock in UTC time</glossterm>
624
625 <glossdef>
626 <para>If checked, VirtualBox will report the system time in UTC
627 format to the guest instead of local (host) time. This affects
628 how the virtual real-time clock (RTC) operates and may be useful
629 for Unix-like guest operating systems, which typically expect
630 the hardware clock to be set to UTC.</para>
631 </glossdef>
632 </glossentry>
633
634 </glosslist></para>
635
636 <para>In addition, you can turn off the <emphasis role="bold">Advanced
637 Configuration and Power Interface (ACPI)</emphasis> which VirtualBox
638 presents to the guest operating system by default. ACPI is the current
639 industry standard to allow operating systems to recognize hardware,
640 configure motherboards and other devices and manage power. As all modern
641 PCs contain this feature and Windows and Linux have been supporting it
642 for years, it is also enabled by default in VirtualBox. It can only be
643 turned off on the command line; see <xref
644 linkend="vboxmanage-modifyvm" />.<warning>
645 <para>All Windows operating systems starting with Windows 2000
646 install different kernels depending on whether ACPI is available, so
647 ACPI <emphasis>must not be turned off</emphasis> after installation
648 of a Windows guest OS. Turning it on after installation will have no
649 effect however.</para>
650 </warning></para>
651 </sect2>
652
653 <sect2 id="settings-processor">
654 <title>"Processor" tab</title>
655
656 <para>On the "Processor" tab, you can set how many virtual <emphasis
657 role="bold">CPU cores</emphasis> the guest operating systems should see.
658 Starting with version 3.0, VirtualBox supports symmetrical
659 multiprocessing (SMP) and can present up to 32 virtual CPU cores to each
660 virtual machine.</para>
661
662 <para>You should not, however, configure virtual machines to use more
663 CPU cores than you have available physically (real cores, no hyperthreads).</para>
664
665 <para>On this tab you can also set the <emphasis role="bold">"CPU execution
666 cap"</emphasis>. This setting
667 limits the amount of time a host CPU spends to emulate a virtual CPU.
668 The default setting is 100% meaning that there is no limitation. A setting
669 of 50% implies a single virtual CPU can use up to 50% of a single host
670 CPU. Note that limiting the execution time of the virtual CPUs may induce
671 guest timing problems.</para>
672
673 <para>In addition, the <emphasis role="bold">"Enable PAE/NX"</emphasis>
674 setting determines whether the PAE and NX capabilities of the host CPU
675 will be exposed to the virtual machine. PAE stands for "Physical Address
676 Extension". Normally, if enabled and supported by the operating system,
677 then even a 32-bit x86 CPU can access more than 4 GB of RAM. This is
678 made possible by adding another 4 bits to memory addresses, so that with
679 36 bits, up to 64 GB can be addressed. Some operating systems (such as
680 Ubuntu Server) require PAE support from the CPU and cannot be run in a
681 virtual machine without it.</para>
682
683 <para>With virtual machines running modern server operating systems,
684 VirtualBox also supports CPU hot-plugging. For details about this,
685 please refer to <xref linkend="cpuhotplug" />.</para>
686 </sect2>
687
688 <sect2>
689 <title>"Acceleration" tab</title>
690
691 <para>On this page, you can determine whether and how VirtualBox should
692 use hardware virtualization extensions that your host CPU may support.
693 This is the case with most CPUs built after 2006.</para>
694
695 <para>You can select for each virtual machine individually whether
696 VirtualBox should use software or hardware virtualization.<footnote>
697 <para>Prior to VirtualBox version 2.2, software virtualization was
698 the default; starting with version 2.2, VirtualBox will enable
699 hardware virtualization by default for new virtual machines that you
700 create. (Existing virtual machines are not automatically changed for
701 compatibility reasons, and the default can of course be changed for
702 each virtual machine.)</para>
703 </footnote></para>
704
705 <para>In most cases, the default settings will be fine; VirtualBox will
706 have picked sensible defaults depending on the operating system that you
707 selected when you created the virtual machine. In certain situations,
708 however, you may want to change these preconfigured defaults.</para>
709
710 <para>Advanced users may be interested in technical details about
711 software vs. hardware virtualization; please see <xref
712 linkend="hwvirt" />.</para>
713
714 <para>If your host's CPU supports the <emphasis role="bold">nested
715 paging</emphasis> (AMD-V) or <emphasis role="bold">EPT</emphasis> (Intel
716 VT-x) features, then you can expect a significant performance increase
717 by enabling nested paging in addition to hardware virtualization. For
718 technical details, see <xref linkend="nestedpaging" />.</para>
719
720 <para>Starting with version 5.0, VirtualBox provides paravirtualization
721 interfaces to improve time-keeping accuracy and performance of guest
722 operating systems. The options available are documented under the
723 <computeroutput>paravirtprovider</computeroutput> option
724 in <xref linkend="vboxmanage-modifyvm" />. For further details on
725 the paravirtualization providers, please refer to
726 <xref linkend="gimproviders" />.</para>
727 </sect2>
728 </sect1>
729
730 <sect1 id="settings-display">
731 <title>Display settings</title>
732
733 <glosslist>
734 <glossentry>
735 <glossterm>Video memory size</glossterm>
736
737 <glossdef>
738 <para>This sets the size of the memory provided by the virtual
739 graphics card available to the guest, in MB. As with the main
740 memory, the specified amount will be allocated from the host's
741 resident memory. Based on the amount of video memory, higher
742 resolutions and color depths may be available.</para>
743 <para>The GUI will show a warning if the amount of video memory
744 is too small to be able to switch the VM into full screen mode.
745 The minimum value depends on the number of virtual monitors, the
746 screen resolution and the color depth of the host display as well
747 as of the activation of <emphasis>3D acceleration</emphasis> and
748 <emphasis>2D video acceleration</emphasis>. A rough estimate
749 is (<emphasis>color depth</emphasis> / 8) x
750 <emphasis>vertical pixels</emphasis> x
751 <emphasis>horizontal pixels</emphasis> x
752 <emphasis>number of screens</emphasis> = <emphasis>number of bytes</emphasis>.
753 Like said above, there might be extra memory required for any
754 activated display acceleration setting.</para>
755 </glossdef>
756 </glossentry>
757
758 <glossentry>
759 <glossterm>Monitor count</glossterm>
760
761 <glossdef>
762 <para>With this setting VirtualBox can provide more than one virtual
763 monitor to a virtual machine. If a guest operating system (such as
764 Windows) supports multiple attached monitors, VirtualBox can pretend
765 that multiple virtual monitors are present.<footnote>
766 <para>Multiple monitor support was added with VirtualBox
767 3.2.</para>
768 </footnote> Up to 8 such virtual monitors are supported.</para>
769
770 <para>The output of the multiple monitors will be displayed on the
771 host in multiple VM windows which are running side by side.</para>
772
773 <para>However, in full screen and seamless mode, they will use the
774 available physical monitors attached to the host. As a result, for
775 full screen and seamless modes to work with multiple monitors, you
776 will need at least as many physical monitors as you have virtual
777 monitors configured, or VirtualBox will report an error. You can
778 configure the relationship between guest and host monitors using the
779 view menu by pressing Host key + Home when you are in full screen or
780 seamless mode.</para>
781
782 <para>Please see <xref linkend="KnownIssues" /> also.</para>
783 </glossdef>
784 </glossentry>
785
786 <glossentry>
787 <glossterm>Enable 3D acceleration</glossterm>
788
789 <glossdef>
790 <para>If a virtual machine has Guest Additions installed, you can
791 select here whether the guest should support accelerated 3D
792 graphics. Please refer to <xref linkend="guestadd-3d" /> for
793 details.</para>
794 </glossdef>
795 </glossentry>
796
797 <glossentry>
798 <glossterm>Enable 2D video acceleration</glossterm>
799
800 <glossdef>
801 <para>If a virtual machine with Microsoft Windows has Guest
802 Additions installed, you can select here whether the guest should
803 support accelerated 2D video graphics. Please refer to <xref
804 linkend="guestadd-2d" /> for details.</para>
805 </glossdef>
806 </glossentry>
807
808 <glossentry>
809 <glossterm>Remote display</glossterm>
810
811 <glossdef>
812 <para>Under the "Remote display" tab, if the VirtualBox Remote
813 Display Extension (VRDE) is installed, you can enable the VRDP server
814 that is built into VirtualBox. This allows you to connect to the
815 console of the virtual machine remotely with any standard RDP viewer,
816 such as <computeroutput>mstsc.exe</computeroutput> that comes with
817 Microsoft Windows. On Linux and Solaris systems you can use the
818 standard open-source <computeroutput>rdesktop</computeroutput>
819 program. These features are described in detail in
820 <xref linkend="vrde" />.</para>
821 </glossdef>
822 </glossentry>
823
824 <glossentry>
825 <glossterm>Video Capture</glossterm>
826
827 <glossdef>
828 <para>Under the "Video Capture" tab you can enable video capturing
829 for this VM. Note that this feature can also be enabled/disabled
830 while the VM is executed.</para>
831 </glossdef>
832 </glossentry>
833 </glosslist>
834 </sect1>
835
836 <sect1 id="settings-storage">
837 <title>Storage settings</title>
838
839 <para>The "Storage" category in the VM settings allows you to connect
840 virtual hard disk, CD/DVD and floppy images and drives to your virtual
841 machine.</para>
842
843 <para>In a real PC, so-called "storage controllers" connect physical disk
844 drives to the rest of the computer. Similarly, VirtualBox presents virtual
845 storage controllers to a virtual machine. Under each controller, the
846 virtual devices (hard disks, CD/DVD or floppy drives) attached to the
847 controller are shown.<note>
848 <para>This section can only give you a quick introduction to the
849 VirtualBox storage settings. Since VirtualBox gives you an enormous
850 wealth of options in this area, we have dedicated an entire chapter of
851 this User Manual to explaining all the details: please see <xref
852 linkend="storage" />.</para>
853 </note></para>
854
855 <para>If you have used the "Create VM" wizard to create a machine, you
856 will normally see something like the following:</para>
857
858 <para><mediaobject>
859 <imageobject>
860 <imagedata align="center" fileref="images/vm-settings-harddisk.png"
861 width="10cm" />
862 </imageobject>
863 </mediaobject></para>
864
865 <para>Depending on the guest operating system type that you selected when
866 you created the VM, the typical layout of storage devices in a new VM is
867 as follows:<itemizedlist>
868 <listitem>
869 <para>You will see an <emphasis role="bold">IDE
870 controller,</emphasis> to which a virtual CD/DVD drive has been
871 attached (to the "secondary master" port of the IDE
872 controller).</para>
873 </listitem>
874
875 <listitem>
876 <para>You will also see a <emphasis role="bold">SATA
877 controller,</emphasis> which is a more modern type of storage
878 controller for higher hard disk data throughput, to which the
879 virtual hard disks are attached. Initially you will normally have
880 one such virtual disk, but as you can see in the above screenshot,
881 you can have more than one, each represented by a disk image file
882 (VDI files, in this case).</para>
883 </listitem>
884 </itemizedlist></para>
885
886 <para>If you created your VM with an older version of VirtualBox, the
887 default storage layout may differ. You might then only have an IDE
888 controller to which both the CD/DVD drive and the hard disks have been
889 attached. This might also apply if you selected an older operating system
890 type when you created the VM. Since older operating systems do not support
891 SATA without additional drivers, VirtualBox will make sure that no such
892 devices are present initially. Please see <xref
893 linkend="harddiskcontrollers" /> for additional information.</para>
894
895 <para>VirtualBox also provides a <emphasis role="bold">floppy
896 controller</emphasis>, which is special: you cannot add devices other than
897 floppy drives to it. Virtual floppy drives, like virtual CD/DVD drives,
898 can be connected to either a host floppy drive (if you have one) or a disk
899 image, which in this case must be in RAW format.</para>
900
901 <para>You can modify these media attachments freely. For example, if you
902 wish to copy some files from another virtual disk that you created, you
903 can connect that disk as a second hard disk, as in the above screenshot.
904 You could also add a second virtual CD/DVD drive, or change where these
905 items are attached. The following options are available:<itemizedlist>
906 <listitem>
907 <para>To <emphasis role="bold">add another virtual hard disk, or a
908 CD/DVD or floppy drive,</emphasis> select the storage controller to
909 which it should be added (IDE, SATA, SCSI, SAS, floppy controller)
910 and then click on the "add disk" button below the tree. You can then
911 either select "Add CD/DVD device" or "Add Hard Disk". (If you
912 clicked on a floppy controller, you can add a floppy drive instead.)
913 Alternatively, right-click on the storage controller and select a
914 menu item there.</para>
915
916 <para>On the right part of the window, you can then set the
917 following:<orderedlist>
918 <listitem>
919 <para>You can then select to which <emphasis
920 role="bold">device slot</emphasis> of the controller the
921 virtual disk should be connected to. IDE controllers have four
922 slots which have traditionally been called "primary master",
923 "primary slave", "secondary master" and "secondary slave". By
924 contrast, SATA and SCSI controllers offer you up to 30 slots
925 to which virtual devices can be attached.</para>
926 </listitem>
927
928 <listitem>
929 <para>You can select which <emphasis role="bold">image
930 file</emphasis> to use.<itemizedlist>
931 <listitem>
932 <para>For virtual hard disks, a button with a drop-down
933 list appears on the right, offering you to either select
934 a <emphasis role="bold">virtual hard disk
935 file</emphasis> using a standard file dialog or to
936 <emphasis role="bold">create a new hard disk</emphasis>
937 (image file), which will bring up the "Create new disk"
938 wizard, which was described in <xref
939 linkend="gui-createvm" />.</para>
940
941 <para>For details on the image file types that are
942 supported, please see <xref
943 linkend="vdidetails" />.</para>
944 </listitem>
945
946 <listitem>
947 <para>For virtual CD/DVD drives, the image files will
948 typically be in the standard ISO format instead. Most
949 commonly, you will select this option when installing an
950 operating system from an ISO file that you have obtained
951 from the Internet. For example, most Linux distributions
952 are available in this way.</para>
953
954 <para>For virtual CD/DVD drives, the following
955 additional options are available:</para>
956
957 <para><itemizedlist>
958 <listitem>
959 <para>If you select <emphasis role="bold">"Host
960 drive"</emphasis> from the list, then the physical
961 device of the host computer is connected to the VM,
962 so that the guest operating system can read from and
963 write to your physical device. This is, for
964 instance, useful if you want to install Windows from
965 a real installation CD. In this case, select your
966 host drive from the drop-down list presented.</para>
967
968 <para>If you want to write (burn) CDs or DVDs using
969 the host drive, you need to also enable the
970 <emphasis role="bold">"Passthrough"</emphasis>
971 option; see <xref linkend="storage-cds" />.</para>
972 </listitem>
973
974 <listitem>
975 <para>If you select <emphasis role="bold">"Remove
976 disk from virtual drive",</emphasis> VirtualBox will
977 present an empty CD/DVD drive to the guest into
978 which no media has been inserted.</para>
979 </listitem>
980 </itemizedlist></para>
981 </listitem>
982 </itemizedlist></para>
983 </listitem>
984 </orderedlist></para>
985 </listitem>
986
987 <listitem>
988 <para>To <emphasis role="bold">remove an attachment,</emphasis>
989 select it and click on the "remove" icon at the bottom (or
990 right-click on it and select the menu item).</para>
991 </listitem>
992 </itemizedlist></para>
993
994 <para>Removable media (CD/DVDs and floppies) can be changed while the
995 guest is running. Since the "Settings" dialog is not available at that
996 time, you can also access these settings from the "Devices" menu of your
997 virtual machine window.</para>
998 </sect1>
999
1000 <sect1 id="settings-audio">
1001 <title>Audio settings</title>
1002
1003 <para>The "Audio" section in a virtual machine's Settings window
1004 determines whether the VM will see a sound card connected, and whether the
1005 audio output should be heard on the host system.</para>
1006
1007 <para>If audio is enabled for a guest, you can choose between the
1008 emulation of an Intel AC'97 controller, an Intel HD Audio
1009 controller<footnote>
1010 <para>Intel HD Audio support was added with VirtualBox 4.0 because
1011 Windows 7 and later (as well as 64-bit Windows Vista) do not support
1012 the Intel AC'97 controller out of the box.</para>
1013 </footnote> or a SoundBlaster 16 card. In any case, you can select what
1014 audio driver VirtualBox will use on the host.</para>
1015
1016 <para>On a Linux host, depending on your host configuration, you can also
1017 select between the OSS, ALSA or the PulseAudio subsystem. On newer Linux
1018 distributions, the PulseAudio subsystem should be preferred.</para>
1019
1020 <para>Since VirtualBox 5.0 only OSS is supported on Solaris hosts - the "Solaris Audio"
1021 audio backend is no longer supported on Solaris hosts.</para>
1022 </sect1>
1023
1024 <sect1 id="settings-network">
1025 <title>Network settings</title>
1026
1027 <para>The "Network" section in a virtual machine's Settings window allows
1028 you to configure how VirtualBox presents virtual network cards to your VM,
1029 and how they operate.</para>
1030
1031 <para>When you first create a virtual machine, VirtualBox by default
1032 enables one virtual network card and selects the "Network Address
1033 Translation" (NAT) mode for it. This way the guest can connect to the
1034 outside world using the host's networking and the outside world can
1035 connect to services on the guest which you choose to make visible outside
1036 of the virtual machine.</para>
1037
1038 <para>This default setup is good for probably 95% of VirtualBox users.
1039 However, VirtualBox is extremely flexible in how it can virtualize
1040 networking. It supports many virtual network cards per virtual machine,
1041 the first four of which can be configured in detail in the Manager window.
1042 Additional network cards can be configured on the command line with
1043 VBoxManage. </para>
1044
1045 <para>Because of the vast array of options available, we have dedicated an
1046 entire chapter of this manual to discussing networking configuration;
1047 please see <xref linkend="networkingdetails" />.</para>
1048 </sect1>
1049
1050 <sect1 id="serialports">
1051 <title>Serial ports</title>
1052
1053 <para>VirtualBox fully supports virtual serial ports in a virtual machine
1054 in an easy-to-use manner.<footnote>
1055 <para>Serial port support was added with VirtualBox 1.5.</para>
1056 </footnote></para>
1057
1058 <para>Ever since the original IBM PC, personal computers have been
1059 equipped with one or two serial ports (also called COM ports by DOS and
1060 Windows). Serial ports were commonly used with modems, and some
1061 computer mice used to be connected to serial ports before USB became
1062 commonplace.
1063 </para>
1064
1065 <para>While serial ports are no longer as ubiquitous as they used to be,
1066 there are still some important uses left for them. For example, serial
1067 ports can be used to set up a primitive network over a null-modem cable,
1068 in case Ethernet is not available. Also, serial ports are indispensable
1069 for system programmers needing to do kernel debugging, since kernel
1070 debugging software usually interacts with developers over a serial port.
1071 With virtual serial ports, system programmers can do kernel debugging on a
1072 virtual machine instead of needing a real computer to connect to.</para>
1073
1074 <para>If a virtual serial port is enabled, the guest operating system sees
1075 a standard 16550A compatible UART device. Both receiving and transmitting
1076 data is supported. How this virtual serial port is then connected to the
1077 host is configurable, and the details depend on your host operating system.
1078 </para>
1079
1080 <para>You can use either the graphical user interface or the command-line
1081 <computeroutput>VBoxManage</computeroutput> tool to set up virtual serial
1082 ports. For the latter, please refer to <xref
1083 linkend="vboxmanage-modifyvm" />; in that section, look for the
1084 <computeroutput>--uart</computeroutput> and
1085 <computeroutput>--uartmode</computeroutput> options.</para>
1086
1087 <para>In either case, you can configure up to four virtual serial ports per
1088 virtual machine. For each such device, you will need to
1089 determine<orderedlist>
1090 <listitem>
1091 <para>what kind of serial port the virtual machine should see by
1092 selecting an I/O base address and interrupt (IRQ). For these, we
1093 recommend to use the traditional values<footnote>
1094 <para>See, for example, <ulink
1095 url="http://en.wikipedia.org/wiki/COM_(hardware_interface)">http://en.wikipedia.org/wiki/COM_(hardware_interface)</ulink>.</para>
1096 </footnote>, which are:</para>
1097
1098 <para><orderedlist>
1099 <listitem>
1100 <para>COM1: I/O base 0x3F8, IRQ 4</para>
1101 </listitem>
1102
1103 <listitem>
1104 <para>COM2: I/O base 0x2F8, IRQ 3</para>
1105 </listitem>
1106
1107 <listitem>
1108 <para>COM3: I/O base 0x3E8, IRQ 4</para>
1109 </listitem>
1110
1111 <listitem>
1112 <para>COM4: I/O base 0x2E8, IRQ 3</para>
1113 </listitem>
1114 </orderedlist></para>
1115 </listitem>
1116
1117 <listitem>
1118 <para>Then, you will need to determine what this virtual port should
1119 be connected to. For each virtual serial port, you have the
1120 following options:</para>
1121
1122 <para><itemizedlist>
1123 <listitem>
1124 <para>You can elect to have the virtual serial port
1125 "disconnected", which means that the guest will see the
1126 device, but it will behave as if no cable had been connected
1127 to it.</para>
1128 </listitem>
1129
1130 <listitem>
1131 <para>You can connect the virtual serial port to a physical
1132 serial port on your host. (On a Windows host, this will be a
1133 name like <computeroutput>COM1</computeroutput>; on Linux or
1134 Solaris hosts, it will be a device node like
1135 <computeroutput>/dev/ttyS0</computeroutput>). VirtualBox will
1136 then simply redirect all data received from and sent to the
1137 virtual serial port to the physical device.</para>
1138 </listitem>
1139
1140 <listitem>
1141 <para>You can tell VirtualBox to connect the virtual serial
1142 port to a software pipe on the host. This depends on your host
1143 operating system:<itemizedlist>
1144 <listitem>
1145 <para>On a Windows host, data will be sent and received
1146 through a named pipe. The pipe name must be in the format
1147 <computeroutput>\\.\pipe\&lt;name&gt;</computeroutput>
1148 where <computeroutput>&lt;name&gt;</computeroutput> should
1149 identify the virtual machine but may be freely
1150 chosen.</para>
1151 </listitem>
1152
1153 <listitem>
1154 <para>On a Mac, Linux or Solaris host, a local
1155 domain socket is used instead. The socket filename must be
1156 chosen such that the user running VirtualBox has
1157 sufficient privileges to create and write to it. The
1158 <computeroutput>/tmp</computeroutput> directory is often a
1159 good candidate.</para>
1160 <para>On Linux there are various tools which can connect
1161 to a local domain socket or create one in server mode. The
1162 most flexible tool is
1163 <computeroutput>socat</computeroutput> and is available
1164 as part of many distributions.</para>
1165 </listitem>
1166 </itemizedlist></para>
1167
1168 <para>In this case, you can configure whether VirtualBox
1169 should create the named pipe (or, on non-Windows hosts, the
1170 local domain socket) itself or whether VirtualBox should
1171 assume that the pipe (or socket) exists already. With the
1172 <computeroutput>VBoxManage</computeroutput> command-line
1173 options, this is referred to as "server" or "client" mode,
1174 respectively.</para>
1175
1176 <para>For a direct connection between two virtual machines
1177 (corresponding to a null-modem cable), simply configure one VM
1178 to create a pipe/socket and another to attach to it.
1179 </para>
1180 </listitem>
1181
1182 <listitem>
1183 <para>You can send the virtual serial port output to a file.
1184 This option is very useful for capturing diagnostic output from
1185 a guest. Any file may be used for this purpose, as long as the
1186 user running VirtualBox has sufficient privileges to create and
1187 write to the file.
1188 </para>
1189 </listitem>
1190
1191 <listitem>
1192 <para>TCP Socket: Useful for forwarding serial traffic over TCP/IP,
1193 acting as a server, or it can act as a TCP client connecting to other
1194 servers. It allows a remote machine to directly connect to the guest's
1195 serial port via TCP.
1196 </para>
1197 <itemizedlist>
1198 <listitem>
1199 <para>TCP Server: Uncheck the
1200 <emphasis>Connect to existing pipe/socket</emphasis> checkbox and specify
1201 the <emphasis role="bold"><computeroutput>port</computeroutput></emphasis>
1202 number. Typically 23 or 2023. Note that on UNIX-like systems you will
1203 have to use a port a number greater than 1024 for regular users.
1204 </para>
1205 <para>
1206 The client can use software such as <computeroutput>PuTTY</computeroutput>
1207 or the <computeroutput>telnet</computeroutput> command line
1208 tool to access the TCP Server.
1209 </para>
1210 </listitem>
1211 <listitem>
1212 <para>TCP Client: To create a virtual null-modem cable over the Internet or
1213 LAN, the other side can connect via TCP by specifying <emphasis role="bold">
1214 <computeroutput>hostname:port</computeroutput></emphasis>. The TCP socket
1215 will act in client mode if check the <emphasis>Connect to existing pipe/socket</emphasis>
1216 checkbox.
1217 </para>
1218 </listitem>
1219 </itemizedlist>
1220 </listitem>
1221
1222 </itemizedlist></para>
1223 </listitem>
1224 </orderedlist>Up to four serial ports can be configured per virtual
1225 machine, but you can pick any port numbers out of the above. However,
1226 serial ports cannot reliably share interrupts; if both ports are to be
1227 used at the same time, they must use different interrupt levels, for
1228 example COM1 and COM2, but not COM1 and COM3.
1229 </para>
1230 </sect1>
1231
1232 <sect1>
1233 <title>USB support</title>
1234
1235 <sect2 id="settings-usb">
1236 <title>USB settings</title>
1237
1238 <para>The "USB" section in a virtual machine's Settings window allows
1239 you to configure VirtualBox's sophisticated USB support.</para>
1240
1241 <para>VirtualBox can allow virtual machines to access the USB devices on
1242 your host directly. To achieve this, VirtualBox presents the guest
1243 operating system with a virtual USB controller. As soon as the guest
1244 system starts using a USB device, it will appear as unavailable on the
1245 host.<note>
1246 <orderedlist>
1247 <listitem>
1248 <para>Be careful with USB devices that are currently in use on
1249 the host! For example, if you allow your guest to connect to
1250 your USB hard disk that is currently mounted on the host, when
1251 the guest is activated, it will be disconnected from the host
1252 without a proper shutdown. This may cause data loss.</para>
1253 </listitem>
1254
1255 <listitem>
1256 <para>Solaris hosts have a few known limitations regarding USB
1257 support; please see <xref linkend="KnownIssues" />.</para>
1258 </listitem>
1259 </orderedlist>
1260 </note></para>
1261
1262 <para>In addition to allowing a guest access to your local USB devices,
1263 VirtualBox even allows your guests to connect to remote USB devices by
1264 use of the VirtualBox Remote Desktop Extension (VRDE). For details about
1265 this, see <xref linkend="usb-over-rdp" />.</para>
1266
1267 <para>In the Settings dialog, you can first configure whether USB is
1268 available in the guest at all, and then choose the level of USB support:
1269 OHCI for USB 1.1, EHCI (which will also enable OHCI) for USB 2.0,
1270 or xHCI for all USB speeds. <note>
1271 <para>The xHCI and EHCI controllers are shipped as a VirtualBox extension
1272 package, which must be installed separately. See <xref
1273 linkend="intro-installing" /> for more information.</para>
1274 </note></para>
1275
1276 <para>When USB support is enabled for a VM, you can determine in detail
1277 which devices will be automatically attached to the guest. For this, you
1278 can create so-called "filters" by specifying certain properties of
1279 the USB device. USB devices with a matching filter will be automatically
1280 passed to the guest once they are attached to the host. USB devices
1281 without a matching filter can be passed manually to the guest, for
1282 example by using the Devices / USB devices menu.</para>
1283
1284 <para>Clicking on the "+" button to the right of the "USB Device
1285 Filters" window creates a <emphasis role="bold">new filter.</emphasis>
1286 You can give the filter a name (for referencing it later) and specify
1287 the filter criteria. The more criteria you specify, the more precisely
1288 devices will be selected. For instance, if you specify only a vendor ID
1289 of 046d, all devices produced by Logitech will be available to the
1290 guest. If you fill in all fields, on the other hand, the filter will
1291 only apply to a particular device model from a particular vendor, and
1292 not even to other devices of the same type with a different revision and
1293 serial number.</para>
1294
1295 <para>In detail, the following criteria are available:</para>
1296
1297 <orderedlist>
1298 <listitem>
1299 <para><emphasis role="bold">Vendor and product ID.</emphasis> With
1300 USB, each vendor of USB products carries an identification number
1301 that is unique world-wide, the "vendor ID". Similarly, each line of
1302 products is assigned a "product ID" number. Both numbers are
1303 commonly written in hexadecimal (that is, they are composed of the
1304 numbers 0-9 and the letters A-F), and a colon separates the vendor
1305 from the product ID. For example,
1306 <computeroutput>046d:c016</computeroutput> stands for Logitech as a
1307 vendor, and the "M-UV69a Optical Wheel Mouse" product.</para>
1308
1309 <para>Alternatively, you can also specify <emphasis
1310 role="bold">"Manufacturer"</emphasis> and <emphasis
1311 role="bold">"Product"</emphasis> by name.</para>
1312
1313 <para>To list all the USB devices that are connected to your host
1314 machine with their respective vendor and product IDs, you can use
1315 the following command (see <xref linkend="vboxmanage" />): <screen>VBoxManage list usbhost</screen></para>
1316
1317 <para>On Windows, you can also see all USB devices that are attached
1318 to your system in the Device Manager. On Linux, you can use the
1319 <computeroutput>lsusb</computeroutput> command.</para>
1320 </listitem>
1321
1322 <listitem>
1323 <para><emphasis role="bold">Serial number.</emphasis> While vendor
1324 and product ID are already quite specific to identify USB devices,
1325 if you have two identical devices of the same brand and product
1326 line, you will also need their serial numbers to filter them out
1327 correctly.</para>
1328 </listitem>
1329
1330 <listitem>
1331 <para><emphasis role="bold">Remote.</emphasis> This setting
1332 specifies whether the device will be local only, or remote only
1333 (over VRDP), or either.</para>
1334 </listitem>
1335 </orderedlist>
1336
1337 <para>On a Windows host, you will need to unplug and reconnect a USB
1338 device to use it after creating a filter for it.</para>
1339
1340 <para>As an example, you could create a new USB filter and specify a
1341 vendor ID of 046d (Logitech, Inc), a manufacturer index of 1, and "not
1342 remote". Then any USB devices on the host system produced by Logitech,
1343 Inc with a manufacturer index of 1 will be visible to the guest
1344 system.</para>
1345
1346 <para>Several filters can select a single device -- for example, a
1347 filter which selects all Logitech devices, and one which selects a
1348 particular webcam.</para>
1349
1350 <para>You can <emphasis role="bold">deactivate</emphasis> filters
1351 without deleting them by clicking in the checkbox next to the filter
1352 name.</para>
1353 </sect2>
1354
1355 <sect2>
1356 <title>Implementation notes for Windows and Linux hosts</title>
1357
1358 <para>On Windows hosts, a kernel mode device driver provides USB proxy
1359 support. It implements both a USB monitor, which allows VirtualBox to
1360 capture devices when they are plugged in, and a USB device driver to
1361 claim USB devices for a particular virtual machine. As opposed to
1362 VirtualBox versions before 1.4.0, system reboots are no longer necessary
1363 after installing the driver. Also, you no longer need to replug devices
1364 for VirtualBox to claim them.</para>
1365
1366 <para>On newer Linux hosts, VirtualBox accesses USB devices through
1367 special files in the file system. When VirtualBox is installed, these
1368 are made available to all users in the
1369 <computeroutput>vboxusers</computeroutput> system group. In order to be
1370 able to access USB from guest systems, make sure that you are a member
1371 of this group.</para>
1372
1373 <para>On older Linux hosts, USB devices are accessed using the
1374 <computeroutput>usbfs</computeroutput> file system. Therefore, the user
1375 executing VirtualBox needs read and write permission to the USB file
1376 system. Most distributions provide a group (e.g.
1377 <computeroutput>usbusers</computeroutput>) which the VirtualBox user
1378 needs to be added to. Also, VirtualBox can only proxy to virtual
1379 machines USB devices which are not claimed by a Linux host USB driver.
1380 The <computeroutput>Driver=</computeroutput> entry in
1381 <computeroutput>/proc/bus/usb/devices</computeroutput> will show you
1382 which devices are currently claimed. Please refer to <xref
1383 linkend="ts_usb-linux" /> also for details about
1384 <computeroutput>usbfs</computeroutput>.</para>
1385 </sect2>
1386 </sect1>
1387
1388 <sect1>
1389 <title>Shared folders</title>
1390
1391 <para>Shared folders allow you to easily exchange data between a virtual
1392 machine and your host. This feature requires that the VirtualBox Guest
1393 Additions be installed in a virtual machine and is described in detail in
1394 <xref linkend="sharedfolders" />.</para>
1395 </sect1>
1396
1397 <sect1>
1398 <title>User Interface</title>
1399
1400 <para>The "User Interface" section allows you to change certain aspects of
1401 the user interface of this VM.</para>
1402
1403 <para><glosslist>
1404 <glossentry>
1405 <glossterm>Menu Bar</glossterm>
1406 <glossdef>
1407 <para>This widget allows you to disable certain menus (click at
1408 the menu to release it), certain menu entries (uncheck the
1409 checkbox of the entry to disable it) and the complete menu bar
1410 (uncheck the rightmost checkbox).
1411 </para>
1412 </glossdef>
1413 </glossentry>
1414
1415 <glossentry>
1416 <glossterm>Mini ToolBar</glossterm>
1417 <glossdef>
1418 <para>In full screen or seamless mode, VirtualBox can display a
1419 small toolbar that contains some of the items that are normally
1420 available from the virtual machine's menu bar. This toolbar
1421 reduces itself to a small gray line unless you move the mouse
1422 over it. With the toolbar, you can return from full screen or
1423 seamless mode, control machine execution or enable certain
1424 devices. If you don't want to see the toolbar, disable this
1425 setting.</para>
1426 <para>The second setting allows to show the toolbar at the top
1427 of the screen instead of showing it at the bottom.</para>
1428 </glossdef>
1429 </glossentry>
1430
1431 <glossentry>
1432 <glossterm>Status Bar</glossterm>
1433 <glossdef>
1434 <para>This widget allows you to disable certain icons of the
1435 status bar (uncheck the checkbox of an icon to disable it),
1436 to re-arrange icons (drag and drop the icon) and to disable the
1437 complete status bar (uncheck the leftmost checkbox).</para>
1438 </glossdef>
1439 </glossentry>
1440 </glosslist></para>
1441
1442 </sect1>
1443
1444 <sect1 id="efi">
1445 <title>Alternative firmware (EFI)</title>
1446
1447 <para>Starting with release 3.1, VirtualBox includes experimental support
1448 for the Extensible Firmware Interface (EFI), which is a new industry
1449 standard intended to eventually replace the legacy BIOS as the primary
1450 interface for bootstrapping computers and certain system services
1451 later.</para>
1452
1453 <para>By default, VirtualBox uses the BIOS firmware for virtual machines.
1454 To use EFI for a given virtual machine, you can enable EFI in the
1455 machine's "Settings" dialog (see <xref linkend="settings-motherboard" />).
1456 Alternatively, use the <computeroutput>VBoxManage</computeroutput> command
1457 line interface like this: <screen>VBoxManage modifyvm "VM name" --firmware efi</screen>
1458 To switch back to using the BIOS, use: <screen>VBoxManage modifyvm "VM name" --firmware bios</screen>One
1459 notable user of EFI is Apple's Mac OS X, but more recent Linuxes
1460 and Windows (starting with Vista) offer special versions that can be
1461 booted using EFI as well.</para>
1462
1463 <para>Another possible use of EFI in VirtualBox is development and testing
1464 of EFI applications, without booting any OS.</para>
1465
1466 <para>Note that the VirtualBox EFI support is experimental and will be
1467 enhanced as EFI matures and becomes more widespread. Mac OS X, Linux
1468 and newer Windows guests are known to work fine. Windows 7 guests are
1469 unable to boot with the VirtualBox EFI implementation.</para>
1470
1471 <sect2 id="efividmode">
1472 <title>Video modes in EFI</title>
1473
1474 <para>EFI provides two distinct video interfaces: GOP (Graphics Output
1475 Protocol) and UGA (Universal Graphics Adapter). Mac OS X uses GOP, while
1476 Linux tends to use UGA. VirtualBox provides a configuration option to
1477 control the framebuffer size for both interfaces.</para>
1478
1479 <para>To control GOP, use the following
1480 <computeroutput>VBoxManage</computeroutput> command: <screen>VBoxManage setextradata "VM name" VBoxInternal2/EfiGopMode N</screen>
1481 Where N can be one of 0,1,2,3,4,5 referring to the 640x480, 800x600,
1482 1024x768, 1280x1024, 1440x900, 1920x1200 screen resolution respectively.</para>
1483
1484 <para>To change the UGA resolution: <screen>VBoxManage setextradata "VM name" VBoxInternal2/UgaHorizontalResolution 1440
1485VBoxManage setextradata "VM name" VBoxInternal2/UgaVerticalResolution 900</screen></para>
1486
1487 <para>The video mode for both GOP and UGA can only be changed when the
1488 VM is powered off and remains persistent until changed.</para>
1489 </sect2>
1490
1491 <sect2 id="efibootargs">
1492 <title>Specifying boot arguments</title>
1493
1494 <para>It is currently not possible to manipulate EFI variables from within a running guest
1495 (e.g., setting the "boot-args" variable by running the <computeroutput>nvram</computeroutput> tool in a Mac OS X guest will not work).
1496 As an alternative way, "VBoxInternal2/EfiBootArgs" extradata can be passed to a VM in order to set
1497 the "boot-args" variable. To change the "boot-args" EFI variable:
1498 <screen>VBoxManage setextradata "VM name" VBoxInternal2/EfiBootArgs &lt;value&gt;</screen>
1499 </para>
1500 </sect2>
1501
1502 </sect1>
1503</chapter>
Note: See TracBrowser for help on using the repository browser.

© 2024 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette