parent
0d4f4f70d2
commit
b1d35570df
|
@ -1,79 +1,3 @@
|
|||
#
|
||||
# This script is used to test the shared folder support of Vbox@Genode/NOVA.
|
||||
#
|
||||
# Requirements to run this script:
|
||||
# - hard disk with 4 primary partitions
|
||||
# - on the 4. partition an ext2 filesystem is expected with following files:
|
||||
# -- /win7.vdi
|
||||
# -- /ram/overlay_win7.vdi
|
||||
#
|
||||
# The overlay file must be generated beforehand, e.g.:
|
||||
#
|
||||
# vboxmanage showhdinfo win7.vdi
|
||||
#
|
||||
# to find out the size of the vdi and then to create the overlay:
|
||||
#
|
||||
# vboxmanage createhd --filename overlay_win7.vdi --size [vdi_size] --format vdi
|
||||
#
|
||||
#
|
||||
#
|
||||
#
|
||||
# The Windows image (win7.vdi) is prepared to contain a bat file with following
|
||||
# content:
|
||||
#
|
||||
# :check
|
||||
# IF EXIST E:\test.bat (GOTO start) ELSE (timeout /t 3 >nul)
|
||||
# GOTO check
|
||||
#
|
||||
# :start
|
||||
#
|
||||
# call E:\test.bat
|
||||
#
|
||||
# This file must be configured to be autostarted by Windows, e.g change the
|
||||
# value in the registry entry at
|
||||
#
|
||||
# HKEY_CURRENT_USER\Software/Microsoft\Windows\CurrentVersion\Run
|
||||
#
|
||||
# to the batch file in the Windows vdi image as described above.
|
||||
#
|
||||
#
|
||||
# What this script does:
|
||||
#
|
||||
# A VM containing a Win7 image is started configured with two different
|
||||
# Virtualbox fileshares (D: and E:). One contains a test file (test.bin),
|
||||
# which will be copied by the Windows VM from the one file share over to the
|
||||
# second one.
|
||||
# On Genode side a Noux instance is running a bash shell with the two
|
||||
# filesystems mounted. The shell is scripted by this script to wait for
|
||||
# completion of the copy operation performed by the Windows VM. If this is
|
||||
# detected, the bash scripts use sha1sum to generate hashes of the original
|
||||
# test file of the one file system share and of the copy on the second file
|
||||
# system share. This run scripts then compares the hashes and reports
|
||||
# "Test succeeded" if they are identical.
|
||||
#
|
||||
# This script generates the test file out of /dev/urandom and generates a
|
||||
# batch file test.bat which is placed in the shared folder for the VM. test.bat
|
||||
# is invoked by the batch file running already in the Windows VM as described
|
||||
# beforehand. test.bat contains the actual instructions to be performed by
|
||||
# the VM - for this script to copy the test.bin file from D: to E:.
|
||||
|
||||
if {[have_include "power_on/qemu"]} {
|
||||
puts "\nRun script does not support Qemu.\n"
|
||||
exit 0
|
||||
}
|
||||
|
||||
# Tested for nova and muen.
|
||||
if {(![have_spec nova] && ![have_spec muen])} {
|
||||
puts "Platform is unsupported."
|
||||
exit 0
|
||||
}
|
||||
|
||||
set virtualbox_binary "virtualbox-rem"
|
||||
if {[have_spec muen]} { set virtualbox_binary "virtualbox-muen" }
|
||||
if {[have_spec nova]} { set virtualbox_binary "virtualbox-nova" }
|
||||
set virtualbox5_binary "virtualbox5-rem"
|
||||
if {[have_spec nova]} { set virtualbox5_binary "virtualbox5-nova" }
|
||||
|
||||
set flavor "win7"
|
||||
|
||||
set use_vbox4 1
|
||||
|
@ -86,262 +10,12 @@ set use_overlay_from_disk 1
|
|||
set overlay_image "overlay_${flavor}.vdi"
|
||||
set use_rumpfs 1
|
||||
|
||||
set use_usb 0
|
||||
set use_usb 1
|
||||
set use_ps2 [have_spec ps2]
|
||||
|
||||
set use_vms 1
|
||||
set use_cpu_load 0
|
||||
|
||||
#
|
||||
# Create .bat file to be executed by Win VM
|
||||
#
|
||||
set template_bat_fd [open "bin/template.bat" w]
|
||||
puts $template_bat_fd {:check
|
||||
IF EXIST E:\start.txt (GOTO start) ELSE (timeout /t 3 >nul)
|
||||
GOTO check
|
||||
set vbox_file "vm_${flavor}_32_share.vbox"
|
||||
|
||||
:start
|
||||
|
||||
copy D:\test.bin E:\test.bin
|
||||
copy D:\template.bat E:\done.txt
|
||||
shutdown /s /t 00}
|
||||
|
||||
close $template_bat_fd
|
||||
|
||||
# Convert bat file to dos format
|
||||
catch { exec unix2dos bin/template.bat }
|
||||
|
||||
#
|
||||
# Create random test binary to be copied via shared folder of vbox
|
||||
#
|
||||
catch { exec dd if=/dev/urandom of=bin/test.bin bs=4096 count=8160 }
|
||||
|
||||
#
|
||||
# Step 1: prepare and start the actual VM
|
||||
#
|
||||
set build_components {
|
||||
server/ram_fs server/report_rom
|
||||
server/tcp_terminal drivers/nic
|
||||
lib/libc_noux
|
||||
noux/minimal
|
||||
}
|
||||
|
||||
#
|
||||
# Build Noux packages only once
|
||||
#
|
||||
foreach pkg {bash coreutils} {
|
||||
lappend_if [expr ![file exists bin/$pkg]] build_components noux-pkg/$pkg }
|
||||
|
||||
set boot_modules {
|
||||
ram_fs
|
||||
noux libc_noux.lib.so bash.tar coreutils.tar
|
||||
tcp_terminal lwip.lib.so nic_drv report_rom
|
||||
test.bin template.bat
|
||||
vm_auto_share.vbox
|
||||
}
|
||||
|
||||
set config_of_app {
|
||||
<start name="nic_drv" priority="-1">
|
||||
<resource name="RAM" quantum="4M"/>
|
||||
<provides> <service name="Nic"/> </provides>
|
||||
<route>
|
||||
<service name="IRQ"><child name="acpi"/></service>
|
||||
<any-service> <parent/> <any-child/></any-service>
|
||||
</route>
|
||||
</start>
|
||||
|
||||
<start name="tcp_terminal" priority="-1">
|
||||
<resource name="RAM" quantum="5M"/>
|
||||
<provides> <service name="Terminal"/> </provides>
|
||||
<config>
|
||||
<policy label_prefix="noux" port="8888"/>
|
||||
</config>
|
||||
</start>
|
||||
|
||||
<start name="noux" priority="-1">
|
||||
<resource name="RAM" quantum="32M"/>
|
||||
<config>
|
||||
<fstab>
|
||||
<tar name="coreutils.tar"/>
|
||||
<tar name="bash.tar"/>
|
||||
|
||||
<dir name="from"> <fs label="share_from"/> </dir>
|
||||
<dir name="to"> <fs label="share_to"/> </dir>
|
||||
</fstab>
|
||||
<start name="/bin/bash">
|
||||
<env name="TERM" value="linux"/>
|
||||
</start>
|
||||
</config>
|
||||
<route>
|
||||
<service name="File_system" label="share_from">
|
||||
<child name="ram_fs_from"/>
|
||||
</service>
|
||||
<service name="File_system" label="share_to">
|
||||
<child name="ram_fs_to"/>
|
||||
</service>
|
||||
<any-service> <parent/> <any-child/> </any-service>
|
||||
</route>
|
||||
</start>
|
||||
|
||||
<start name="ram_fs_from" priority="-1">
|
||||
<binary name="ram_fs"/>
|
||||
<resource name="RAM" quantum="64M"/>
|
||||
<provides><service name="File_system"/></provides>
|
||||
<config>
|
||||
<content>
|
||||
<rom name="test.bin"/>
|
||||
<rom name="template.bat"/>
|
||||
</content>
|
||||
<default-policy root="/" writeable="no"/>
|
||||
</config>
|
||||
</start>
|
||||
|
||||
<start name="ram_fs_to" priority="-1">
|
||||
<binary name="ram_fs"/>
|
||||
<resource name="RAM" quantum="64M"/>
|
||||
<provides><service name="File_system"/></provides>
|
||||
<config>
|
||||
<default-policy root="/" writeable="yes"/>
|
||||
</config>
|
||||
</start>
|
||||
|
||||
<start name="report_rom">
|
||||
<resource name="RAM" quantum="1M"/>
|
||||
<provides> <service name="Report"/> <service name="ROM"/> </provides>
|
||||
<config> <rom/> </config>
|
||||
</start>
|
||||
|
||||
<start name="vbox1" priority="-2">}
|
||||
append config_of_app "
|
||||
<binary name=\"$virtualbox_binary\"/>"
|
||||
append config_of_app {
|
||||
<resource name="RAM" quantum="1280M"/>
|
||||
<config vbox_file="vm_auto_share.vbox" vm_name="AutoDisk">
|
||||
<libc stdout="/dev/log" stderr="/dev/log" rtc="/dev/rtc"/>
|
||||
<vfs>
|
||||
<dir name="dev"> <log/> <rtc/> </dir>
|
||||
<rom name="vm_auto_share.vbox"/>}
|
||||
|
||||
append_if [expr $use_ram_fs] config_of_app {
|
||||
<dir name="ram"> <fs label="from_ram_fs"/> </dir>}
|
||||
|
||||
append config_of_app {
|
||||
<dir name="from"> <fs label="share_ram_fs_from"/> </dir>
|
||||
<dir name="to"> <fs label="share_ram_fs_to"/> </dir>
|
||||
<fs/>
|
||||
</vfs>
|
||||
</config>
|
||||
<route>
|
||||
<service name="Report"> <child name="report_rom"/> </service>}
|
||||
|
||||
append_if [expr $use_ram_fs] config_of_app {
|
||||
<service name="File_system" label="from_ram_fs">
|
||||
<child name="ram_fs"/>
|
||||
</service>}
|
||||
|
||||
append config_of_app {
|
||||
<service name="File_system" label="share_ram_fs_from">
|
||||
<child name="ram_fs_from"/>
|
||||
</service>
|
||||
<service name="File_system" label="share_ram_fs_to">
|
||||
<child name="ram_fs_to"/>
|
||||
</service>
|
||||
<service name="File_system"> <child name="rump_fs"/> </service>
|
||||
<any-service> <parent/> <any-child/> </any-service>
|
||||
</route>
|
||||
</start>
|
||||
}
|
||||
|
||||
source ${genode_dir}/repos/ports/run/virtualbox_auto.inc
|
||||
|
||||
exec tar cfv bin/bash.tar -h -C bin/bash .
|
||||
exec tar cfv bin/coreutils.tar -h -C bin/coreutils .
|
||||
exec cp ${genode_dir}/repos/ports/run/vm_auto_share.vbox bin/.
|
||||
|
||||
build_boot_image $boot_modules
|
||||
|
||||
#
|
||||
# Step 2: Read out TCP/IP address of tcp_terminal running on Genode target
|
||||
#
|
||||
run_genode_until {\[init -> tcp_terminal\] got IP address [0-9]+\.[0-9]+\.[0-9]+\.[0-9]+} 20
|
||||
set serial_id [output_spawn_id]
|
||||
|
||||
regexp {\[init -> tcp_terminal\] got IP address [0-9]+\.[0-9]+\.[0-9]+\.[0-9]+} $output serial_ip_addr
|
||||
regexp {[0-9]+\.[0-9]+\.[0-9]+\.[0-9]+} $serial_ip_addr serial_ip_addr
|
||||
|
||||
#
|
||||
# Step 3: Wait until Windows is up for sure
|
||||
#
|
||||
|
||||
|
||||
run_genode_until {\[init -\> vbox1\].*Guest Additions capability report:.*seamless: yes, hostWindowMapping: no, graphics: yes} 300 $serial_id
|
||||
|
||||
|
||||
#
|
||||
# Step 4 : connect to Noux of the running Genode target and issue bash commands
|
||||
# via netcat
|
||||
#
|
||||
puts "\nTest shared folder\n"
|
||||
|
||||
spawn netcat $serial_ip_addr 8888
|
||||
set noux_id $spawn_id
|
||||
|
||||
run_genode_until {\[init -> tcp_terminal\] connection established} 20 $serial_id
|
||||
|
||||
#
|
||||
# Step 5 : interact with netcat -> ... -> tcp_terminal -> Noux -> bash
|
||||
#
|
||||
|
||||
# Windows does not like trailing zeros introduced by our ROM service.
|
||||
# -> .bat script does not find labels like 'check' with zero bytes
|
||||
# so - delete zero bytes
|
||||
puts $noux_id "cat from/template\.bat | tr -d \"\\0\" >to/test\.bat"
|
||||
|
||||
# SHA1 of original file
|
||||
puts $noux_id "sha1sum from/test.bin"
|
||||
|
||||
# Tell Windows VM to start copying
|
||||
puts $noux_id "echo \"start\" > to/start\.txt"
|
||||
|
||||
# Wait until Windows finished copying
|
||||
puts $noux_id "while \[ ! -f to/done\.txt ]"
|
||||
puts $noux_id "do"
|
||||
puts $noux_id "sleep 5"
|
||||
puts $noux_id "done"
|
||||
|
||||
# Wait until VM signaled shutdown state
|
||||
run_genode_until {\[init\] child "vbox1" exited with exit value 0} 120 $serial_id
|
||||
|
||||
# SHA1 of copied file
|
||||
puts $noux_id "sha1sum to/test.bin"
|
||||
|
||||
# Wait for output of bash shell until last SHA1 sum is calculated
|
||||
run_genode_until {[[:xdigit:]]+ to/test\.bin} 50 $noux_id
|
||||
|
||||
|
||||
# cleanup created files
|
||||
foreach pkg {bash coreutils} { exec rm -f bin/$pkg.tar }
|
||||
exec rm -f bin/test.bin
|
||||
exec rm -f bin/template.bat
|
||||
exec rm -f bin/vm_auto_share.vbox
|
||||
|
||||
|
||||
#
|
||||
# Step 5: Compare sha1sum of original file and of copy made by .bat file in VM
|
||||
#
|
||||
set sha1sum_original [regexp -inline {[[:xdigit:]]+ from/test\.bin} $output]
|
||||
set sha1sum_copy [regexp -inline {[[:xdigit:]]+ to/test\.bin} $output]
|
||||
set sha1sum_original [regexp -inline {[[:xdigit:]]+} $sha1sum_original]
|
||||
set sha1sum_copy [regexp -inline {[[:xdigit:]]+} $sha1sum_copy]
|
||||
|
||||
puts -nonewline "\n$sha1sum_original ?= $sha1sum_copy --> "
|
||||
if {$sha1sum_original eq ""} {
|
||||
puts " empty -> no "
|
||||
} else {
|
||||
if {$sha1sum_original != $sha1sum_copy} {
|
||||
puts "no"
|
||||
exit -1
|
||||
} else {
|
||||
puts "yes"
|
||||
}
|
||||
}
|
||||
source ${genode_dir}/repos/ports/run/vbox_share.inc
|
||||
|
|
|
@ -0,0 +1,23 @@
|
|||
assert_spec 64bit
|
||||
|
||||
set flavor "win7_64"
|
||||
|
||||
set use_vbox4 0
|
||||
set use_vbox5 1
|
||||
|
||||
set vdi_image "${flavor}.vdi"
|
||||
# Write overlay back to harddisk if set to 0
|
||||
set use_ram_fs 1
|
||||
set use_overlay_from_disk 1
|
||||
set overlay_image "overlay_${flavor}.vdi"
|
||||
set use_rumpfs 1
|
||||
|
||||
set use_usb 1
|
||||
set use_ps2 [have_spec ps2]
|
||||
|
||||
set use_vms 1
|
||||
set use_cpu_load 0
|
||||
|
||||
set vbox_file "vm_${flavor}_share.vbox"
|
||||
|
||||
source ${genode_dir}/repos/ports/run/vbox_share.inc
|
|
@ -0,0 +1,362 @@
|
|||
#
|
||||
# This script is used to test the shared folder support of Vbox@Genode/NOVA.
|
||||
#
|
||||
# Requirements to run this script:
|
||||
# - hard disk with 4 primary partitions
|
||||
# - on the 4. partition an ext2 filesystem is expected with following files:
|
||||
# -- /win7.vdi
|
||||
# -- /ram/overlay_win7.vdi
|
||||
#
|
||||
# The overlay file must be generated beforehand, e.g.:
|
||||
#
|
||||
# vboxmanage showhdinfo win7.vdi
|
||||
#
|
||||
# to find out the size of the vdi and then to create the overlay:
|
||||
#
|
||||
# vboxmanage createhd --filename overlay_win7.vdi --size [vdi_size] --format vdi
|
||||
#
|
||||
#
|
||||
#
|
||||
#
|
||||
# The Windows image (win7.vdi) is prepared to contain a bat file with following
|
||||
# content:
|
||||
#
|
||||
# :check
|
||||
# IF EXIST E:\test.bat (GOTO start) ELSE (timeout /t 3 >nul)
|
||||
# GOTO check
|
||||
#
|
||||
# :start
|
||||
#
|
||||
# call E:\test.bat
|
||||
#
|
||||
# This file must be configured to be autostarted by Windows, e.g change the
|
||||
# value in the registry entry at
|
||||
#
|
||||
# HKEY_CURRENT_USER\Software/Microsoft\Windows\CurrentVersion\Run
|
||||
#
|
||||
# to the batch file in the Windows vdi image as described above.
|
||||
#
|
||||
#
|
||||
# What this script does:
|
||||
#
|
||||
# A VM containing a Win7 image is started configured with two different
|
||||
# Virtualbox fileshares (D: and E:). One contains a test file (test.bin),
|
||||
# which will be copied by the Windows VM from the one file share over to the
|
||||
# second one.
|
||||
# On Genode side a Noux instance is running a bash shell with the two
|
||||
# filesystems mounted. The shell is scripted by this script to wait for
|
||||
# completion of the copy operation performed by the Windows VM. If this is
|
||||
# detected, the bash scripts use sha1sum to generate hashes of the original
|
||||
# test file of the one file system share and of the copy on the second file
|
||||
# system share. This run scripts then compares the hashes and reports
|
||||
# "Test succeeded" if they are identical.
|
||||
#
|
||||
# This script generates the test file out of /dev/urandom and generates a
|
||||
# batch file test.bat which is placed in the shared folder for the VM. test.bat
|
||||
# is invoked by the batch file running already in the Windows VM as described
|
||||
# beforehand. test.bat contains the actual instructions to be performed by
|
||||
# the VM - for this script to copy the test.bin file from D: to E:.
|
||||
|
||||
if {[have_include "power_on/qemu"]} {
|
||||
puts "\nRun script does not support Qemu.\n"
|
||||
exit 0
|
||||
}
|
||||
|
||||
# Tested for nova and muen.
|
||||
if {(![have_spec nova] && ![have_spec muen])} {
|
||||
puts "Platform is unsupported."
|
||||
exit 0
|
||||
}
|
||||
|
||||
set virtualbox_binary "virtualbox-rem"
|
||||
if {[have_spec muen]} { set virtualbox_binary "virtualbox-muen" }
|
||||
if {[have_spec nova]} { set virtualbox_binary "virtualbox-nova" }
|
||||
set virtualbox5_binary "virtualbox5-rem"
|
||||
if {[have_spec nova]} { set virtualbox5_binary "virtualbox5-nova" }
|
||||
|
||||
#
|
||||
# Create .bat file to be executed by Win VM
|
||||
#
|
||||
set template_bat_fd [open "bin/template.bat" w]
|
||||
puts $template_bat_fd {:check
|
||||
IF EXIST E:\start.txt (GOTO start) ELSE (timeout /t 3 >nul)
|
||||
GOTO check
|
||||
|
||||
:start
|
||||
|
||||
copy D:\test.bin E:\test.bin
|
||||
copy D:\template.bat E:\done.txt
|
||||
shutdown /s /t 00}
|
||||
|
||||
close $template_bat_fd
|
||||
|
||||
# Convert bat file to dos format
|
||||
catch { exec unix2dos bin/template.bat }
|
||||
|
||||
#
|
||||
# Create random test binary to be copied via shared folder of vbox
|
||||
#
|
||||
catch { exec dd if=/dev/urandom of=bin/test.bin bs=4096 count=8160 }
|
||||
|
||||
#
|
||||
# Step 1: prepare and start the actual VM
|
||||
#
|
||||
set build_components {
|
||||
server/input_merger
|
||||
server/ram_fs server/report_rom
|
||||
server/tcp_terminal drivers/nic
|
||||
lib/libc_noux
|
||||
noux/minimal
|
||||
}
|
||||
|
||||
#
|
||||
# Build Noux packages only once
|
||||
#
|
||||
foreach pkg {bash coreutils} {
|
||||
lappend_if [expr ![file exists bin/$pkg]] build_components noux-pkg/$pkg }
|
||||
|
||||
set boot_modules {
|
||||
ram_fs
|
||||
noux libc_noux.lib.so bash.tar coreutils.tar
|
||||
tcp_terminal lwip.lib.so nic_drv report_rom
|
||||
input_merger
|
||||
test.bin template.bat
|
||||
}
|
||||
|
||||
append boot_modules $vbox_file
|
||||
|
||||
set config_of_app {
|
||||
<start name="nic_drv" priority="-1">
|
||||
<resource name="RAM" quantum="4M"/>
|
||||
<provides> <service name="Nic"/> </provides>
|
||||
<route>
|
||||
<service name="IRQ"><child name="acpi"/></service>
|
||||
<any-service> <parent/> <any-child/></any-service>
|
||||
</route>
|
||||
</start>
|
||||
|
||||
<start name="tcp_terminal" priority="-1">
|
||||
<resource name="RAM" quantum="5M"/>
|
||||
<provides> <service name="Terminal"/> </provides>
|
||||
<config>
|
||||
<policy label_prefix="noux" port="8888"/>
|
||||
</config>
|
||||
</start>
|
||||
|
||||
<start name="noux" priority="-1">
|
||||
<resource name="RAM" quantum="32M"/>
|
||||
<config>
|
||||
<fstab>
|
||||
<tar name="coreutils.tar"/>
|
||||
<tar name="bash.tar"/>
|
||||
|
||||
<dir name="from"> <fs label="share_from"/> </dir>
|
||||
<dir name="to"> <fs label="share_to"/> </dir>
|
||||
</fstab>
|
||||
<start name="/bin/bash">
|
||||
<env name="TERM" value="linux"/>
|
||||
</start>
|
||||
</config>
|
||||
<route>
|
||||
<service name="File_system" label="share_from">
|
||||
<child name="ram_fs_from"/>
|
||||
</service>
|
||||
<service name="File_system" label="share_to">
|
||||
<child name="ram_fs_to"/>
|
||||
</service>
|
||||
<any-service> <parent/> <any-child/> </any-service>
|
||||
</route>
|
||||
</start>
|
||||
|
||||
<start name="ram_fs_from" priority="-1">
|
||||
<binary name="ram_fs"/>
|
||||
<resource name="RAM" quantum="64M"/>
|
||||
<provides><service name="File_system"/></provides>
|
||||
<config>
|
||||
<content>
|
||||
<rom name="test.bin"/>
|
||||
<rom name="template.bat"/>
|
||||
</content>
|
||||
<default-policy root="/" writeable="no"/>
|
||||
</config>
|
||||
</start>
|
||||
|
||||
<start name="ram_fs_to" priority="-1">
|
||||
<binary name="ram_fs"/>
|
||||
<resource name="RAM" quantum="64M"/>
|
||||
<provides><service name="File_system"/></provides>
|
||||
<config>
|
||||
<default-policy root="/" writeable="yes"/>
|
||||
</config>
|
||||
</start>
|
||||
|
||||
<start name="report_rom">
|
||||
<resource name="RAM" quantum="1M"/>
|
||||
<provides> <service name="Report"/> <service name="ROM"/> </provides>
|
||||
<config>
|
||||
<policy label="usb_report_filter -> devices" report="usb_drv -> devices"/>
|
||||
<policy label="usb_report_filter -> usb_drv_config" report="usb_drv -> config"/>
|
||||
<policy label="vbox1 -> usb_devices" report="usb_report_filter -> usb_devices"/>
|
||||
</config>
|
||||
</start>
|
||||
|
||||
<start name="input_merger">
|
||||
<resource name="RAM" quantum="1M" />
|
||||
<provides>
|
||||
<service name="Input" />
|
||||
</provides>
|
||||
<config>}
|
||||
append_if [expr $use_ps2] config_of_app {
|
||||
<input label="ps2" /> }
|
||||
append_if [expr $use_usb] config_of_app {
|
||||
<input label="usb_hid" />}
|
||||
append config_of_app {
|
||||
</config>
|
||||
<route> }
|
||||
append_if [expr $use_ps2] config_of_app {
|
||||
<service name="Input" label="ps2"> <child name="ps2_drv" /> </service> }
|
||||
append_if [expr $use_usb] config_of_app {
|
||||
<service name="Input" label="usb_hid"> <child name="usb_drv" /> </service> }
|
||||
append config_of_app {
|
||||
<any-service> <parent /> <any-child /> </any-service>
|
||||
</route>
|
||||
</start>
|
||||
|
||||
<start name="vbox1" priority="-2">}
|
||||
append_if [expr $use_vbox4] config_of_app "
|
||||
<binary name=\"$virtualbox_binary\" />"
|
||||
append_if [expr $use_vbox5] config_of_app "
|
||||
<binary name=\"$virtualbox5_binary\" />"
|
||||
append config_of_app {
|
||||
<resource name="RAM" quantum="1280M"/>
|
||||
<config vbox_file="} $vbox_file {" vm_name="AutoDisk">
|
||||
<libc stdout="/dev/log" stderr="/dev/log" rtc="/dev/rtc"/>
|
||||
<vfs>
|
||||
<dir name="dev"> <log/> <rtc/> </dir>
|
||||
<rom name="} $vbox_file {"/>}
|
||||
|
||||
append_if [expr $use_ram_fs] config_of_app {
|
||||
<dir name="ram"> <fs label="from_ram_fs"/> </dir>}
|
||||
|
||||
append config_of_app {
|
||||
<dir name="from"> <fs label="share_ram_fs_from"/> </dir>
|
||||
<dir name="to"> <fs label="share_ram_fs_to"/> </dir>
|
||||
<fs/>
|
||||
</vfs>
|
||||
</config>
|
||||
<route>
|
||||
<service name="Report"> <child name="report_rom"/> </service>}
|
||||
|
||||
append_if [expr $use_ram_fs] config_of_app {
|
||||
<service name="File_system" label="from_ram_fs">
|
||||
<child name="ram_fs"/>
|
||||
</service>}
|
||||
|
||||
append config_of_app {
|
||||
<service name="File_system" label="share_ram_fs_from">
|
||||
<child name="ram_fs_from"/>
|
||||
</service>
|
||||
<service name="File_system" label="share_ram_fs_to">
|
||||
<child name="ram_fs_to"/>
|
||||
</service>
|
||||
<service name="File_system"> <child name="rump_fs"/> </service>
|
||||
<service name="Input"> <child name="input_merger"/> </service>
|
||||
<any-service> <parent/> <any-child/> </any-service>
|
||||
</route>
|
||||
</start>
|
||||
}
|
||||
|
||||
source ${genode_dir}/repos/ports/run/virtualbox_auto.inc
|
||||
|
||||
exec tar cfv bin/bash.tar -h -C bin/bash .
|
||||
exec tar cfv bin/coreutils.tar -h -C bin/coreutils .
|
||||
exec cp ${genode_dir}/repos/ports/run/$vbox_file bin/.
|
||||
|
||||
build_boot_image $boot_modules
|
||||
|
||||
#
|
||||
# Step 2: Read out TCP/IP address of tcp_terminal running on Genode target
|
||||
#
|
||||
run_genode_until {\[init -> tcp_terminal\] got IP address [0-9]+\.[0-9]+\.[0-9]+\.[0-9]+} 20
|
||||
set serial_id [output_spawn_id]
|
||||
|
||||
regexp {\[init -> tcp_terminal\] got IP address [0-9]+\.[0-9]+\.[0-9]+\.[0-9]+} $output serial_ip_addr
|
||||
regexp {[0-9]+\.[0-9]+\.[0-9]+\.[0-9]+} $serial_ip_addr serial_ip_addr
|
||||
|
||||
#
|
||||
# Step 3: Wait until Windows is up for sure
|
||||
#
|
||||
|
||||
|
||||
run_genode_until {\[init -\> vbox1\].*Guest Additions capability report:.*seamless: yes, hostWindowMapping: no, graphics: yes} 300 $serial_id
|
||||
|
||||
|
||||
#
|
||||
# Step 4 : connect to Noux of the running Genode target and issue bash commands
|
||||
# via netcat
|
||||
#
|
||||
puts "\nTest shared folder\n"
|
||||
|
||||
spawn netcat $serial_ip_addr 8888
|
||||
set noux_id $spawn_id
|
||||
set spawn_id_list [list $noux_id $serial_id]
|
||||
|
||||
run_genode_until {\[init -> tcp_terminal\] connection established} 20 $spawn_id_list
|
||||
|
||||
#
|
||||
# Step 5 : interact with netcat -> ... -> tcp_terminal -> Noux -> bash
|
||||
#
|
||||
|
||||
# Windows does not like trailing zeros introduced by our ROM service.
|
||||
# -> .bat script does not find labels like 'check' with zero bytes
|
||||
# so - delete zero bytes
|
||||
puts $noux_id "cat from/template\.bat | tr -d \"\\0\" >to/test\.bat"
|
||||
|
||||
# SHA1 of original file
|
||||
puts $noux_id "sha1sum from/test.bin"
|
||||
|
||||
# Tell Windows VM to start copying
|
||||
puts $noux_id "echo \"start\" > to/start\.txt"
|
||||
|
||||
# Wait until Windows finished copying
|
||||
puts $noux_id "while \[ ! -f to/done\.txt ]"
|
||||
puts $noux_id "do"
|
||||
puts $noux_id "sleep 5"
|
||||
puts $noux_id "done"
|
||||
|
||||
# Wait until VM signaled shutdown state
|
||||
run_genode_until {\[init\] child "vbox1" exited with exit value 0} 120 $spawn_id_list
|
||||
|
||||
# SHA1 of copied file
|
||||
puts $noux_id "sha1sum to/test.bin"
|
||||
|
||||
# Wait for output of bash shell until last SHA1 sum is calculated
|
||||
run_genode_until {[[:xdigit:]]+ to/test\.bin} 50 $spawn_id_list
|
||||
|
||||
|
||||
# cleanup created files
|
||||
foreach pkg {bash coreutils} { exec rm -f bin/$pkg.tar }
|
||||
exec rm -f bin/test.bin
|
||||
exec rm -f bin/template.bat
|
||||
exec rm -f bin/$vbox_file
|
||||
|
||||
|
||||
#
|
||||
# Step 5: Compare sha1sum of original file and of copy made by .bat file in VM
|
||||
#
|
||||
set sha1sum_original [regexp -inline {[[:xdigit:]]+ from/test\.bin} $output]
|
||||
set sha1sum_copy [regexp -inline {[[:xdigit:]]+ to/test\.bin} $output]
|
||||
set sha1sum_original [regexp -inline {[[:xdigit:]]+} $sha1sum_original]
|
||||
set sha1sum_copy [regexp -inline {[[:xdigit:]]+} $sha1sum_copy]
|
||||
|
||||
puts -nonewline "\n$sha1sum_original ?= $sha1sum_copy --> "
|
||||
if {$sha1sum_original eq ""} {
|
||||
puts " empty -> no "
|
||||
} else {
|
||||
if {$sha1sum_original != $sha1sum_copy} {
|
||||
puts "no"
|
||||
exit -1
|
||||
} else {
|
||||
puts "yes"
|
||||
}
|
||||
}
|
|
@ -1,188 +0,0 @@
|
|||
<?xml version="1.0"?>
|
||||
<!--
|
||||
** DO NOT EDIT THIS FILE.
|
||||
** If you make changes to this file while any VirtualBox related application
|
||||
** is running, your changes will be overwritten later, without taking effect.
|
||||
** Use VBoxManage or the VirtualBox Manager GUI to make changes.
|
||||
-->
|
||||
<VirtualBox xmlns="http://www.innotek.de/VirtualBox-settings" version="1.14-linux">
|
||||
<Machine uuid="{37ab43a5-38d8-4491-93f5-5b0b077f5c32}" name="Windows XP" OSType="WindowsXP" snapshotFolder="Snapshots" lastStateChange="2014-11-14T11:58:35Z">
|
||||
<MediaRegistry>
|
||||
<HardDisks>
|
||||
<HardDisk uuid="{8e55fcfc-4c09-4173-9066-341968be4864}" location="/win7.vdi" format="VDI" type="Immutable">
|
||||
<HardDisk uuid="{4c5ed34f-f6cf-48e8-808d-2c06f0d11464}" location="/ram/overlay_win7.vdi" format="VDI" autoReset="true"/>
|
||||
</HardDisk>
|
||||
</HardDisks>
|
||||
<DVDImages/>
|
||||
<FloppyImages/>
|
||||
</MediaRegistry>
|
||||
<ExtraData>
|
||||
<ExtraDataItem name="GUI/LastGuestSizeHint" value="1024,768"/>
|
||||
<ExtraDataItem name="GUI/LastNormalWindowPosition" value="513,100,1024,790"/>
|
||||
</ExtraData>
|
||||
<Hardware version="2">
|
||||
<CPU count="1" hotplug="false">
|
||||
<HardwareVirtEx enabled="true"/>
|
||||
<HardwareVirtExNestedPaging enabled="true"/>
|
||||
<HardwareVirtExVPID enabled="true"/>
|
||||
<HardwareVirtExUX enabled="true"/>
|
||||
<PAE enabled="true"/>
|
||||
<LongMode enabled="false"/>
|
||||
<HardwareVirtExLargePages enabled="false"/>
|
||||
<HardwareVirtForce enabled="false"/>
|
||||
</CPU>
|
||||
<Memory RAMSize="1024" PageFusion="false"/>
|
||||
<HID Pointing="PS2Mouse" Keyboard="PS2Keyboard"/>
|
||||
<HPET enabled="false"/>
|
||||
<Chipset type="PIIX3"/>
|
||||
<Boot>
|
||||
<Order position="1" device="Floppy"/>
|
||||
<Order position="2" device="DVD"/>
|
||||
<Order position="3" device="HardDisk"/>
|
||||
<Order position="4" device="None"/>
|
||||
</Boot>
|
||||
<Display VRAMSize="20" monitorCount="1" accelerate3D="false" accelerate2DVideo="false"/>
|
||||
<VideoCapture enabled="false" screens="18446744073709551615" horzRes="1024" vertRes="768" rate="512" fps="25"/>
|
||||
<RemoteDisplay enabled="false" authType="Null"/>
|
||||
<BIOS>
|
||||
<ACPI enabled="true"/>
|
||||
<IOAPIC enabled="false"/>
|
||||
<Logo fadeIn="true" fadeOut="true" displayTime="0"/>
|
||||
<BootMenu mode="MessageAndMenu"/>
|
||||
<TimeOffset value="0"/>
|
||||
<PXEDebug enabled="false"/>
|
||||
</BIOS>
|
||||
<USB>
|
||||
<Controllers/>
|
||||
<DeviceFilters/>
|
||||
</USB>
|
||||
<SharedFolders>
|
||||
<SharedFolder name="from" hostPath="/from" writable="false" autoMount="true"/>
|
||||
<SharedFolder name="to" hostPath="/to" writable="true" autoMount="true"/>
|
||||
</SharedFolders>
|
||||
<Network>
|
||||
<Adapter slot="0" enabled="false" MACAddress="0800271D7901" cable="true" speed="0" type="82540EM">
|
||||
<HostInterface/>
|
||||
<DisabledModes/>
|
||||
</Adapter>
|
||||
<Adapter slot="1" enabled="false" MACAddress="08002790A84B" cable="true" speed="0" type="Am79C973">
|
||||
<DisabledModes>
|
||||
<NAT>
|
||||
<DNS pass-domain="true" use-proxy="false" use-host-resolver="false"/>
|
||||
<Alias logging="false" proxy-only="false" use-same-ports="false"/>
|
||||
</NAT>
|
||||
</DisabledModes>
|
||||
</Adapter>
|
||||
<Adapter slot="2" enabled="false" MACAddress="080027EEE873" cable="true" speed="0" type="Am79C973">
|
||||
<DisabledModes>
|
||||
<NAT>
|
||||
<DNS pass-domain="true" use-proxy="false" use-host-resolver="false"/>
|
||||
<Alias logging="false" proxy-only="false" use-same-ports="false"/>
|
||||
</NAT>
|
||||
</DisabledModes>
|
||||
</Adapter>
|
||||
<Adapter slot="3" enabled="false" MACAddress="080027D37A39" cable="true" speed="0" type="Am79C973">
|
||||
<DisabledModes>
|
||||
<NAT>
|
||||
<DNS pass-domain="true" use-proxy="false" use-host-resolver="false"/>
|
||||
<Alias logging="false" proxy-only="false" use-same-ports="false"/>
|
||||
</NAT>
|
||||
</DisabledModes>
|
||||
</Adapter>
|
||||
<Adapter slot="4" enabled="false" MACAddress="080027F9D5DA" cable="true" speed="0" type="Am79C973">
|
||||
<DisabledModes>
|
||||
<NAT>
|
||||
<DNS pass-domain="true" use-proxy="false" use-host-resolver="false"/>
|
||||
<Alias logging="false" proxy-only="false" use-same-ports="false"/>
|
||||
</NAT>
|
||||
</DisabledModes>
|
||||
</Adapter>
|
||||
<Adapter slot="5" enabled="false" MACAddress="080027EEC7EA" cable="true" speed="0" type="Am79C973">
|
||||
<DisabledModes>
|
||||
<NAT>
|
||||
<DNS pass-domain="true" use-proxy="false" use-host-resolver="false"/>
|
||||
<Alias logging="false" proxy-only="false" use-same-ports="false"/>
|
||||
</NAT>
|
||||
</DisabledModes>
|
||||
</Adapter>
|
||||
<Adapter slot="6" enabled="false" MACAddress="0800279C5C02" cable="true" speed="0" type="Am79C973">
|
||||
<DisabledModes>
|
||||
<NAT>
|
||||
<DNS pass-domain="true" use-proxy="false" use-host-resolver="false"/>
|
||||
<Alias logging="false" proxy-only="false" use-same-ports="false"/>
|
||||
</NAT>
|
||||
</DisabledModes>
|
||||
</Adapter>
|
||||
<Adapter slot="7" enabled="false" MACAddress="080027E8E350" cable="true" speed="0" type="Am79C973">
|
||||
<DisabledModes>
|
||||
<NAT>
|
||||
<DNS pass-domain="true" use-proxy="false" use-host-resolver="false"/>
|
||||
<Alias logging="false" proxy-only="false" use-same-ports="false"/>
|
||||
</NAT>
|
||||
</DisabledModes>
|
||||
</Adapter>
|
||||
</Network>
|
||||
<UART>
|
||||
<Port slot="0" enabled="false" IOBase="0x3f8" IRQ="4" hostMode="Disconnected"/>
|
||||
<Port slot="1" enabled="false" IOBase="0x2f8" IRQ="3" hostMode="Disconnected"/>
|
||||
</UART>
|
||||
<LPT>
|
||||
<Port slot="0" enabled="false" IOBase="0x378" IRQ="7"/>
|
||||
<Port slot="1" enabled="false" IOBase="0x378" IRQ="7"/>
|
||||
</LPT>
|
||||
<AudioAdapter controller="HDA" driver="Pulse" enabled="false"/>
|
||||
<RTC localOrUTC="UTC"/>
|
||||
<SharedFolders/>
|
||||
<Clipboard mode="Disabled"/>
|
||||
<DragAndDrop mode="Disabled"/>
|
||||
<IO>
|
||||
<IoCache enabled="true" size="5"/>
|
||||
<BandwidthGroups/>
|
||||
</IO>
|
||||
<HostPci>
|
||||
<Devices/>
|
||||
</HostPci>
|
||||
<EmulatedUSB>
|
||||
<CardReader enabled="false"/>
|
||||
</EmulatedUSB>
|
||||
<Guest memoryBalloonSize="0"/>
|
||||
<GuestProperties>
|
||||
<GuestProperty name="/VirtualBox/GuestAdd/Components/VBoxControl.exe" value="4.2.24r92790" timestamp="1415966288630337000" flags=""/>
|
||||
<GuestProperty name="/VirtualBox/GuestAdd/Components/VBoxCredProv.dll" value="-" timestamp="1415966288637768000" flags=""/>
|
||||
<GuestProperty name="/VirtualBox/GuestAdd/Components/VBoxDisp.dll" value="4.2.24r92790" timestamp="1415966288632592000" flags=""/>
|
||||
<GuestProperty name="/VirtualBox/GuestAdd/Components/VBoxGINA.dll" value="-" timestamp="1415966288637454000" flags=""/>
|
||||
<GuestProperty name="/VirtualBox/GuestAdd/Components/VBoxGuest.sys" value="4.2.24r92790" timestamp="1415966288652892000" flags=""/>
|
||||
<GuestProperty name="/VirtualBox/GuestAdd/Components/VBoxHook.dll" value="4.2.24r92790" timestamp="1415966288632047000" flags=""/>
|
||||
<GuestProperty name="/VirtualBox/GuestAdd/Components/VBoxMRXNP.dll" value="4.2.24r92790" timestamp="1415966288634519000" flags=""/>
|
||||
<GuestProperty name="/VirtualBox/GuestAdd/Components/VBoxMouse.sys" value="4.2.24r92790" timestamp="1415966288653459000" flags=""/>
|
||||
<GuestProperty name="/VirtualBox/GuestAdd/Components/VBoxOGL.dll" value="4.2.24r92790" timestamp="1415966288651797000" flags=""/>
|
||||
<GuestProperty name="/VirtualBox/GuestAdd/Components/VBoxOGLarrayspu.dll" value="4.2.24r92790" timestamp="1415966288638972000" flags=""/>
|
||||
<GuestProperty name="/VirtualBox/GuestAdd/Components/VBoxOGLcrutil.dll" value="4.2.24r92790" timestamp="1415966288640771000" flags=""/>
|
||||
<GuestProperty name="/VirtualBox/GuestAdd/Components/VBoxOGLerrorspu.dll" value="4.2.24r92790" timestamp="1415966288642065000" flags=""/>
|
||||
<GuestProperty name="/VirtualBox/GuestAdd/Components/VBoxOGLfeedbackspu.dll" value="4.2.24r92790" timestamp="1415966288648832000" flags=""/>
|
||||
<GuestProperty name="/VirtualBox/GuestAdd/Components/VBoxOGLpackspu.dll" value="4.2.24r92790" timestamp="1415966288644753000" flags=""/>
|
||||
<GuestProperty name="/VirtualBox/GuestAdd/Components/VBoxOGLpassthroughspu.dll" value="4.2.24r92790" timestamp="1415966288645967000" flags=""/>
|
||||
<GuestProperty name="/VirtualBox/GuestAdd/Components/VBoxSF.sys" value="4.2.24r92790" timestamp="1415966288654030000" flags=""/>
|
||||
<GuestProperty name="/VirtualBox/GuestAdd/Components/VBoxService.exe" value="4.2.24r92790" timestamp="1415966288634937000" flags=""/>
|
||||
<GuestProperty name="/VirtualBox/GuestAdd/Components/VBoxTray.exe" value="4.2.24r92790" timestamp="1415966288637109000" flags=""/>
|
||||
<GuestProperty name="/VirtualBox/GuestAdd/Components/VBoxVideo.sys" value="4.2.24r92790" timestamp="1415966288655613000" flags=""/>
|
||||
<GuestProperty name="/VirtualBox/GuestAdd/HostVerLastChecked" value="4.3.10" timestamp="1415966303913847000" flags=""/>
|
||||
<GuestProperty name="/VirtualBox/GuestAdd/InstallDir" value="C:/Program Files/Oracle/VirtualBox Guest Additions" timestamp="1415966288627098000" flags=""/>
|
||||
<GuestProperty name="/VirtualBox/GuestAdd/Revision" value="92790" timestamp="1415966288620317000" flags=""/>
|
||||
<GuestProperty name="/VirtualBox/GuestAdd/Version" value="4.2.24" timestamp="1415966288619548000" flags=""/>
|
||||
<GuestProperty name="/VirtualBox/GuestAdd/VersionExt" value="4.2.24" timestamp="1415966288619930000" flags=""/>
|
||||
<GuestProperty name="/VirtualBox/GuestInfo/OS/Product" value="Windows 7" timestamp="1415966288617739000" flags=""/>
|
||||
<GuestProperty name="/VirtualBox/GuestInfo/OS/Release" value="6.1.7601" timestamp="1415966288618219000" flags=""/>
|
||||
<GuestProperty name="/VirtualBox/GuestInfo/OS/ServicePack" value="1" timestamp="1415966288619118000" flags=""/>
|
||||
<GuestProperty name="/VirtualBox/HostInfo/GUI/LanguageID" value="en_US" timestamp="1415966277397115000" flags=""/>
|
||||
</GuestProperties>
|
||||
</Hardware>
|
||||
<StorageControllers>
|
||||
<StorageController name="IDE" type="PIIX4" PortCount="2" useHostIOCache="true" Bootable="true">
|
||||
<AttachedDevice type="HardDisk" port="0" device="0">
|
||||
<Image uuid="{4c5ed34f-f6cf-48e8-808d-2c06f0d11464}"/>
|
||||
</AttachedDevice>
|
||||
</StorageController>
|
||||
</StorageControllers>
|
||||
</Machine>
|
||||
</VirtualBox>
|
|
@ -0,0 +1,105 @@
|
|||
<?xml version="1.0"?>
|
||||
<!--
|
||||
** DO NOT EDIT THIS FILE.
|
||||
** If you make changes to this file while any VirtualBox related application
|
||||
** is running, your changes will be overwritten later, without taking effect.
|
||||
** Use VBoxManage or the VirtualBox Manager GUI to make changes.
|
||||
-->
|
||||
<VirtualBox xmlns="http://www.innotek.de/VirtualBox-settings" version="1.14-linux">
|
||||
<Machine uuid="{37ab43a5-38d8-4491-93f5-5b0b077f5c32}" name="Win7" OSType="Windows7" snapshotFolder="Snapshots" lastStateChange="2014-11-14T11:58:35Z">
|
||||
<MediaRegistry>
|
||||
<HardDisks>
|
||||
<HardDisk uuid="{8e55fcfc-4c09-4173-9066-341968be4864}" location="/win7.vdi" format="VDI" type="Immutable">
|
||||
<HardDisk uuid="{4c5ed34f-f6cf-48e8-808d-2c06f0d11464}" location="/ram/overlay_win7.vdi" format="VDI" autoReset="true"/>
|
||||
</HardDisk>
|
||||
</HardDisks>
|
||||
<DVDImages/>
|
||||
<FloppyImages/>
|
||||
</MediaRegistry>
|
||||
<ExtraData>
|
||||
<ExtraDataItem name="GUI/LastGuestSizeHint" value="1024,768"/>
|
||||
<ExtraDataItem name="GUI/LastNormalWindowPosition" value="513,100,1024,790"/>
|
||||
</ExtraData>
|
||||
<Hardware version="2">
|
||||
<CPU count="1" hotplug="false">
|
||||
<HardwareVirtEx enabled="true"/>
|
||||
<HardwareVirtExNestedPaging enabled="true"/>
|
||||
<HardwareVirtExVPID enabled="true"/>
|
||||
<HardwareVirtExUX enabled="true"/>
|
||||
<PAE enabled="true"/>
|
||||
<LongMode enabled="false"/>
|
||||
<HardwareVirtExLargePages enabled="false"/>
|
||||
<HardwareVirtForce enabled="false"/>
|
||||
</CPU>
|
||||
<Memory RAMSize="1024" PageFusion="false"/>
|
||||
<HID Pointing="PS2Mouse" Keyboard="PS2Keyboard"/>
|
||||
<HPET enabled="false"/>
|
||||
<Chipset type="PIIX3"/>
|
||||
<Boot>
|
||||
<Order position="1" device="Floppy"/>
|
||||
<Order position="2" device="DVD"/>
|
||||
<Order position="3" device="HardDisk"/>
|
||||
<Order position="4" device="None"/>
|
||||
</Boot>
|
||||
<Display VRAMSize="20" monitorCount="1" accelerate3D="false" accelerate2DVideo="false"/>
|
||||
<VideoCapture enabled="false" screens="18446744073709551615" horzRes="1024" vertRes="768" rate="512" fps="25"/>
|
||||
<RemoteDisplay enabled="false" authType="Null"/>
|
||||
<BIOS>
|
||||
<ACPI enabled="true"/>
|
||||
<IOAPIC enabled="false"/>
|
||||
<Logo fadeIn="true" fadeOut="true" displayTime="0"/>
|
||||
<BootMenu mode="MessageAndMenu"/>
|
||||
<TimeOffset value="0"/>
|
||||
<PXEDebug enabled="false"/>
|
||||
</BIOS>
|
||||
<USB>
|
||||
<Controllers>
|
||||
<Controller name="OHCI" type="OHCI"/>
|
||||
</Controllers>
|
||||
<DeviceFilters/>
|
||||
</USB>
|
||||
<Network>
|
||||
<Adapter slot="0" enabled="false" MACAddress="0800271D7901" cable="true" speed="0" type="82540EM">
|
||||
<HostInterface/>
|
||||
<DisabledModes/>
|
||||
</Adapter>
|
||||
</Network>
|
||||
<UART>
|
||||
<Port slot="0" enabled="false" IOBase="0x3f8" IRQ="4" hostMode="Disconnected"/>
|
||||
<Port slot="1" enabled="false" IOBase="0x2f8" IRQ="3" hostMode="Disconnected"/>
|
||||
</UART>
|
||||
<LPT>
|
||||
<Port slot="0" enabled="false" IOBase="0x378" IRQ="7"/>
|
||||
<Port slot="1" enabled="false" IOBase="0x378" IRQ="7"/>
|
||||
</LPT>
|
||||
<AudioAdapter controller="HDA" driver="Pulse" enabled="false"/>
|
||||
<RTC localOrUTC="UTC"/>
|
||||
<SharedFolders>
|
||||
<SharedFolder name="from" hostPath="/from" writable="false" autoMount="true"/>
|
||||
<SharedFolder name="to" hostPath="/to" writable="true" autoMount="true"/>
|
||||
</SharedFolders>
|
||||
<Clipboard mode="Disabled"/>
|
||||
<DragAndDrop mode="Disabled"/>
|
||||
<IO>
|
||||
<IoCache enabled="true" size="5"/>
|
||||
<BandwidthGroups/>
|
||||
</IO>
|
||||
<HostPci>
|
||||
<Devices/>
|
||||
</HostPci>
|
||||
<EmulatedUSB>
|
||||
<CardReader enabled="false"/>
|
||||
</EmulatedUSB>
|
||||
<Guest memoryBalloonSize="0"/>
|
||||
<GuestProperties/>
|
||||
</Hardware>
|
||||
<StorageControllers>
|
||||
<StorageController name="SATA" type="AHCI" PortCount="2" useHostIOCache="true" Bootable="true">
|
||||
<AttachedDevice type="HardDisk" port="0" device="0">
|
||||
<Image uuid="{4c5ed34f-f6cf-48e8-808d-2c06f0d11464}"/>
|
||||
</AttachedDevice>
|
||||
<!-- <AttachedDevice passthrough="false" type="DVD" port="1" device="0"/> -->
|
||||
</StorageController>
|
||||
</StorageControllers>
|
||||
</Machine>
|
||||
</VirtualBox>
|
|
@ -0,0 +1,105 @@
|
|||
<?xml version="1.0"?>
|
||||
<!--
|
||||
** DO NOT EDIT THIS FILE.
|
||||
** If you make changes to this file while any VirtualBox related application
|
||||
** is running, your changes will be overwritten later, without taking effect.
|
||||
** Use VBoxManage or the VirtualBox Manager GUI to make changes.
|
||||
-->
|
||||
<VirtualBox xmlns="http://www.innotek.de/VirtualBox-settings" version="1.14-linux">
|
||||
<Machine uuid="{37ab43a5-38d8-4491-93f5-5b0b077f5c32}" name="Win7" OSType="Windows7" snapshotFolder="Snapshots" lastStateChange="2014-11-14T11:58:35Z">
|
||||
<MediaRegistry>
|
||||
<HardDisks>
|
||||
<HardDisk uuid="{fee5d584-f5ad-4eea-a761-3c215cdf9eb1}" location="/win7_64.vdi" format="VDI" type="Immutable">
|
||||
<HardDisk uuid="{3d9a9193-0fe7-4f8c-8e1b-065dbf514c82}" location="/ram/overlay_win7_64.vdi" format="VDI" autoReset="true"/>
|
||||
</HardDisk>
|
||||
</HardDisks>
|
||||
<DVDImages/>
|
||||
<FloppyImages/>
|
||||
</MediaRegistry>
|
||||
<ExtraData>
|
||||
<ExtraDataItem name="GUI/LastGuestSizeHint" value="1024,768"/>
|
||||
<ExtraDataItem name="GUI/LastNormalWindowPosition" value="513,100,1024,790"/>
|
||||
</ExtraData>
|
||||
<Hardware version="2">
|
||||
<CPU count="1" hotplug="false">
|
||||
<HardwareVirtEx enabled="true"/>
|
||||
<HardwareVirtExNestedPaging enabled="true"/>
|
||||
<HardwareVirtExVPID enabled="true"/>
|
||||
<HardwareVirtExUX enabled="true"/>
|
||||
<PAE enabled="true"/>
|
||||
<LongMode enabled="true"/>
|
||||
<HardwareVirtExLargePages enabled="false"/>
|
||||
<HardwareVirtForce enabled="false"/>
|
||||
</CPU>
|
||||
<Memory RAMSize="1024" PageFusion="false"/>
|
||||
<HID Pointing="PS2Mouse" Keyboard="PS2Keyboard"/>
|
||||
<HPET enabled="false"/>
|
||||
<Chipset type="PIIX3"/>
|
||||
<Boot>
|
||||
<Order position="1" device="Floppy"/>
|
||||
<Order position="2" device="DVD"/>
|
||||
<Order position="3" device="HardDisk"/>
|
||||
<Order position="4" device="None"/>
|
||||
</Boot>
|
||||
<Display VRAMSize="20" monitorCount="1" accelerate3D="false" accelerate2DVideo="false"/>
|
||||
<VideoCapture enabled="false" screens="18446744073709551615" horzRes="1024" vertRes="768" rate="512" fps="25"/>
|
||||
<RemoteDisplay enabled="false" authType="Null"/>
|
||||
<BIOS>
|
||||
<ACPI enabled="true"/>
|
||||
<IOAPIC enabled="true"/>
|
||||
<Logo fadeIn="true" fadeOut="true" displayTime="0"/>
|
||||
<BootMenu mode="MessageAndMenu"/>
|
||||
<TimeOffset value="0"/>
|
||||
<PXEDebug enabled="false"/>
|
||||
</BIOS>
|
||||
<USB>
|
||||
<Controllers>
|
||||
<Controller name="OHCI" type="OHCI"/>
|
||||
</Controllers>
|
||||
<DeviceFilters/>
|
||||
</USB>
|
||||
<Network>
|
||||
<Adapter slot="0" enabled="false" MACAddress="0800271D7901" cable="true" speed="0" type="82540EM">
|
||||
<HostInterface/>
|
||||
<DisabledModes/>
|
||||
</Adapter>
|
||||
</Network>
|
||||
<UART>
|
||||
<Port slot="0" enabled="false" IOBase="0x3f8" IRQ="4" hostMode="Disconnected"/>
|
||||
<Port slot="1" enabled="false" IOBase="0x2f8" IRQ="3" hostMode="Disconnected"/>
|
||||
</UART>
|
||||
<LPT>
|
||||
<Port slot="0" enabled="false" IOBase="0x378" IRQ="7"/>
|
||||
<Port slot="1" enabled="false" IOBase="0x378" IRQ="7"/>
|
||||
</LPT>
|
||||
<AudioAdapter controller="HDA" driver="Pulse" enabled="false"/>
|
||||
<RTC localOrUTC="UTC"/>
|
||||
<SharedFolders>
|
||||
<SharedFolder name="from" hostPath="/from" writable="false" autoMount="true"/>
|
||||
<SharedFolder name="to" hostPath="/to" writable="true" autoMount="true"/>
|
||||
</SharedFolders>
|
||||
<Clipboard mode="Disabled"/>
|
||||
<DragAndDrop mode="Disabled"/>
|
||||
<IO>
|
||||
<IoCache enabled="true" size="5"/>
|
||||
<BandwidthGroups/>
|
||||
</IO>
|
||||
<HostPci>
|
||||
<Devices/>
|
||||
</HostPci>
|
||||
<EmulatedUSB>
|
||||
<CardReader enabled="false"/>
|
||||
</EmulatedUSB>
|
||||
<Guest memoryBalloonSize="0"/>
|
||||
<GuestProperties/>
|
||||
</Hardware>
|
||||
<StorageControllers>
|
||||
<StorageController name="SATA" type="AHCI" PortCount="2" useHostIOCache="true" Bootable="true">
|
||||
<AttachedDevice type="HardDisk" port="0" device="0">
|
||||
<Image uuid="{3d9a9193-0fe7-4f8c-8e1b-065dbf514c82}"/>
|
||||
</AttachedDevice>
|
||||
<!-- <AttachedDevice passthrough="false" type="DVD" port="1" device="0"/> -->
|
||||
</StorageController>
|
||||
</StorageControllers>
|
||||
</Machine>
|
||||
</VirtualBox>
|
|
@ -55,6 +55,7 @@ vbox4_win81_64
|
|||
vbox4_win10_64
|
||||
vbox5_win7_32
|
||||
vbox5_win7_64
|
||||
vbox5_win7_64_share
|
||||
vbox5_win10_64
|
||||
tz_vmm
|
||||
vmm
|
||||
|
|
Loading…
Reference in New Issue