+ (sizeof (host_cpu_load_info_data_t) / sizeof (integer_t)))
+
+struct host_preferred_user_arch {
+ cpu_type_t cpu_type; /* Preferred user-space cpu type */
+ cpu_subtype_t cpu_subtype; /* Preferred user-space cpu subtype */
+};
+
+typedef struct host_preferred_user_arch host_preferred_user_arch_data_t;
+typedef struct host_preferred_user_arch *host_preferred_user_arch_t;
+#define HOST_PREFERRED_USER_ARCH_COUNT ((mach_msg_type_number_t) \
+ (sizeof(host_preferred_user_arch_data_t)/sizeof(integer_t)))
+
+#ifdef PRIVATE
+/*
+ * CPU Statistics information
+ */
+struct _processor_statistics_np {
+ int32_t ps_cpuid;
+
+ uint32_t ps_csw_count;
+ uint32_t ps_preempt_count;
+ uint32_t ps_preempted_rt_count;
+ uint32_t ps_preempted_by_rt_count;
+
+ uint32_t ps_rt_sched_count;
+
+ uint32_t ps_interrupt_count;
+ uint32_t ps_ipi_count;
+ uint32_t ps_timer_pop_count;
+
+ uint64_t ps_runq_count_sum __attribute((aligned(8)));
+
+ uint32_t ps_idle_transitions;
+ uint32_t ps_quantum_timer_expirations;
+};
+
+struct host_debug_info_internal {
+ uint64_t config_bank:1, /* built configurations */
+ config_atm:1,
+ config_csr:1,
+ config_coalitions:1,
+ config_unused:60;
+};
+
+typedef struct host_debug_info_internal *host_debug_info_internal_t;
+typedef struct host_debug_info_internal host_debug_info_internal_data_t;
+#define HOST_DEBUG_INFO_INTERNAL_COUNT ((mach_msg_type_number_t)\
+ (sizeof (host_debug_info_internal_data_t) / sizeof(integer_t)))
+
+#endif /* PRIVATE */
+
+#ifdef KERNEL_PRIVATE
+
+extern kern_return_t set_sched_stats_active(
+ boolean_t active);
+
+extern kern_return_t get_sched_statistics(
+ struct _processor_statistics_np *out,
+ uint32_t *count);
+#endif /* KERNEL_PRIVATE */
+