Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add VirtIO devices for improved interactive experience #38

Closed
edubart opened this issue May 22, 2023 · 0 comments · Fixed by #172
Closed

Add VirtIO devices for improved interactive experience #38

edubart opened this issue May 22, 2023 · 0 comments · Fixed by #172
Assignees
Labels
enhancement New feature or request epic

Comments

@edubart
Copy link
Collaborator

edubart commented May 22, 2023

Context

VirtIO devices can improve the user experience while in interactive mode, by proving better console, shared folders and networking in the virtualized machine:

  • Better console
    When running the emulator in interactive mode, it uses a very simple console based on SBI, which has no support for console size and it's not responsive because it doesn't have any concept of interrupts. We could fix those issues and have a better terminal experience by implementing VirtIO console device.

  • Shared directories
    We could support sharing directories between the host and guest using VirtIO Plan9 filesystem device while in interactive mode. This would allow to prototype dapps faster, without the need to keep regenerating ext2 filesystems.

  • Public networking
    We could support networking to install packages in the guest using VirtIO net device while in interactive mode. This would allow to experiment different packages using the emulator on the fly, while the need to keep maintaning and regenerating a rootfs.

Possible solutions

The PLIC, VirtIO and protocol 9P2000.L specs should be read then the devices implemented accordingly.

@edubart edubart added the enhancement New feature or request label May 22, 2023
@edubart edubart added this to the v0.15.0 milestone May 22, 2023
@edubart edubart self-assigned this May 22, 2023
@edubart edubart linked a pull request May 22, 2023 that will close this issue
4 tasks
@edubart edubart added the epic label May 24, 2023
@edubart edubart moved this to On Hold in Machine Emulator SDK May 30, 2023
@edubart edubart removed this from the v0.15.0 milestone May 30, 2023
@edubart edubart moved this from On Hold to In Progress in Machine Emulator SDK Jan 4, 2024
@edubart edubart removed a link to a pull request Jan 11, 2024
4 tasks
@edubart edubart linked a pull request Jan 11, 2024 that will close this issue
@edubart edubart moved this from In Progress to PR Available in Machine Emulator SDK Feb 6, 2024
@github-project-automation github-project-automation bot moved this from PR Available to Done in Machine Emulator SDK Mar 7, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request epic
Projects
Status: Done
Development

Successfully merging a pull request may close this issue.

1 participant