Instalação do ambiente de simulação
Lista de arquivos
akaroa-2.7.9.tar.gz CERTI-3.4.1-Source.tar.gz MiXiM-2.1.tar.gz omnetpp-4.1-src.tgz sc_lp.tar.gz sim_package_fernando.zip systemc-2.2.0.tgz
OMNet
Não é possível a instalação em CentOS 5.8 porque o Eclipse provoca a manifestação de um bug da JVM (tanto 1.6 como 1.7 da Oracle). No CentOS 6 32 bits nativo, este mesmo bug não se manifesta. No CentOS 6 virtualizado de um jeito, tem problemas, a cada vez que lançar pode ser um difierente. No CentOS virtualizado por Virtualbox (?) funciona.
OMNet++ 4.1 funciona no CentOS nativo e no CentOS virtualizado por Virtualbox.
OMNet++ 4.1 deve ser usado, não 4.2
O OMNet++ Install Guide Version 4.2 que se encontra no subdiretorio doc está um pouco incompleto. Seguem infromações adicionais:
Prerequisite Packages
É precsio do repositório EPEL.
yum install --disablerepo=rpmforge make cmake gcc gcc-c++ bison flex perl \ tcl-devel tk-devel blt-devel libxml2-devel zlib-devel \ java-1.6.0-openjdk doxygen openmpi-devel libpcap-devel
in the file configure.user
, put the following 2 lines:
MPI_CFLAGS="-I/usr/include/openmpi-i386" MPI_LIBS=" -pthread -m32 -L/usr/lib/openmpi/lib -lmpi_cxx -lmpi -ldl"
type:
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/lib/openmpi/lib
MiXiM
do not unpack .tar.gz and use http://sourceforge.net/apps/trac/mixim/wiki/Installation
CERTI
type:
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/lib
cmake -DCERTI_USE_NULL_PRIME_MESSAGE_PROTOCOL=1 ../CERTI-3.4.1-Source
make
sudo make install
SystemC
use http://llrforge.in2p3.fr/svn/cms/tcc48_firmware/trunk/routing/README.systemc
O comando ../configure --prefix=/usr/local/systemc-2.2.0
tem que ser dado como root e o diretório precisa existir antes.
para compilar o exemplo simple_fifo use o comando:
g++ -I/usr/local/systemc-2.2.0/include simple_fifo.cpp -o simple_fifo -L/usr/local/systemc-2.2.0/lib-linux -lsystemc
Observe que a sequencia dos argumentos do comando g++
é importante.
SystemC-LP
use http://llrforge.in2p3.fr/svn/cms/tcc48_firmware/trunk/routing/README.systemc
e faça as seguintes modificações:
file | line | new content |
---|---|---|
src/sysc/kernel/sc_simcontext.h | 107 | #include <fstream> |
src/sysc/kernel/sc_simcontext.h | 404 | std::ofstream fout; |
src/sysc/communication/sc_fifo.h | 72 | #include "sysc/kerne/sc_thread_process.h" |
src/sysc/communication/sc_fifo.h | 73 | #include "sysc/kernel/sc_time.h" |
O comando ../configure --prefix=/usr/local/systemc-lp-2.2.0
tem que ser dado como root e o diretório precisa existir antes.
depois do make install
dê o comando:
cp ../src/sysc/kernel/sc_thread_process.h /usr/local/systemc-lp-2.2.0/include/sysc/kernel/
para compilar o exemplo simple_fifo use o comando:
g++ -I/usr/local/systemc-lp-2.2.0/include simple_fifo.cpp -o simple_fifo -L/usr/local/systemc-lp-2.2.0/lib-linux -lsystemc
Observe que a sequencia dos argumentos do comando g++
é importante.
A Cosimulação de Christoph
The Folders:
- OMNET_Model contains the network model
- SystemC_Model contains the system model
- Simulation_OMNET contains some configuration files
Steps to start the simulation:
1) Compile SystemC model (you need to link with the SystemC library as well as Certi)
2) Compile Omnet model in the Omnet IDE (also link with the Certi library)
- import MiXiM in the workspace
- create a new MixiM project called MyNetwork
- import all files except Makefile and hidden files from directory
OMNET_Model
into the new Project - OMNeT++ -> Makemake -> Options... -> Link --> More --> +
- Proect -> Clean
- Build All
see Rothś email