Minor fixes to container cml template

This commit is contained in:
Bahadir Balban
2009-11-11 23:11:10 +02:00
parent 0be7b734d3
commit 317ce0bd29
4 changed files with 11 additions and 30 deletions

View File

@@ -97,8 +97,9 @@ menu main_menu
#############`
# RULES #
#############
#Capability rules:
#Capability/Container rules:
default CAPABILITIES from y
default CONTAINERS from 1
#Platform rules:
unless SUBARCH_V5 suppress PLATFORM_PB926

View File

@@ -104,13 +104,12 @@ require CONT%(cn)d_VIRT3_START < CONT%(cn)d_VIRT3_END
require CONT%(cn)d_VIRT4_START < CONT%(cn)d_VIRT4_END
require CONT%(cn)d_VIRT5_START < CONT%(cn)d_VIRT5_END
# Physical Regions for containers should start after kernel,
# assuming kernel to be using 0x0-0x40000 Physcial Memory region
derive kernel_size from (0x0 + 0x40000) # cannot set value directly
require CONT%(cn)d_PHYS0_START >= kernel_size
require CONT%(cn)d_PHYS1_START >= kernel_size
require CONT%(cn)d_PHYS2_START >= kernel_size
require CONT%(cn)d_PHYS3_START >= kernel_size
# We assume kernel uses 0x0 - 0x40000 physical RAM.
# Physical Regions for containers should start after kernel.
require CONT%(cn)d_PHYS0_START >= 0x40000
require CONT%(cn)d_PHYS1_START >= 0x40000
require CONT%(cn)d_PHYS2_START >= 0x40000
require CONT%(cn)d_PHYS3_START >= 0x40000
# TODO: We can add check for end address of physical region to be
# less than RAM SIZE, need to find out RAM SIZE?
@@ -118,15 +117,7 @@ require CONT%(cn)d_PHYS3_START >= kernel_size
# Rules for Linux kernel parameters
require CONT%(cn)d_LINUX_ZRELADDR > CONT%(cn)d_LINUX_PHYS_OFFSET + 0x8000
# FIXME: Restriction for rootfs?
# Rules for posix containers
# UTCB area starts from 0xf8100000
derive utcb_start from (0x0 + 0xf8100000) # cannot set value directly
require CONT%(cn)d_PAGER_UTCB_START >= utcb_start
# TODO: Do we want to check if PAGER_LMA/VMA lies in allocated memory regions
default CONT%(cn)d_PHYS0_START from 0x40000
default CONT%(cn)d_PHYS0_END from 0x1000000
default CONT%(cn)d_PHYS1_START from 0x1000000

View File

@@ -4,15 +4,12 @@ This directory contains the source code for the POSIX services developed on top
of the Codezero Microkernel. There is a pager called MM0 which demonstrates how
a pager on top of Codezero should act, by its system call usage.
FS0 is the VFS task that implements File IO via IPC. FS0 can be thought of as a
micokernel server.
Test0 is the userspace task that tests microkernel system call functionality as
well as the POSIX system call functionality by issuing calls to MM0 and FS0.
well as the POSIX system call functionality by issuing calls to MM0
Codezero POSIX services partially demonstrate how a POSIX level operating
system would be written on top of Codezero. Unlike shallow implementations on
embedded systems that only look like POSIX, mm0 and fs0 implement a real virtual
memory subsystem and virtual filesystem that solidly backs the API. Neverhteless
embedded systems that only look like POSIX, mm0 implements a real virtual
memory subsystem and virtual filesystem that solidly backs the API. Neverhtheless
services such as terminal IO and common filesystem support are currently
missing.

View File

@@ -27,11 +27,6 @@ containers_constraint = \
unless CONTAINERS > %d suppress cont%d_menu
'''
containers_default = \
'''
default CONTAINERS from %d
'''
def add_container_constraint(cid):
cml_string = ""
if cid == 0:
@@ -49,9 +44,6 @@ def generate_container_cml(arch, ncont):
for cont in range(ncont):
fbody += add_container_constraint(cont)
# Add number of default containers
fbody += containers_default % ncont
# Generate the containers menu with as many entries as containers
fbody += containers_menu
for cont in range(ncont):