Preview

Труды НИИСИ

Расширенный поиск

Визуализация алгоритмов реализации взаимоисключений средствами пиктограммной среды программирования

Аннотация

Курсы по информатике и информационно-коммуникационным технологиям могут включать широкий набор тем от основ программирования и элементарных знаний об устройстве компьютеров до теории формальных грамматик, языков искусственного интеллекта, операционных систем, 3D-графики и т.п. Основную сложность при этом составляет математическая компонента курсов, что требует соответствующей подготовки слушателей. Однако, и в программировании есть темы, сложные для понимания студентами даже с глубокими академическими знаниями. Одной из таких тем является параллельное программирование, когда с одной стороны требуется изучить и написать учебные высокоэффективные алгоритмы решения задач для выполнения одновременных вычислений на различных ЭВМ или процессорах, с другой стороны, что не менее сложно для понимания - обеспечить параллельную работу различных частей программы с разделяемым доступом к общим данным. Освоение азов параллельного программирования усложняется отсутствием адекватной визуализации параллельной работы процессов на компьютере. Педагогам остается иллюстрировать тему описывая знакомые студентам ситуации из реального мира, например, задачу одновременного проезда четырех автомобилей через нерегулируемый перекресток. С другой стороны, современные тенденции требует понижения возраста начала знакомства растущего ребенка с элементами программирования и алгоритмизации. Дошкольники, дети четвертого года жизни, с успехом осваивают в игре основные понятия последовательного программирования. используя программно-управляемых роботов и их виртуальных двойников в цифровой образовательной среде ПиктоМир. Та же ЦОС ПиктоМир используется для пропедевтики программирования при преподавании для любого возраста, включая студентов университетов. ПиктоМир обладает не только простотой в освоении, но допускает использование в заданиях одновременно нескольких исполнителей-роботов, каждый из которых действует по собственной программе. Наглядность процесса выполнения программ в Пикто-Мире привела авторов к мысли использовать ЦОС ПиктоМир для демонстрации работы классических алгоритмов взаимоисключений в курсах по параллельному программированию. Опыт авторов показал высокую эффективность подобного подхода, что позволило студентам за короткий срок понять проблему и успешно решить все задачи темы. Указанный подход апробировался в курсах Операционные системы (ИИС ГУУ) и Алгоритмы и структуры данных (Институт Детства МПГУ).

Об авторах

И. Н. Грибанова
ФГУ ФНЦ НИИСИ РАН
Россия

Москва



А. C. Караваева
ФГУ ФНЦ НИИСИ РАН
Россия

Москва



А. А. Леонов
ФГУ ФНЦ НИИСИ РАН
Россия

Москва



А. Г. Леонов
ФГУ ФНЦ НИИСИ РАН; МГУ им. М. В. Ломоносова; МПГУ; Государственный университет управления
Россия

Москва



Д. В. Мащенко
ФГУ ФНЦ НИИСИ РАН
Россия

Москва



В. A. Оганисян
ФГУ ФНЦ НИИСИ РАН
Россия

Москва



Список литературы

1. Э. Дейкстра. Взаимодействие последовательных процессов // Языки программирования / Ред. Ф. Женуи, пер. с англ. В.П. Кузнецова, под ред. В.М. Курочкина. — М. : Мир, 1972. — С. 9—87.

2. E. W. Dijkstra. Solution of a problem in concurrent programming control. Communications of the ACM, 8(9):569, 1965.

3. Taubenfeld, G. Concurrent Programming, Mutual Exclusion. In: Kao, MY. (eds) Encyclopedia of Algorithms. Springer, New York, 2016. L. Lamport. A new solution of Dijkstra’s concurrent programming problem. Communications of the ACM, 17(8):453–455, August 1974.

4. L. Lamport. The mutual exclusion problem: Part II – statement and solutions. Journal of the ACM, 33:327–348, 1986.

5. L. Lamport. A bug in the Bakery algorithm. Technical Report CA–7704–0611, Massachusette computer associates, inc., April 1977.

6. U. Abraham. Bakery algorithms. In Proc. of the Concurrency, Specification and Programming Work-shop, pages 7–40, 1993.

7. Taubenfeld, G. The Black-White Bakery Algorithm and Related Bounded-Space, Adaptive, Local-Spinning and FIFO Algorithms. In: Guerraoui, R. (eds) Distributed Computing. DISC 2004. Lecture Notes in Computer Science, vol 3274. Springer, Berlin, Heidelberg, 2004.

8. E.W. Dijkstra. Cooperating Sequential Processes in Programming Languages. Ed. F. Genuys. — NY: Academic Press, New York, 1968.

9. Леонов А.Г., Первин Ю.А., Зайдельман Я.Н. Программные исполнители в цифровых образовательных средах «ПиктоМир», «Роботландия» и «КуМир». Информатика в школе. 2019;(9):54-61.

10. А. Г. Леонов. Параллельное программирование // Энциклопедия для детей. — Т. 22 из Информатика. — Аванта+ Москва, 2003. — С. 140–145.

11. Framework Qt. Use Qt's libraries and APIs to develop software with native C++ performance for mobile, desktop, and embedded systems. https://qt.io/ (дата обращения 01.11.2022)

12. Стартовая страница проекта «ПиктоМир» на сайте ФГУ ФНЦ НИИСИ РАН. URL: https://www.niisi.ru/piktomir/ (дата обращения 01.11.2022)

13. V. B. Betelin, A. G. Kushnirenko, A. G. Leonov, K. A.Mashchenko, Basic Programming Concepts as Explained for Preschoolers, International Journal of Education and Information Technologies (NAUN), Volume 15 (2021): 245-255.

14. N.Besshaposhnikov, A.Kushnirenko, and A.Leonov. Piktomir: how and why do we teach textless programming for preschoolers, first graders and students of pedagogical universities. CEE-SECR '17: Proceedings of the 13th Central & Eastern European Software Engineering Conference in Russia, October 2017. No. 21. P. 1–7. 2017


Рецензия

Для цитирования:


Грибанова И.Н., Караваева А.C., Леонов А.А., Леонов А.Г., Мащенко Д.В., Оганисян В.A. Визуализация алгоритмов реализации взаимоисключений средствами пиктограммной среды программирования. Труды НИИСИ. 2022;12(3):39-52.

For citation:


Gribanova I.N., Karavaeva A.C., Leonov A.A., Leonov A.G., Mashchenko K.A., Oganisyan V.A. Visualization of Mutual Exclusion Algorithms by Means of a Pictogram Programming Environment. SRISA Proceedings. 2022;12(3):39-52. (In Russ.)

Просмотров: 14


Creative Commons License
Контент доступен под лицензией Creative Commons Attribution 4.0 License.


ISSN 2225-7349 (Print)
ISSN 3033-6422 (Online)