# Welcome

AIOS is the AI Agent Operating System, which embeds large language model (LLM) into the operating system and facilitates the development and deployment of LLM-based AI Agents. AIOS is designed to address problems (e.g., scheduling, context switch, memory management, storage management, tool management, Agent SDK management, etc.) during the development and deployment of LLM-based agents, towards a better AIOS-Agent ecosystem for agent developers and agent users. AIOS includes the AIOS Kernel and the AIOS SDK (Cerebrum). AIOS supports both Web UI and Terminal UI.

<figure><img src="https://4233234616-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F5h7XvlMFgKMtRboLGG1i%2Fuploads%2Fbjc40rfy2B0kUsnJCfsc%2Farchitecture.jpg?alt=media&#x26;token=5d2e6c02-dbea-4ab2-b27c-fa5a6f957ed7" alt=""><figcaption><p>The overview of layered AIOS.</p></figcaption></figure>

AIOS provides the AIOS kernel as an abstraction on top of the OS kernel. The kernel provides the core functions driven by AIOS system calls, to serve LLM-based agents. On top of the kernel layer, the AIOS SDK facilitates the development and deployment of agents.

### Different deployment modes of AIOS

Here are some key notations that are required to know before introducing the different modes of AIOS.&#x20;

* **AHM (Agent Hub Machine)**: Central server that hosts the agent marketplace/repository where users can publish, download, and share agents. Acts as the distribution center for all agent-related resources.
* **AUM (Agent UI Machine)**: Client machine that provides user interface for interacting with agents. Can be any device from mobile phones to desktops that supports agent visualization and control.
* **ADM (Agent Development Machine)**: Development environment where agent developers write, debug and test their agents. Requires proper development tools and libraries.
* **ARM (Agent Running Machine)**: Execution environment where agents actually run and perform tasks. Needs adequate computational resources for agent operations.

The following parts introduce different modes of deploying AIOS.&#x20;

#### Mode 1 (Local Kernel Mode)

<figure><img src="https://4233234616-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F5h7XvlMFgKMtRboLGG1i%2Fuploads%2F3JhzK36yNVzFa6hUuXqU%2Fstage1.png?alt=media&#x26;token=5394e847-108d-4297-9d3a-3063d6bfc4e7" alt="" width="375"><figcaption><p>Architecture of AIOS in Mode 1.</p></figcaption></figure>

* Features:
  * For agent users: They can download agents from agent hub from Machine B and run agents on Machine A.&#x20;
  * For agent developers: They can develop and test agents in Machine A and can upload agents to agent hub on Machine B.

#### **Mode 2 (Remote Kernel Mode)**

<figure><img src="https://4233234616-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F5h7XvlMFgKMtRboLGG1i%2Fuploads%2F01CoL7XLrfhYqH1gYz66%2Fstage2.png?alt=media&#x26;token=a444ac07-b736-4f85-924b-a4e5133cd465" alt="" width="375"><figcaption><p>Architecture of AIOS in Mode 2.</p></figcaption></figure>

* Features:&#x20;
  * Remote use of agents: Agent users / developers can use agents on Machine B, which is different from the development and running machine (Machine A)&#x20;
  * Benefit users who would like to use agents on resource-restricted machine (e.g., mobile device or edge device)

#### **Mode 2.5 (Remote Kernel Dev Mode)**

<figure><img src="https://4233234616-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F5h7XvlMFgKMtRboLGG1i%2Fuploads%2Fy1vgmHpNlSSduE7kGExp%2Fstage2.5.png?alt=media&#x26;token=43da6b8e-ad54-4864-9f6f-39ced062448c" alt="" width="375"><figcaption><p>Architecture of AIOS in Mode 2.5.</p></figcaption></figure>

* Features:
  * Remote development of agents: Agent developers can develop their agents on Machine B while running and testing their agents in Machine A. Benefit developers who would like to develop agents on resource-restricted machine (e.g., mobile device or edge device)
* Critical technique:
  * Packaging and agent transmission on different machines for distributed agent development and testing

#### Mode 3 (Personal Remote Kernel Mode)

<figure><img src="https://4233234616-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F5h7XvlMFgKMtRboLGG1i%2Fuploads%2FGYEmeENrj5anUFWOc8jA%2Fstage3.png?alt=media&#x26;token=7878d8f3-2027-4d3d-b239-9e1662fa714f" alt=""><figcaption><p>Architecture of AIOS in Mode 3.</p></figcaption></figure>

* Features:
  * Each user/developer can have their personal AIOS with long-term persistent data as long as they have registered account in the AIOS ecosystem
  * Their personal data can be synced to different machines with the same account
* Critical techniques:
  * User account registration and verification mechanism
  * Persistent personal data storage for each user's AIOS
  * Synchronization for different AIOS instances on different devices within the same account
  * Data privacy mechanism

#### Mode 4 (Personal Remote Virtual Kernel Mode)

<figure><img src="https://4233234616-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F5h7XvlMFgKMtRboLGG1i%2Fuploads%2F6RNWqhtjdR7IoRaVvQuS%2Fstage4.png?alt=media&#x26;token=4e000d28-4bbf-4db7-ad7f-5fd5aa3d67ca" alt=""><figcaption><p>Architecture of AIOS in Mode 4.</p></figcaption></figure>

* Features:
  * Different user/developer’s personal AIOS kernels can co-exist in the same physical machine through virtualization
* Critical techniques:
  * Virtualization of different AIOS kernel instances in the same machine
  * Scheduling and resource allocation mechanism for different virtual machines located in the same machine
