1 |
/* C declarations for Hurd server interfaces |
/* C declarations for Hurd server interfaces |
2 |
Copyright (C) 1993,94,95,96,98,99,2001 Free Software Foundation, Inc. |
Copyright (C) 1993,94,95,96,98,99,2001,02 Free Software Foundation, Inc. |
3 |
|
|
4 |
This file is part of the GNU Hurd. |
This file is part of the GNU Hurd. |
5 |
|
|
21 |
#define _HURD_TYPES_H |
#define _HURD_TYPES_H |
22 |
|
|
23 |
#include <mach/std_types.h> /* For mach_port_t et al. */ |
#include <mach/std_types.h> /* For mach_port_t et al. */ |
24 |
|
#include <mach/message.h> /* For mach_msg_id_t et al. */ |
25 |
#include <sys/types.h> /* For pid_t and uid_t. */ |
#include <sys/types.h> /* For pid_t and uid_t. */ |
26 |
|
|
27 |
/* A string identifying this release of the GNU Hurd. Our |
/* A string identifying this release of the GNU Hurd. Our |
245 |
|
|
246 |
#include <mach/task_info.h> |
#include <mach/task_info.h> |
247 |
#include <mach/thread_info.h> |
#include <mach/thread_info.h> |
248 |
|
#ifndef THREAD_SCHED_INFO |
249 |
|
#include <mach/policy.h> |
250 |
|
#endif |
251 |
|
|
252 |
/* Flags sent in proc_getprocinfo request. */ |
/* Flags sent in proc_getprocinfo request. */ |
253 |
#define PI_FETCH_TASKINFO 0x00000001 |
#define PI_FETCH_TASKINFO 0x00000001 |
270 |
int nthreads; /* size of pi_threadinfos */ |
int nthreads; /* size of pi_threadinfos */ |
271 |
|
|
272 |
struct task_basic_info taskinfo; |
struct task_basic_info taskinfo; |
273 |
|
#ifdef TASK_SCHED_TIMESHARE_INFO |
274 |
|
struct policy_timeshare_base timeshare_base_info; |
275 |
|
#endif |
276 |
struct |
struct |
277 |
{ |
{ |
278 |
int died; /* this thread died in the middle of call */ |
int died; /* this thread died in the middle of call */ |
279 |
int rpc_block; /* thred is blocked on this RPC */ |
mach_msg_id_t rpc_block; /* thread is blocked on this RPC */ |
280 |
struct thread_basic_info pis_bi; |
struct thread_basic_info pis_bi; |
281 |
|
#ifdef THREAD_SCHED_INFO |
282 |
struct thread_sched_info pis_si; |
struct thread_sched_info pis_si; |
283 |
|
#else |
284 |
|
struct policy_infos pis_pi; |
285 |
|
#endif |
286 |
} threadinfos[0]; |
} threadinfos[0]; |
287 |
}; |
}; |
288 |
typedef int *procinfo_t; |
typedef int *procinfo_t; |