#include <string>
-#include "cpu/static_inst.hh"
#include "sim/serialize.hh"
+#include "sim/stats.hh"
-class BaseCPU;
-class ThreadContext;
-class FnEvent;
// What does kernel stats expect is included?
-class System;
-
namespace Kernel {
class Statistics : public Serializable
std::string myname;
protected:
- Stats::Scalar<> _arm;
- Stats::Scalar<> _quiesce;
- Stats::Scalar<> _hwrei;
-
- Stats::Vector<> _iplCount;
- Stats::Vector<> _iplGood;
- Stats::Vector<> _iplTicks;
- Stats::Formula _iplUsed;
-
- Stats::Vector<> _syscall;
-// Stats::Vector<> _faults;
-
- private:
- int iplLast;
- Tick iplLastTick;
+ Stats::Scalar _arm;
+ Stats::Scalar _quiesce;
public:
- Statistics(System *system);
virtual ~Statistics() {}
const std::string name() const { return myname; }
- void regStats(const std::string &name);
+ virtual void regStats(const std::string &name);
public:
void arm() { _arm++; }
void quiesce() { _quiesce++; }
- void swpipl(int ipl);
public:
- virtual void serialize(std::ostream &os);
- virtual void unserialize(Checkpoint *cp, const std::string §ion);
+ void serialize(CheckpointOut &cp) const override {}
+ void unserialize(CheckpointIn &cp) override {}
};
-/* end namespace Kernel */ }
+} // namespace Kernel
#endif // __KERNEL_STATS_HH__