Ignore:
Timestamp:
Jul 22, 2015, 12:53:44 PM (9 years ago)
Author:
alain
Message:

Introduce the "active" field in vspace.
When this field is set the application is directly started by the kernel_init.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • soft/giet_vm/giet_python/mapping.py

    r633 r642  
    365365    def addVspace( self,
    366366                   name,                # vspace name
    367                    startname ):         # name of vseg containing start_vector
     367                   startname,           # name of vseg containing start_vector
     368                   active = False ):    # default value is not active at boot
    368369
    369370        # add one vspace into mapping
    370         vspace = Vspace( name, startname )
     371        vspace = Vspace( name, startname, active )
    371372        self.vspaces.append( vspace )
    372373        vspace.index = self.total_vspaces
     
    19171918    def __init__( self,
    19181919                  name,
    1919                   startname ):
     1920                  startname,
     1921                  active ):
    19201922
    19211923        self.index     = 0              # global index ( set by addVspace() )
    19221924        self.name      = name           # vspace name
    19231925        self.startname = startname      # name of vseg containing the start_vector
     1926        self.active    = active         # active at boot if true
    19241927        self.vsegs     = []
    19251928        self.tasks     = []
     
    19301933    def xml( self ):   # xml for one vspace
    19311934
    1932         s =  '        <vspace name="%s" startname="%s" >\n' % ( self.name, self.startname )
     1935        s =  '        <vspace name="%s" startname="%s" active="%d" >\n' \
     1936                            %(self.name , self.startname , self.active)
    19331937        for vseg in self.vsegs: s += vseg.xml()
    19341938        for task in self.tasks: s += task.xml()
     
    19761980        byte_stream += mapping.int2bytes(4, first_vseg_id)     # global index
    19771981        byte_stream += mapping.int2bytes(4, first_task_id)     # global index
     1982        byte_stream += mapping.int2bytes(4, self.active)       # always active if non zero
    19781983
    19791984        if ( verbose ):
     
    19831988            print 'vseg_id    = %d' %  first_vseg_id
    19841989            print 'task_id    = %d' %  first_task_id
     1990            print 'active     = %d' %  self.active
    19851991
    19861992        return byte_stream
Note: See TracChangeset for help on using the changeset viewer.