Running system on armv7a9-zynq7000-qemu (Xilinx Zynq-7000, qemu emulator)

These instructions describe how to run a Phoenix-RTOS system image for the armv7a9-zynq7000-qemu target architecture using docker. Note that, the build artifacts, including the system image, should be first provided in the _boot directory. If you haven't run the build.sh script yet, run it for armv7a9-zynq7000-qemu target.

See how to build the Phoenix-RTOS system image.

Running the system image

Firstly, you need to have the docker installed.

How to get docker (Ubuntu 20.04)

  • Install required packages

sudo apt-get update && \ sudo apt-get install curl \ ca-certificates \ gnupg \ lsb-release

  • Make docker packages available

curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg && \ echo \ "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/ubuntu \ $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null

  • Install docker packages

sudo apt-get update && \ sudo apt-get install docker-ce docker-ce-cli containerd.io

  • Check if Docker is properly installed (version can be different):

sudo docker --version

  • To make calling docker command without sudo possible type:

sudo groupadd docker

Even if group docker already exists type then:

sudo usermod -aG docker $USER && \ newgrp docker

  • Check if running docker images without sudo works properly:

docker run hello-world

For more details and other instructions see

docker.com

Now, with docker installed you can run Phoenix-RTOS using the following command:

./docker-devel.sh scripts/armv7a9-zynq7000-qemu.sh

As a result, you should see psh (Phoenix-RTOS shell).

  • Note: It may take a while.

Why there is no need to install qemu?

All necessary tools including qemu are provided in phoenixrtos/devel docker image (run by docker-devel.sh script)

If you want, you can read more about docker containerization on https://www.docker.com/resources/what-container

Using Phoenix-RTOS

To get the available command list please type:

help

If you want to get the list of working processes please type:

ps

To get the table of processes please type:

top

If you want to quit, you should click on the terminal window, press ctrl + a, release it, and next press the x key.

See also

  1. Running system on armv7a9-zynq7000
  2. Running system on armv7a9-zynq7000 on development board
  3. Running system on targets
  4. Table of Contents