mirror of
https://github.com/nasa/trick.git
synced 2024-12-27 16:38:52 +00:00
19025d77ad
Reorganized. Created a new top level include directory that will hold all of Trick's header files. Moved all of the Trick headers to this directory. Created a libexec directory that holds all of the executables that users don't need to execute directly. Changed all of the executables remaining in bin to start with "trick-". In the sim_services directories changed all source files to find the Trick headers in their new location. Since all of the include files are gone in sim_services, removed the src directories as well, moving all of the source files up a level. Moved the makefiles, docs, man, and other architecture independent files into a top level share directory. Renamed lib_${TRICK_HOST_CPU} to lib64 or lib depending on the platform we're currently on. refs #63
33 lines
874 B
C++
33 lines
874 B
C++
|
|
#include <iostream>
|
|
#include <sstream>
|
|
#include <sys/syscall.h>
|
|
|
|
#include "trick/Executive.hh"
|
|
|
|
int Trick::Executive::create_threads() {
|
|
|
|
unsigned int kk ;
|
|
|
|
/** @par Detailed Design */
|
|
|
|
/** @li Start up enough threads to handle the jobs specified in the S_define */
|
|
for ( kk = 1 ; kk < threads.size() ; kk++ ) {
|
|
// if this is a restart, thread may have already been created
|
|
if (threads[kk]->get_pthread_id() == 0) {
|
|
threads[kk]->create_thread() ;
|
|
}
|
|
// set the initial time of each thread to the main thread time.
|
|
threads[kk]->curr_time_tics = time_tics ;
|
|
}
|
|
|
|
/** @li Set the priority and CPU affinity for the main thread. */
|
|
threads[0]->set_pthread_id(pthread_self());
|
|
threads[0]->set_pid();
|
|
threads[0]->execute_priority() ;
|
|
threads[0]->execute_cpu_affinity() ;
|
|
|
|
return(0) ;
|
|
|
|
}
|