Herramienta Web Ligera para La Programación en C-Concurrente

Pablo Basanta Val, Marisol García Valls, Pablo López Anastasio

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

Texto completo:

PDF

Referencias

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, P. & Garcia-Valls, M. 2013, "A Distributed Real-Time Javacentric Architecture for Industrial Systems", Industrial Informatics, IEEE Transactions on, vol. PP, no. 99, pp. 1-1.

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, B. & Sifakis, J. 2005, Embedded systems design: the ARTIST roadmap for research and development, Springer, Verlag, NJ, USA.

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, P.A.S. 2003, POSIX Realtime and Embedded application Support, IEEE Standard for Information Technology.

Crenshaw, T.L. 2013, "Using Robots and Contract Learning to Teach CyberPhysical Systems to Undergraduates", IEEE Trans.Education, vol. 56, no. 1, pp. 116-120.

Cuevas, C., Barros, L., Martínez, P.L. & Drake, J.M. 2013, "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, vol. 10, no. 2, pp. 216-227.

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, M. & Basanta-Val, P. 2012, "Usage of DDS Data-Centric Middleware for Remote Monitoring and Control Laboratories", Industrial Informatics, IEEE Transactions on, vol. PP, no. 99, pp. 1.

Hamblen, J.O. & Bekkum, G.M.E.v. 2013, "An Embedded Systems Laboratory to Support Rapid Prototyping of Robotics and the Internet of Things", IEEE Trans.Education, vol. 56, no. 1, pp. 121-128.

Havelund, K. & Pressburger, T. 2000, "Model checking Java programs using Java PathFinder", International Journal on Software Tools for Technology Transfer (STTT), vol. 2, no. 4, pp. 366-381.

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, 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, S.H. & Jeon, J.W. 2009, "Introduction for Freshmen to Embedded Systems Using LEGO Mindstorms", Education, IEEE Transactions on, vol. 52, no. 1, pp. 99.

Lawrence Livermore National Laboratory, POSIX Threads Programming Exercise [2012, 8].

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, P.J.M., Molina, M.F., Organero, M.M. & Kloos, C.D. 2012, "An adaptive and innovative question-driven competition-based intelligent tutoring system for learning", Expert Syst.Appl., vol. 39, no. 8, pp. 6932.

Monzón, A., Fernández, J.L. & de la Puente, J.A. 2012, "Application of Deadlock Risk Evaluation of Architectural Models", Software: Practice and Experience, vol. 42, no. 9, pp. 1137-1163.

Nethercote, N. & Seward, J. 2007, "Valgrind: a framework for heavyweight dynamic binary instrumentation", SIGPLAN Not., vol. 42, no. 6, pp. 89- 100.

Pardo, A. & Kloos, C.D. 2011, "SubCollaboration: large-scale group management in collaborative learning", Softw.Pract.Exper., vol. 41, no. 4, pp. 449-465.

Pinto, M., Moreira, A.P. & Matos, A. 2012, "Localization of Mobile Robots Using an Extended Kalman Filter in a LEGO NXT", Education, IEEE Transactions on, vol. 55, no. 1, pp. 135.

Rodriguez-Andina, J.J. & Gomes, L. 2013, "Guest Editorial Special Section on Information Technologies Within Engineering Education", Industrial Informatics, IEEE Transactions on, vol. 9, no. 1, pp. 546.

Sáez, S. & Crespo, A. 2013, "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, vol. 10, no. 2, pp. 197-203.

Salido, J. & Lillo, A. Déniz Suárez, O., Bueno, G. 2011, "CTRWeb: Una Herramienta de Programación para Telecontrol de Sistemas Físicos Educativos", Revista iberoamericana de automática e informática industrial, vol. 8, no. 1, pp. 89-99.

Santana, I., Ferre, M., Izaguirre, E., Aracil, R. & Hernandez, L. 2013, "Remote Laboratories for Education and Research Purposes in Automatic Control Systems", Industrial Informatics, IEEE Transactions on, vol. 9, no. 1, pp. 547.

Savage, S., Burrows, M., Nelson, G., Sobalvarro, P. & Anderson, T. 1997, "Eraser: a dynamic data race detector for multithreaded programs", ACM Trans.Comput.Syst., vol. 15, no. 4, pp. 391-411.

Serebryany, K. & Iskhodzhanov, T. 2009, "ThreadSanitizer: data race detection in practice", Proceedings of the Workshop on Binary Instrumentation and ApplicationsACM, pp. 62.

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, J. 2011, "A vision for computer science — the system perspective", Central European Journal of Computer Science, vol. 1, no. 1, pp. 108-116.

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, 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.

Abstract Views

778
Metrics Loading ...

Metrics powered by PLOS ALM




Creative Commons License

Esta revista se publica bajo una Licencia Creative Commons Attribution-NonCommercial-CompartirIgual 4.0 International (CC BY-NC-SA 4.0)

Universitat Politècnica de València     https://doi.org/10.4995/riai

e-ISSN: 1697-7920     ISSN: 1697-7912