Hi All,
Xvisor ARM brings virtualization to Raspberry Pi.
We have ported Xvisor ARM to Raspberry Pi and we are able to boot multiple unmodified Linux Guest instances on Raspberry Pi board.
Xvisor® is an open-source type-1 hypervisor, which aims at providing a monolithic, light-weight, portable, and flexible virtualization solution. It provides a high performance and low memory foot print virtualization solution for ARMv5, ARMv6, ARMv7a, x86_64, and other CPU architectures.
(For more info Xvisor visit http://xhypervisor.org/)
Xvisor is a young hypervisor (just 3 years old) and it is totally community based open source hypervisor. We welcome all enthusiastic developers to come and be part of Xvisor developer community.
(For more info on Xvisor community visit http://xhypervisor.org/index.php?page=community)
To quickly try out Xvisor ARM on Raspberry Pi, you can download my images from: https://docs.google.com/file/d/0B0ABS_s ... sp=sharing
The above link points to a TAR ball containing images for one Linux Guest instance on Raspberry Pi.
You will find README upon decompressing the TAR ball, which will help you in trying Xvisor ARM on Raspberry Pi board or QEMU Raspberry Pi.
Once you have successfully booted Linux Guest on Xvisor ARM, you can try out few benchmarks which I have provided in Linux Guest root filesystem. This will help you evaluate Xvisor Guest performance compared to Native Linux.
Best Regards,
Anup Patel
Re: Xvisor ARM hypervisor ported to Raspberry Pi
This all sounds quite amazing. Might take me a while to absorb what is going on.
Are you saying I can boot a second Raspian inside Raspian as I might Raspian inside Qemu on a PC?
Or perhaps run Arch inside Raspian?
And so on.
If so, that is a pretty mind bending accomplishment.
Question is, what might anyone do with this in practice?
Are you saying I can boot a second Raspian inside Raspian as I might Raspian inside Qemu on a PC?
Or perhaps run Arch inside Raspian?
And so on.
If so, that is a pretty mind bending accomplishment.
Question is, what might anyone do with this in practice?
Last edited by Heater on Mon May 27, 2013 5:26 am, edited 1 time in total.
Slava Ukrayini.
Re: Xvisor ARM hypervisor ported to Raspberry Pi
Yo dawg ....
Well , it's been some time since i've shouted some first time
poster down who wanted to run a x86 hypervisor on the Pi
(albeit a closed-source one).
Never thought that people would build such things for ARM , but
we're here for learning , aren't we ?
ghans
Well , it's been some time since i've shouted some first time
poster down who wanted to run a x86 hypervisor on the Pi
(albeit a closed-source one).
Never thought that people would build such things for ARM , but
we're here for learning , aren't we ?
ghans
• Don't like the board ? Missing features ? Change to the prosilver theme ! You can find it in your settings.
• Don't like to search the forum BEFORE posting 'cos it's useless ? Try googling : yoursearchtermshere site:raspberrypi.org
• Don't like to search the forum BEFORE posting 'cos it's useless ? Try googling : yoursearchtermshere site:raspberrypi.org
Re: Xvisor ARM hypervisor ported to Raspberry Pi
No, we cannot boot Raspian inside Raspian. Currently, what we have achieved is to boot Realview-EB-MPCore Guest inside Raspian.Are you saying I can boot a second Raspian inside Raspian as I might Raspian inside Qemu on a PC?
Or perhaps run Arch inside Raspian?
And so on.
Currently, we emulate Realview-EB-MPCore Guest for ARMv6 boards (such as Raspberry Pi).
This does not mean we cannot emulate any other type of Guest for ARMv6 boards. We just need to add board/soc peripheral emulators in Xvisor ARM to emulate different type of Guest.
Some of the potential applications could be:Question is, what might anyone do with this in practice?
1. low-cost private cloud of Raspians
2. embedded virtualization (i.e. proprietary RTOS as one guest and managment OS Linux as another guest. The RTOS will have higher priority over managment OS)
3. low-cost platform for virtualization research (since Raspberry Pi is very affordable)
4. ....
The above is the applications that I can think of for now but there could be more applications.
Regards,
Anup
Last edited by anuppatel on Mon May 27, 2013 6:25 am, edited 1 time in total.
Re: Xvisor ARM hypervisor ported to Raspberry Pi
What?
Maybe in Raspberry Pi 2 when the processor gets a boost.
My GUI is slow enough.
My remote ssh session is also slow enough.
Maybe in Raspberry Pi 2 when the processor gets a boost.
My GUI is slow enough.
My remote ssh session is also slow enough.
Antikythera
Re: Xvisor ARM hypervisor ported to Raspberry Pi
OK, so what is "Realview-EB-MPCore"? Google is not helping me much, linking back Xvisor or Qemu where I don't find out.
What can we run on top of Realview-EB-MPCore if not Raspian?
Wait...I'll try out your demo:)
What can we run on top of Realview-EB-MPCore if not Raspian?
Wait...I'll try out your demo:)
Slava Ukrayini.
Re: Xvisor ARM hypervisor ported to Raspberry Pi
Realview-EB-MPCore is a emulation baseboard provided by ARM Ltd. for their ARM11 processor. Basically, its a FPGA board for ARM11 processor. QEMU is also capable of emulating Realview-EB-MPCore.
You can find its spec at http://infocenter.arm.com/help/index.js ... index.html
Regards,
Anup
You can find its spec at http://infocenter.arm.com/help/index.js ... index.html
Regards,
Anup
Re: Xvisor ARM hypervisor ported to Raspberry Pi
Hi,
Mik
You said that XVisor can be used to virtualize a RTOS.2. embedded virtualization (i.e. proprietary RTOS as one guest and managment OS Linux as another guest. The RTOS will have higher priority over managment OS)
- Is XVisor Real Time compliant? (it should be a run a RTOS…)
- What are its scheduler policies?
Mik
Re: Xvisor ARM hypervisor ported to Raspberry Pi
Yes, the Xvisor scheduler is soft real-time.
Currently, we use fixed priority scheduling (http://en.wikipedia.org/wiki/Fixed-prio ... scheduling)
The Xvisor scheduler is extensible and we can always add other real-time scheduling strategy.
Regards,
Anup
Currently, we use fixed priority scheduling (http://en.wikipedia.org/wiki/Fixed-prio ... scheduling)
The Xvisor scheduler is extensible and we can always add other real-time scheduling strategy.
Regards,
Anup
-
- Posts: 5
- Joined: Mon Oct 26, 2015 7:21 pm
Re: Xvisor ARM hypervisor ported to Raspberry Pi
Hi,
i follow the instructions given on the README.txt attached with all your files, but when i turn on the raspberry and nothing happen, looks like it is not booting. any idea about what is happening.
i copy all the files into the boot partition, then i modified the config.txt file so it looks like the following picture
then the SD card is put into raspberry. I thought i did everything fine, but nothing happened.
I also would like to know if there is any kind of Real time operating system that can work with Xvisor.
Thanks
i follow the instructions given on the README.txt attached with all your files, but when i turn on the raspberry and nothing happen, looks like it is not booting. any idea about what is happening.
i copy all the files into the boot partition, then i modified the config.txt file so it looks like the following picture
then the SD card is put into raspberry. I thought i did everything fine, but nothing happened.
I also would like to know if there is any kind of Real time operating system that can work with Xvisor.
Thanks
-
- Posts: 4277
- Joined: Sun Jan 15, 2012 1:11 pm
Re: Xvisor ARM hypervisor ported to Raspberry Pi
What's the state of this? Is it downloadable? Does it actually work?
And some folks need to stop being fanboys and see the forest behind the trees.
(One of the best lines I've seen on this board lately)
(One of the best lines I've seen on this board lately)
Re: Xvisor ARM hypervisor ported to Raspberry Pi
Xvisor uses u-boot to start booting.
The steps mentioned in <xvisor_source>/docs/arm/bcm2835-raspi.txt instructs us to follow http://elinux.org/RPi_U-Boot to have a working u-boot on Raspberry Pi.
Once you have u-boot working on Raspberry Pi, the rest of the steps in <xvisor_source>/docs/arm/bcm2835-raspi.txt should be straight forward.
Regards,
Anup
The steps mentioned in <xvisor_source>/docs/arm/bcm2835-raspi.txt instructs us to follow http://elinux.org/RPi_U-Boot to have a working u-boot on Raspberry Pi.
Once you have u-boot working on Raspberry Pi, the rest of the steps in <xvisor_source>/docs/arm/bcm2835-raspi.txt should be straight forward.
Regards,
Anup
-
- Posts: 5
- Joined: Mon Oct 26, 2015 7:21 pm
Re: Xvisor ARM hypervisor ported to Raspberry Pi
Hi, it is me again.
I have achieved the U-boot bootloader to run on my raspberry, now the problem is that when i try to run xvisor seems that the raspberry get halt or something like that. I took a picture so you can see what's happening:
the image of xvisor is the one attached at this link: https://docs.google.com/file/d/0B0ABS_s ... edit?pli=1 , but it didn't work so i tried to cross-compile xvisor from Ubuntu but i got some errors, i don't know what could be the problem
thanks for your help
I have achieved the U-boot bootloader to run on my raspberry, now the problem is that when i try to run xvisor seems that the raspberry get halt or something like that. I took a picture so you can see what's happening:
the image of xvisor is the one attached at this link: https://docs.google.com/file/d/0B0ABS_s ... edit?pli=1 , but it didn't work so i tried to cross-compile xvisor from Ubuntu but i got some errors, i don't know what could be the problem
thanks for your help

Re: Xvisor ARM hypervisor ported to Raspberry Pi
You need to use the u-boot given the tar ball.
Also, the tar ball contains Xvisor v0.2.3 (2years old). This particular Xvisor follows old way of booting Xvisor. The latest Xvisor follows Linux booting protocol.
The latest youtube video for Xvisor v0.2.6 on Raspberry Pi is at https://www.youtube.com/watch?v=F5ozZRFtRkI.
Recently released Xvisor v0.2.7 is also tested on Raspberry Pi.
For both Xvisor v0.2.6 and Xvisor v0.2.7, refer <xvisor_source>/docs/arm/bcm2835-raspi.txt.
Regards,
Anup
Also, the tar ball contains Xvisor v0.2.3 (2years old). This particular Xvisor follows old way of booting Xvisor. The latest Xvisor follows Linux booting protocol.
The latest youtube video for Xvisor v0.2.6 on Raspberry Pi is at https://www.youtube.com/watch?v=F5ozZRFtRkI.
Recently released Xvisor v0.2.7 is also tested on Raspberry Pi.
For both Xvisor v0.2.6 and Xvisor v0.2.7, refer <xvisor_source>/docs/arm/bcm2835-raspi.txt.
Regards,
Anup
-
- Posts: 5
- Joined: Mon Oct 26, 2015 7:21 pm
Re: Xvisor ARM hypervisor ported to Raspberry Pi
Hi, i think i don't understand. I'll tell you what i've done until now:
1. i downloaded the xvisor_raspi_demo folder that you put at this link: https://docs.google.com/file/d/0B0ABS_s ... edit?pli=1
2. I tried the instructions written on the README.txt file attached to it. Following those instruction i didn't get the u-boot working on my raspberry
3. So, i downloaded U-boot the latest version and compiled it, only then i got u-boot working on raspberry
4. having u-boot on my raspberry, i tried Xvisor by just copying the images attached to xvisor_raspi_demo folder, by doing that i got the result that i showed in my last post.
5. then i tried compiling xvisor-0.2.6 using <xvisor_source>/docs/arm/bcm2835-raspi.txt but i got an error on the cross compilation, still don't figure it out what it is but i am on that.
and ... that's the point that i have reached
thanks and please excuse me if there is any kind of mistakes.
1. i downloaded the xvisor_raspi_demo folder that you put at this link: https://docs.google.com/file/d/0B0ABS_s ... edit?pli=1
2. I tried the instructions written on the README.txt file attached to it. Following those instruction i didn't get the u-boot working on my raspberry
3. So, i downloaded U-boot the latest version and compiled it, only then i got u-boot working on raspberry
4. having u-boot on my raspberry, i tried Xvisor by just copying the images attached to xvisor_raspi_demo folder, by doing that i got the result that i showed in my last post.
5. then i tried compiling xvisor-0.2.6 using <xvisor_source>/docs/arm/bcm2835-raspi.txt but i got an error on the cross compilation, still don't figure it out what it is but i am on that.
and ... that's the point that i have reached
thanks and please excuse me if there is any kind of mistakes.
-
- Posts: 5
- Joined: Mon Oct 26, 2015 7:21 pm
Re: Xvisor ARM hypervisor ported to Raspberry Pi
Hi,
Compiling the xvisor code, i got this error:
i got it when i was trying to follow the instruction on this file: xvisor-0.2.6 / tests / arm32 / realview-eb-mpcore / linux / README
could it be the version of xvisor that i am trying to use ? or maybe some command is missing on the steps ?
thanks
Compiling the xvisor code, i got this error:
i got it when i was trying to follow the instruction on this file: xvisor-0.2.6 / tests / arm32 / realview-eb-mpcore / linux / README
could it be the version of xvisor that i am trying to use ? or maybe some command is missing on the steps ?
thanks
Re: Xvisor ARM hypervisor ported to Raspberry Pi
Hi,
The step8 in tests/arm32/realview-eb-mpcore/linux/README is to be done with current directory as <linux_source_directory>. (Please refer step7)
Changing current directory to <linux_source_directory> would solve your issue.
Regards,
Anup
The step8 in tests/arm32/realview-eb-mpcore/linux/README is to be done with current directory as <linux_source_directory>. (Please refer step7)
Changing current directory to <linux_source_directory> would solve your issue.
Regards,
Anup
-
- Posts: 5
- Joined: Mon Oct 26, 2015 7:21 pm
Re: Xvisor ARM hypervisor ported to Raspberry Pi
Hi,
i have achieved the compilation of xvisor. Now i had a problem while trying to run it just that this time i am guessing the problem has to deal with U-boot, following message shows the error i got:
hope you can tell me what should i read or do to solve this error.
Thanks
i have achieved the compilation of xvisor. Now i had a problem while trying to run it just that this time i am guessing the problem has to deal with U-boot, following message shows the error i got:
hope you can tell me what should i read or do to solve this error.
Thanks
Re: Xvisor ARM hypervisor ported to Raspberry Pi
You need to load one_guest_ebmp.dtb (created using "make dtbs" ) at 0x00800000 using uboot fatload command.
Also make sure you have pretty recent uboot on your Raspberry Pi.
Regards,
Anup
Also make sure you have pretty recent uboot on your Raspberry Pi.
Regards,
Anup
Re: Xvisor ARM hypervisor ported to Raspberry Pi
Hi guys,
I am not sure If anyone will see it but, I am posting here because even if I have become member of the Google Group Xvisor Develoment I dont have the privileges to add/ start a new topic/thread, so I will try to do it here.
I am new with Raspberry pi and xvisor so dont be rush with me.
I am trying to install Xvisor on a Raspberry pi 2 Model B following the steps of the doc "xvisor-next/docs/arm/bcm2836-raspi2.txt"
I am trying to do all the steps directly on Raspberry pi2 and I dont using an another Linux machine as a development machine.
Is that an issue?
However, I got some errors during the steps:
1) When I tried to build the U-boot and executed the command "make all" at the end I took this:
/bin/sh: 1:bc: not found
Is this critical? Although I have got a u-boot.bin file
Furthermore, since I am executing all the commands on a raspberry pi2 I dont use the export CROSS_COMPILER commands since is already amrhf architecture
After all these, I execute the git clone command and I downloaded the source code of the Xvisor-next
During the build steps the commands: make; make dtbs provide the following error:
See the attached image please
Can anyone guide me what I am doing wrong ? Do I need to build the Xvisor source code to another linux system ?
Thanks in advance
I am not sure If anyone will see it but, I am posting here because even if I have become member of the Google Group Xvisor Develoment I dont have the privileges to add/ start a new topic/thread, so I will try to do it here.
I am new with Raspberry pi and xvisor so dont be rush with me.
I am trying to install Xvisor on a Raspberry pi 2 Model B following the steps of the doc "xvisor-next/docs/arm/bcm2836-raspi2.txt"
I am trying to do all the steps directly on Raspberry pi2 and I dont using an another Linux machine as a development machine.
Is that an issue?
However, I got some errors during the steps:
1) When I tried to build the U-boot and executed the command "make all" at the end I took this:
/bin/sh: 1:bc: not found
Is this critical? Although I have got a u-boot.bin file
Furthermore, since I am executing all the commands on a raspberry pi2 I dont use the export CROSS_COMPILER commands since is already amrhf architecture
After all these, I execute the git clone command and I downloaded the source code of the Xvisor-next
During the build steps the commands: make; make dtbs provide the following error:
See the attached image please
Can anyone guide me what I am doing wrong ? Do I need to build the Xvisor source code to another linux system ?
Thanks in advance
- Attachments
-
- make dtbs error
- makedtbs_error.png (50.41 KiB) Viewed 14315 times
Re: Xvisor ARM hypervisor ported to Raspberry Pi
Not sure how critical that is but it is saying it can't find the program bc (see below)
That is saying it can't find the programs flex or bison.abrams wrote: ↑Mon Oct 30, 2017 9:08 pmFurthermore, since I am executing all the commands on a raspberry pi2 I dont use the export CROSS_COMPILER commands since is already amrhf architecture
After all these, I execute the git clone command and I downloaded the source code of the Xvisor-next
During the build steps the commands: make; make dtbs provide the following error:
See the attached image please
Can anyone guide me what I am doing wrong ? Do I need to build the Xvisor source code to another linux system ?
Thanks in advance
To install these three programs do the following, you may find you need other packages installing too (I have no knowledge of Xvisor or it's requirements). I would have thought the developers would have written somewhere what tools are required to build their projects (flex is a lexical analyser generator, bison is a parser generator and bc is an arbitrary precision calculator language).
Code: Select all
sudo apt update
sudo apt install bc flex bison
She who travels light — forgot something.
Please note that my name doesn't start with the @ character so can people please stop writing it as if it does!
Please note that my name doesn't start with the @ character so can people please stop writing it as if it does!