mirror of
https://github.com/xzeldon/htop.git
synced 2024-12-25 15:25:45 +00:00
feec16cbb5
By default, OpenBSD disables SMT (hyperthreading) cpu pseudo-cores. This can be changed at runtime by setting the hw.smt sysctl so they may become active later, therefore they are still present in cpu stat structures but are marked as offline. As done with native top(1), this drops them from the cpu summary graphs.
59 lines
1.4 KiB
C
59 lines
1.4 KiB
C
#ifndef HEADER_OpenBSDProcessList
|
|
#define HEADER_OpenBSDProcessList
|
|
/*
|
|
htop - OpenBSDProcessList.h
|
|
(C) 2014 Hisham H. Muhammad
|
|
(C) 2015 Michael McConville
|
|
Released under the GNU GPLv2, see the COPYING file
|
|
in the source distribution for its full text.
|
|
*/
|
|
|
|
#include <kvm.h>
|
|
#include <stdbool.h>
|
|
#include <sys/types.h>
|
|
|
|
#include "Hashtable.h"
|
|
#include "ProcessList.h"
|
|
#include "UsersTable.h"
|
|
|
|
|
|
typedef struct CPUData_ {
|
|
unsigned long long int totalTime;
|
|
unsigned long long int userTime;
|
|
unsigned long long int niceTime;
|
|
unsigned long long int sysTime;
|
|
unsigned long long int sysAllTime;
|
|
unsigned long long int spinTime;
|
|
unsigned long long int intrTime;
|
|
unsigned long long int idleTime;
|
|
|
|
unsigned long long int totalPeriod;
|
|
unsigned long long int userPeriod;
|
|
unsigned long long int nicePeriod;
|
|
unsigned long long int sysPeriod;
|
|
unsigned long long int sysAllPeriod;
|
|
unsigned long long int spinPeriod;
|
|
unsigned long long int intrPeriod;
|
|
unsigned long long int idlePeriod;
|
|
|
|
int cpuIndex;
|
|
} CPUData;
|
|
|
|
typedef struct OpenBSDProcessList_ {
|
|
ProcessList super;
|
|
kvm_t* kd;
|
|
|
|
CPUData* cpus;
|
|
int cpuSpeed;
|
|
|
|
} OpenBSDProcessList;
|
|
|
|
|
|
ProcessList* ProcessList_new(UsersTable* usersTable, Hashtable* pidMatchList, uid_t userId);
|
|
|
|
void ProcessList_delete(ProcessList* this);
|
|
|
|
void ProcessList_goThroughEntries(ProcessList* super, bool pauseProcessUpdate);
|
|
|
|
#endif
|