process.hh (10782:0a78638881d7) | process.hh (10905:a6ca6831e775) |
---|---|
1/* 2 * Copyright (c) 2014 Advanced Micro Devices, Inc. 3 * Copyright (c) 2001-2005 The Regents of The University of Michigan 4 * All rights reserved. 5 * 6 * Redistribution and use in source and binary forms, with or without 7 * modification, are permitted provided that the following conditions are 8 * met: redistributions of source code must retain the above copyright --- 106 unchanged lines hidden (view full) --- 115 Stats::Scalar num_syscalls; // number of syscalls executed 116 117 protected: 118 // constructor 119 Process(ProcessParams *params); 120 121 virtual void initState(); 122 | 1/* 2 * Copyright (c) 2014 Advanced Micro Devices, Inc. 3 * Copyright (c) 2001-2005 The Regents of The University of Michigan 4 * All rights reserved. 5 * 6 * Redistribution and use in source and binary forms, with or without 7 * modification, are permitted provided that the following conditions are 8 * met: redistributions of source code must retain the above copyright --- 106 unchanged lines hidden (view full) --- 115 Stats::Scalar num_syscalls; // number of syscalls executed 116 117 protected: 118 // constructor 119 Process(ProcessParams *params); 120 121 virtual void initState(); 122 |
123 unsigned int drain(DrainManager *dm) M5_ATTR_OVERRIDE; 124 |
|
123 public: 124 125 //This id is assigned by m5 and is used to keep process' tlb entries 126 //separated. 127 uint64_t M5_pid; 128 129 // flag for using architecture specific page table 130 bool useArchPT; 131 // running KvmCPU in SE mode requires special initialization 132 bool kvmInSE; 133 134 PageTableBase* pTable; 135 | 125 public: 126 127 //This id is assigned by m5 and is used to keep process' tlb entries 128 //separated. 129 uint64_t M5_pid; 130 131 // flag for using architecture specific page table 132 bool useArchPT; 133 // running KvmCPU in SE mode requires special initialization 134 bool kvmInSE; 135 136 PageTableBase* pTable; 137 |
136 class FdMap | 138 class FdMap : public Serializable |
137 { 138 public: 139 int fd; 140 std::string filename; 141 int mode; 142 int flags; 143 bool isPipe; 144 int readPipeSource; 145 uint64_t fileOffset; 146 EmulatedDriver *driver; 147 148 FdMap() 149 : fd(-1), filename("NULL"), mode(0), flags(0), 150 isPipe(false), readPipeSource(0), fileOffset(0), driver(NULL) 151 { } 152 | 139 { 140 public: 141 int fd; 142 std::string filename; 143 int mode; 144 int flags; 145 bool isPipe; 146 int readPipeSource; 147 uint64_t fileOffset; 148 EmulatedDriver *driver; 149 150 FdMap() 151 : fd(-1), filename("NULL"), mode(0), flags(0), 152 isPipe(false), readPipeSource(0), fileOffset(0), driver(NULL) 153 { } 154 |
153 void serialize(std::ostream &os); 154 void unserialize(Checkpoint *cp, const std::string §ion); | 155 void serialize(CheckpointOut &cp) const M5_ATTR_OVERRIDE; 156 void unserialize(CheckpointIn &cp) M5_ATTR_OVERRIDE; |
155 }; 156 157 protected: 158 /// Memory proxy for initialization (image loading) 159 SETranslatingPortProxy initVirtMem; 160 161 private: 162 // file descriptor remapping support --- 65 unchanged lines hidden (view full) --- 228 * @param paddr The starting physical address of the range. 229 * @param size The length of the range in bytes. 230 * @param cacheable Specifies whether accesses are cacheable. 231 * @return True if the map operation was successful. (At this 232 * point in time, the map operation always succeeds.) 233 */ 234 bool map(Addr vaddr, Addr paddr, int size, bool cacheable = true); 235 | 157 }; 158 159 protected: 160 /// Memory proxy for initialization (image loading) 161 SETranslatingPortProxy initVirtMem; 162 163 private: 164 // file descriptor remapping support --- 65 unchanged lines hidden (view full) --- 230 * @param paddr The starting physical address of the range. 231 * @param size The length of the range in bytes. 232 * @param cacheable Specifies whether accesses are cacheable. 233 * @return True if the map operation was successful. (At this 234 * point in time, the map operation always succeeds.) 235 */ 236 bool map(Addr vaddr, Addr paddr, int size, bool cacheable = true); 237 |
236 void serialize(std::ostream &os); 237 void unserialize(Checkpoint *cp, const std::string §ion); | 238 void serialize(CheckpointOut &cp) const M5_ATTR_OVERRIDE; 239 void unserialize(CheckpointIn &cp) M5_ATTR_OVERRIDE; |
238}; 239 240// 241// "Live" process with system calls redirected to host system 242// 243class ObjectFile; 244class LiveProcess : public Process 245{ --- 106 unchanged lines hidden --- | 240}; 241 242// 243// "Live" process with system calls redirected to host system 244// 245class ObjectFile; 246class LiveProcess : public Process 247{ --- 106 unchanged lines hidden --- |