From f387d24c7d59cfd219c3b795a512981347240380 Mon Sep 17 00:00:00 2001 From: Samuel Thibault Date: Sun, 12 Nov 2006 23:45:07 +0000 Subject: 2006-11-13 Barry deFreese * i386/i386/locore.h: New file. * i386/i386/pcb.h: New file. * i386/i386/pcb.c: Include `pcb.h'. * i386/i386/pit.c (clkstart): Fix type of s into unsigned long. * i386/i386/spl.h (spl0, splsched, splx, splsoftclock, splon, sploff) (splhigh, splimp, spltty, splclock, setsoftclock): Add prototype. * i386/i386at/kd_event.h: New file. * i386/i386at/kd_event.c: Include `kd_event.h'. * i386/i386at/kd_mouse.h: New file. * i386/i386at/kd_mouse.c: Include `kd_mouse.h'. (mouseclose): Fix call of `serial_mouse_close' function. * i386/i386at/kd.c: Include `kd_event.h' and `kd_mouse.h'. * i386/i386at/kd.h (splx, spltty): Remove prototypes.h * i386/i386at/lpr.c: Likewise. * ipc/mach_msg.c: Include `machine/locore.h' and `machine/pcb.h'. * kern/mach_clock.h: New file. * kern/mach_clock.c: Include `kern/queue.h', `kern/timer.h' and `mach_clock.h'. * kern/mach_factor.h: New file. * kern/mach_factor.c: Include `mach_factor.h'. * kern/sched_prim.c: Include `kern/mach_factor.h'. * kern/thread.c: Include `machine/pcb.h'. --- kern/mach_clock.c | 3 +++ kern/mach_clock.h | 68 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ kern/mach_factor.c | 1 + kern/mach_factor.h | 32 +++++++++++++++++++++++++ kern/sched_prim.c | 1 + kern/thread.c | 1 + 6 files changed, 106 insertions(+) create mode 100644 kern/mach_clock.h create mode 100644 kern/mach_factor.h (limited to 'kern') diff --git a/kern/mach_clock.c b/kern/mach_clock.c index 3c1ccdb..5491e88 100644 --- a/kern/mach_clock.c +++ b/kern/mach_clock.c @@ -48,11 +48,13 @@ #include #include #include +#include #include #include #include #include #include +#include #include #include #include /* HZ */ @@ -62,6 +64,7 @@ #include #endif +#include "mach_clock.h" void softclock(); /* forward */ diff --git a/kern/mach_clock.h b/kern/mach_clock.h new file mode 100644 index 0000000..e6f746b --- /dev/null +++ b/kern/mach_clock.h @@ -0,0 +1,68 @@ +/* + * + * Copyright (C) 2006 Free Software Foundation, Inc. + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2, or (at your option) + * any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. + * + * Author: Barry deFreese. + */ +/* + * + */ + +#ifndef _KERN_MACH_CLOCK_H_ +#define _KERN_MACH_CLOCK_H_ + +#include +#include +#include + +extern void clock_interrupt( + int usec, + boolean_t usermode, + boolean_t basepri); + +extern void softclock(); + +extern void set_timeout( + timer_elt_t telt, + unsigned int interval); + +extern boolean_t reset_timeout(timer_elt_t telt); + +extern void init_timeout(); + +extern void record_time_stamp (time_value_t *stamp); + +extern kern_return_t host_get_time( + host_t host, + time_value_t *current_time); + +extern kern_return_t host_set_time( + host_t host, + time_value_t new_time); + +extern kern_return_t host_adjust_time( + host_t host, + time_value_t new_adjustment, + time_value_t *old_adjustment); + +extern void mapable_time_init(); + +extern void timeout(int (*fcn)(), char *param, int interval); + +extern boolean_t untimeout(int (*fcn)(), char *param); + +#endif /* _KERN_MACH_CLOCK_H_ */ diff --git a/kern/mach_factor.c b/kern/mach_factor.c index d9e0465..16ca1f4 100644 --- a/kern/mach_factor.c +++ b/kern/mach_factor.c @@ -41,6 +41,7 @@ #include #endif /* MACH_KERNEL */ +#include "mach_factor.h" long avenrun[3] = {0, 0, 0}; long mach_factor[3] = {0, 0, 0}; diff --git a/kern/mach_factor.h b/kern/mach_factor.h new file mode 100644 index 0000000..81624bb --- /dev/null +++ b/kern/mach_factor.h @@ -0,0 +1,32 @@ +/* + * + * Copyright (C) 2006 Free Software Foundation, Inc. + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2, or (at your option) + * any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. + * + * Author: Barry deFreese. + */ +/* + * + */ + +#ifndef _KERN_MACH_FACTOR_H_ +#define _KERN_MACH_FACTOR_H_ + +#include + +extern void compute_mach_factor(); + +#endif /* _KERN_MACH_FACTOR_H_ */ diff --git a/kern/sched_prim.c b/kern/sched_prim.c index 37f6291..69888e8 100644 --- a/kern/sched_prim.c +++ b/kern/sched_prim.c @@ -39,6 +39,7 @@ #include #include #include +#include #include #include #include diff --git a/kern/thread.c b/kern/thread.c index c90acda..8c08dc4 100644 --- a/kern/thread.c +++ b/kern/thread.c @@ -57,6 +57,7 @@ #include #include #include /* for splsched */ +#include #include /* for MACHINE_STACK */ thread_t active_threads[NCPUS]; -- cgit v1.2.3