Buscar en
Revista Iberoamericana de Automática e Informática Industrial RIAI
Toda la web
Inicio Revista Iberoamericana de Automática e Informática Industrial RIAI Herramienta Web Ligera para La Programación en C-Concurrente
Información de la revista
Vol. 10. Núm. 4.
Páginas 465-476 (Octubre - Diciembre 2013)
Compartir
Compartir
Descargar PDF
Más opciones de artículo
Visitas
3245
Vol. 10. Núm. 4.
Páginas 465-476 (Octubre - Diciembre 2013)
Open Access
Herramienta Web Ligera para La Programación en C-Concurrente
Lightweight Web-Tool for C Concurrent Programming
Visitas
3245
Pablo Basanta-Val
Autor para correspondencia
pbasanta@it.uc3m.es

Autor para correspondencia.
, Marisol García-Valls, Pablo López-Anastasio
Departamento Ingeniería Telemática, Universidad Carlos III de Madrid, Edificio Torres Quevedo, Avda. de la Universidad, 30, 28911 Leganés, Madrid, España
Este artículo ha recibido

Under a Creative Commons license
Información del artículo
Resumen
Texto completo
Bibliografía
Descargar PDF
Estadísticas
Resumen

El uso de herramientas a la hora de enseñar una determinada disciplina aporta múltiples beneficios desde el punto de vista de la actividad docente pues permite enfatizar o ilustrar determinados cuestiones que a veces resultan difíciles de enfatizar sin tal apoyo. Ese es también el caso de las herramientas que permiten detectar si ha habido algún tipo de problema en un programa escrito en C- concurrente. Dichas herramientas ofrecen interfaces que pueden complementar la información dada por un compilador con información adicional sobre diferentes tipos de condiciones de carrera o fugas de memoria que aparecen en el código. El presente trabajo tiene por objetivo ver cómo se ha integrado un núcleo de validación para C ya existente como aplicación web, lo que le permite estar accesible a través de la red. Dicha herramienta ha sido evaluada en un curso de programación ya existente, donde ha mostrado que es capaz aportar información adicional de utilidad para el discente y el docente. También se han realizado una serie de mediciones de rendimiento para establecer los límites operativos de la herramienta diseñada dentro de los límites de una asignatura donde se enseña C concurrente.

Palabras clave:
Herramientas
Informática Industrial
Sistemas Concurrentes
Educación
C.
Abstract

Tools for computer-aided teaching and learning provide multiple benefits from the point of view of teaching because it allows emphasizing or illustrating certain issues that are sometimes difficult to emphasize without such type of support. This is exactly the case for the tools to detect if there is any type of problem in a concurrent-C program. These tools provide interfaces that can complement the information given by a compiler with additional information about different types of race conditions and memory leaks that appear in the code. This article aims to address how to integrate a core validation tools for concurrent-C as a web application, allowing you to be accessible through the Internet. This tool has been evaluated in an existing programming course, which has shown to be able to provide additional information useful to the learner and the teacher. There have also been a number of performance measures to establish operational limits designed tool within a course that teaches concurrent-C programming.

Keywords:
Tools
Industrial Informatics
Concurrent Systems
Education
C.
Referencias
[Alonso et al., 2004]
Alonso, D., Pastor, J. & Álvarez, B. 2004, “Real–Time Teaching with Java: JPR 3” in On the Move to Meaningful Internet Systems 2004: OTM 2004 Workshops, eds. R. Meersman, Z. Tari & A. Corsaro, Springer Berlin Heidelberg,, pp. 246-255.
[Basanta Val and Garcia-Valls, 2013]
Basanta Val, P. & Garcia-Valls, M. 2013, “A Distributed Real-Time Java- centric Architecture for Industrial Systems”, Industrial Informatics, IEEE Transactions on, vol. PP, no. 99, pp. 1-1.
[Basanta-Val et al., 2012]
Basanta-Val .P, García-Valls, M., Estévez-Ayres, I. & Martin-Gutiérrez, M.J. 2012, “Módulo Empresarial para la Validación Formal de Ejercicios aplicado a la Programación Concurrente en Java”, Revista Iberoamericana de Automática e Informática Industrial RIAI, vol. 9, no. 3, pp. 209-299.
[Bouyssounouse and Sifakis, 2005]
Bouyssounouse, B. & Sifakis, J. 2005, Embedded systems design: the ARTIST roadmap for research and development, Springer, Verlag, NJ, USA.
[Caspi et al., 2005]
Caspi, P., Folher, G., Garcia-Valls, M., Kopetz, H., Lakhnech, Y., Laroussinie, F., Lavagno, L., Lipari, G., Maraninchi, F., Peti, P., Puente, J.d.l., Sangiovanni-Vincentelli, A., Scaife, N., Sifakis, J., de Simone, R., Torngren, M., Veríssimo, P., Wellings, A.J., Wilhelm, R., Willemse, T., Yi, W., Almeida, L., Benveniste, A., Bouyssounouse, B., Buttazzo, G., Crnkovic, I., Damm, W. & Engblom, J. 2005, “Guidelines for a graduate curriculum on embedded software and systems”, ACM Transactions on Embedded Computing Systems, vol. 4, no. 3.
[Committee, 2003]
Committee, P.A.S. 2003, POSIX Realtime and Embedded application Support, IEEE Standard for Information Technology.
[Crenshaw, 2013]
T.L. Crenshaw.
Using Robots and Contract Learning to Teach Cyber- Physical Systems to Undergraduates”.
IEEE Trans. Education, 56 (2013), pp. 116-120
[Cuevas et al., 2013]
C. Cuevas, L. Barros, P.L. Martínez, J.M. Drake.
Beneficios que aporta la metodología MDE a los entornos de desarrollo de sistemas de tiempo real.
Revista Iberoamericana de Automática e Informática Industrial RIAI, 10 (2013), pp. 216-227
[Estevez-Avres et al., 2004]
Estevez-Avres, I., Basanta-Val P. & García-Valls, M. 2004, “Docencia de programación concurrente. Experiencias de Laboratorio.”, VII Jornadas de Tiempo Real.
[Garcia-Valls and Basanta-Val, 2012]
M. Garcia-Valls, P. Basanta-Val.
Usage of DDS Data-Centric Middleware for Remote Monitoring and Control Laboratories.
Industrial Informatics, IEEE Transactions on, 99 (2012), pp. 1
[Hamblen et al., 2013]
J.O. Hamblen, G.M.E.v. Bekkum.
An Embedded Systems Laboratory to Support Rapid Prototyping of Robotics and the Internet of Things.
IEEE Trans. Education, 56 (2013), pp. 121-128
[Havelund and Pressburger, 2000]
K. Havelund, T. Pressburger.
Model checking Java programs using Java PathFinder.
International Journal on Software Tools for Technology Transfer (STTT), 2 (2000), pp. 366-381
[Ihantola, 2006]
Ihantola, P. 2006, “Test data generation for programming exercises with symbolic execution in Java PathFinder”, Proceedings of the 6th Baltic Sea conference on Computing education research: Koli Calling 2006ACM, New York, NY, USA, pp. 87.
[Jannesari et al., 2009]
Jannesari, A., Kaibin Bao, Pankratius, V. & Tichy, W.F. 2009, “Helgrind+: An efficient dynamic race detector”, Parallel Distributed Processing, 2009. IPDPS 2009. IEEE International Symposium on, may, pp. 1.
[Kim and Jeon, 2009]
S.H. Kim, J.W. Jeon.
Introduction for Freshmen to Embedded Systems Using LEGO Mindstorms.
Education IEEE Transactions on, 52 (2009), pp. 99
[Lawrence, 2012]
Lawrence Livermore National Laboratory, POSIX Threads Programming Exercise [2012,8].
[Lee et al., 2011]
Lee, J.W., Kester, M.S. & Schulzrinne, H. 2011, “Follow the river and you will find the C”, Proceedings of the 42nd ACM technical symposium on Computer science educationACM, New York, NY, USA, pp. 411.
[Merino et al., 2012]
P.J.M. Merino, M.F. Molina, M.M. Organero, C.D. Kloos.
An adaptive and innovative question-driven competition-based intelligent tutoring system for learning.
Expert Syst. Appl., 39 (2012), pp. 6932
[Monzón et al., 2012]
A. Monzón, J.L. Fernández, J.A. de la Puente.
Application of Deadlock Risk Evaluation of Architectural Models”.
Software: Practice and Experience, 42 (2012), pp. 1137-1163
[Nethercote and Seward, 2007]
N. Nethercote, J. Seward.
Valgrind: a framework for heavyweight dynamic binary instrumentation.
SIGPLAN Not., 42 (2007), pp. 89-100
[Pardo and Kloos, 2011]
A. Pardo, C.D. Kloos.
SubCollaboration: large-scale group management in collaborative learning.
Softw. Pract. Exper., 41 (2011), pp. 449-465
[Pinto et al., 2012]
M. Pinto, A.P. Moreira, A. Matos.
Localization of Mobile Robots Using an Extended Kalman Filter in a LEGO NXT”, Education.
IEEE Transactions on, 55 (2012), pp. 135
[Rodriguez-Andina and Gomes, 2013]
J.J. Rodriguez-Andina, L. Gomes.
Guest Editorial Special Section on Information Technologies Within Engineering Education”, Industrial Informatics.
IEEE Transactions on, 9 (2013), pp. 546
[Sáez and Crespo, 2013]
S. Sáez, A. Crespo.
Mejora de los Test de Planificabilidad para Asignación Incremental de Tareas en Sistemas Multiprocesadores de Tiempo Real.
Revista Iberoamericana de Automática e Informática Industrial RIAI, 10 (2013), pp. 197-203
[Salido et al., 2011]
J. Salido, A. Lillo, O. Déniz Suárez, G. Bueno.
CTRWeb: Una Herramienta de Programación para Telecontrol de Sistemas Físicos Educativos.
Revista iberoamericana de automática e informática industrial, 8 (2011), pp. 89-99
[Santana et al., 2013]
I. Santana, M. Ferre, E. Izaguirre, R. Aracil, L. Hernandez.
Remote Laboratories for Education and Research Purposes in Automatic Control Systems”, Industrial Informatics.
IEEE Transactions on, 9 (2013), pp. 547
[Savage et al., 1997]
S. Savage, M. Burrows, G. Nelson, P. Sobalvarro, T. Anderson.
Eraser: a dynamic data race detector for multithreaded programs.
ACM Trans. Comput. Syst., 15 (1997), pp. 391-411
[Serebryany and Iskhodzhanov, 2009]
K. Serebryany, T. Iskhodzhanov.
ThreadSanitizer: data race detection in practice.
Proceedings of the Workshop on Binary Instrumentation and ApplicationsACM, (2009), pp. p62
[Sierra et al., 2012]
Sierra, A.J., Ariza, T., Fernandez, F.J. & Madinabeitia, G. 2012, “TVSP: A Tool for Validation Software Projects in programming labs”, Global Engineering Education Conference (EDUCON), 2012 IEEE, april, pp. 1.
[Sifakis, 2011]
J. Sifakis.
A vision for computer science — the system perspective.
Central European Journal of Computer Science, 1 (2011), pp. 108-116
[Sun and Microsystems, 2005]
Sun Microsystems. 2005, Online [2005] at http://jcp.org/aboutJava/communityprocess/pr/jsr220/index.html-last update, Enterprise Java Beans [Homepage of SUN],.[Online].
[Weber and Rehkopf, 2009]
Weber, J. & Rehkopf, A. 2009, “A Java-based remote GUI concept for distributed automation systems”, Emerging Technologies Factory Automation, 2009. ETFA 2009. IEEE Conference on, sept., pp. 1.
Copyright © 2012. EA
Opciones de artículo
Herramientas