This document discusses virtualization techniques such as Intel VT and VMX. It explains the ring protection model of x86 CPUs and how virtualization works by having a hypervisor sit at the highest ring/privilege level. Key virtualization concepts covered include VMX root/non-root operation, VMCS data structures, VM exits/entries, and instructions for accessing and modifying VMCS like VMPTRLD, VMPTRST, VMWRITE, VMREAD, VMCLEAR. Memory mapped and port IO virtualization techniques are also summarized.
Gosuke Miyashita presented on Sqale, a cloud application platform similar to Heroku. Sqale uses Linux containers to isolate each user's environment. Requests are distributed to containers running applications through a web proxy and SSH router. The SSH router routes connections to the appropriate file repository, Git server, or container using OpenSSH and scripts. This allows isolating each user's applications, files, and Git repositories in separate containers and servers.
Perl changed the speaker's life in several ways:
1) The speaker met his wife on a Perl-based chat site in 1998.
2) The speaker's career path led him to technical management roles where he uses Perl and Perl-based tools extensively to develop internal systems.
3) Interacting with the Perl community through conferences and online helped the speaker advance his technical skills and career.
This document summarizes the backend architecture of Sqale, a cloud application platform similar to Heroku. Key components include containers deployed on EC2 instances that are assigned to individual users, an SSH router that routes SSH connections to the appropriate file repository, Git server, or user container, and a web proxy that load balances traffic across containers using dynamic configuration from Redis. The architecture aims to provide isolated virtual environments for each user's applications through the use of Linux containers and a customized kernel.
Inside Sqale's Backend at Sapporo Ruby Kaigi 2012Gosuke Miyashita
This document summarizes the backend architecture of Sqale, a cloud application platform. It uses Linux containers hosted on Amazon EC2 instances. Containers are assigned to individual users and act as virtual environments. Traffic is routed to containers through an Nginx load balancer using dynamic configuration based on availability. An SSH router routes Git, SFTP, and SSH connections to the appropriate file or container servers using authorized keys scripts. Deployments are handled by separate servers.
Assurer - a pluggable server testing/monitoring frameworkGosuke Miyashita
Assurer is a server testing and monitoring framework that allows configuring tests, notifications, formatting, and publishing of results using plugins. It uses a plugin architecture and YAML configuration to make it easy to add new tests and change outputs. Tests are run in parallel and results can be filtered and published to various outputs like terminals, email, and files. It aims to be similar to Plagger but also cover monitoring use cases.
How Danga::Socket handles asynchronous processing and how to write asynchrono...Gosuke Miyashita
The document discusses asynchronous programming in Perl and how to write asynchronous plugins for Perlbal using Danga::Socket. Key points include:
1) Danga::Socket provides asynchronous I/O event handling using its main event loop and allows adding I/O watchers and timers.
2) To write asynchronous Perlbal plugins, the main process should be based on Danga::Socket's event loop and use callbacks. The plugin must return 1 and a callback must restart processing in ClientProxy.
3) Perlbal itself may also need patching to work with asynchronous plugins by checking an async completion flag in ClientProxy before running plugins.
Xen Summit 2008 Tokyo - Operating Xen domains through LL(Perl/Python) with li...Gosuke Miyashita
The document discusses libvirt, a library that provides a virtualization API for managing virtual machines. It describes how libvirt interacts with virtualization systems like Xen and allows operations like listing domains, getting domain info, and performing actions like create, shutdown, and reboot. Code examples are provided in Perl and Python to connect to remote libvirt servers and get domain state information using libvirt and Avahi multicast DNS discovery.
IoT Devices Compliant with JC-STAR Using Linux as a Container OSTomohiro Saneyoshi
Security requirements for IoT devices are becoming more defined, as seen with the EU Cyber Resilience Act and Japan’s JC-STAR.
It's common for IoT devices to run Linux as their operating system. However, adopting general-purpose Linux distributions like Ubuntu or Debian, or Yocto-based Linux, presents certain difficulties. This article outlines those difficulties.
It also, it highlights the security benefits of using a Linux-based container OS and explains how to adopt it with JC-STAR, using the "Armadillo Base OS" as an example.
Feb.25.2025@JAWS-UG IoT