https://github.com/sisoputnfrba/kiss-pruebas
- Verificar que se encuentra seleccionada la opcion "Cable Connected"
Usar el comando ifconfig
Si no se configura una ip local automaticamente usar:
sudo systemctl restart networking
usar comando: python -m SimpleHTTPServer
este comando levanta un server http en la ip que indica ifconfig
y el puerto 8000 por defecto
verificar en que ruta se ejecuta el comando, recomendado moverse a carpeta root
Para comprobar que esta iniciado el server podemos verlo desde un navegador:
Para descargar el archivo de deploy podemos descargarlo desde nuestro "server" utilizando wget
wget 192.168.100.52:8000/tp-2022-1c-AGKLS/deploy/deploy.sh
Como utilizar varios terminales en ubuntu server:
- Guia
https://docs.utnso.com.ar/guias/herramientas/valgrind.html#introduccion
- Video charla
https://www.youtube.com/watch?v=knRei6OBU4Q&t=264s
para ver memory leaks producidos por un programa debemos ejecutar el programa de la siguiente manera:
valgrind ./bin/consola.out
- Algunas opciones por parámetro copadas:
--leak-check=yes
habilita el detector de memory leaks.
--leak-check=full
habilita el detector de memory leaks en full.
--log-file=<nombreArchivo>
crea un log de lo que nos muestra Valgrind por pantalla.
valgrind --leak-check=full --log-file=/home/utnso/valgrind-logs/kernel.log -v ./bin/kernel.out ./exec_conf/kernel.config
- Si no habilitamos la opción
--leak-check
y existen memory leaks en nuestro programa, Valgrind nos dejará un mensaje mágico de éste tipo:Rerun with --leak-check=full to see details of leaked memory.
- definitely lost: muy importante no tener
- indirectly lost: muy importante no tener
- possibly lost: se puede generar, readline genera un poco, tampoco darle mucha bola
- still reacheable: no darle bola
- suppressed: no darle bola
- RaceCondition: posible condicion de carrrera
valgrind --tool=helgrind ./bin/memoria.out
-
CUIDADO que ejecutando con helgrind un programa la herramienta puede salvar y atajar errores como segmentation fault, obviamente no se puede usar en la entrega.
-
Thread #2 was created by 0x10924A: main(ejemplo.c:35) nos indica en que programa y en que linea se creo el hilo
- Possible data race ... Locks held: none: significa sin tener ningun semaforo, tambien nos indica en que linea se genera el problema
- Lock at 0x483CC9C was first observed puede indicar un deadlock y la linea del programa que la genera