Merge vm1.(none):/home/stever/bk/newmem-head
[gem5.git] / src / python / m5 / objects / Process.py
1 from m5.SimObject import SimObject
2 from m5.params import *
3 from m5.proxy import *
4 class Process(SimObject):
5 type = 'Process'
6 abstract = True
7 output = Param.String('cout', 'filename for stdout/stderr')
8 system = Param.System(Parent.any, "system process will run on")
9
10 class LiveProcess(Process):
11 type = 'LiveProcess'
12 executable = Param.String('', "executable (overrides cmd[0] if set)")
13 cmd = VectorParam.String("command line (executable plus arguments)")
14 env = VectorParam.String('', "environment settings")
15 cwd = Param.String('', "current working directory")
16 input = Param.String('cin', "filename for stdin")
17 uid = Param.Int(100, 'user id')
18 euid = Param.Int(100, 'effective user id')
19 gid = Param.Int(100, 'group id')
20 egid = Param.Int(100, 'effective group id')
21 pid = Param.Int(100, 'process id')
22 ppid = Param.Int(99, 'parent process id')
23
24 class AlphaLiveProcess(LiveProcess):
25 type = 'AlphaLiveProcess'
26
27 class SparcLiveProcess(LiveProcess):
28 type = 'SparcLiveProcess'
29
30 class MipsLiveProcess(LiveProcess):
31 type = 'MipsLiveProcess'
32
33 class EioProcess(Process):
34 type = 'EioProcess'
35 chkpt = Param.String('', "EIO checkpoint file name (optional)")
36 file = Param.String("EIO trace file name")