1
0
mirror of https://github.com/AmbiML/sparrow-kata-full.git synced 2025-05-10 16:35:01 +00:00
sparrow-kata-full/apps/system/components/ProcessManager/ProcessManager.camkes
June Tate-Gans 1a068b0143 kata: Prepend the Google copyright and Apache 2.0 license
This includes adding it to TOML files and CAmkES assembly files.

Change-Id: I263e7a566df91fccc04f9b2186edab13331290c5
GitOrigin-RevId: 48a35b06ca868a0a4d379f881068cc4dad491669
2022-10-06 18:59:16 +00:00

51 lines
1.8 KiB
Plaintext

// Copyright 2022 Google LLC
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
// https://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
// Kata OS ProcessManager services.
import <LoggerInterface.camkes>;
import <MemoryInterface.camkes>;
import <PackageManagementInterface.camkes>;
import <ProcessControlInterface.camkes>;
import <SecurityCoordinatorInterface.camkes>;
component ProcessManager {
provides PackageManagementInterface pkg_mgmt;
provides ProcessControlInterface proc_ctrl;
uses LoggerInterface logger;
uses MemoryInterface memory;
uses SecurityCoordinatorInterface security;
// Enable KataOS CAmkES support.
attribute int kataos = true;
// Process creation requires enough slots to hold dynamically
// allocated memory when constructing the application. This
// can be multiple megabytes so size for 4MB / 4KB pages.
attribute int cnode_headroom = 1024;
// Arrange for global objects to be instantiated in our CSpace
// (typically by moving them from the rootserver). Capabilities
// are exposed with global static symbols.
attribute int asid_pool = true; // ASID_POOL
attribute int sched_ctrl = true; // SCHED_CTRL
attribute int domain_ctrl = true; // DOMANI_CTRL
// Copyregions for loading bundle images and for loading an application.
// These need to be separate because they are used concurrently.
has copyregion BUNDLE_IMAGE;
has copyregion LOAD_APPLICATION;
}