Preview

Труды Института системного программирования РАН

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

Тестирование операционных систем

https://doi.org/10.15514/ISPRAS-2014-26(1)-3

Полный текст:

Аннотация

Работа операционной системы лежит в основе функционирования любой компьютерной системы. Сбои и ошибки в операционной системе сказываются на работоспособности системы в целом, поэтому к корректности и надёжности операционных систем предъявляются повышенные требования. Верификация и тестирование операционных систем осложняется целым букетом разнообразных обстоятельств — это и зависимость от аппаратуры, и массированный внутренний параллелизм, и традиционное богатство конфигурационных настроек, и вопросы устойчивости к действиям злоумышленников и к сбоям аппаратуры, и продолжительность непрерывного функционирования. В статье рассматриваются все эти особенности, описываются подходы и инструменты тестирования, разработанные в Институте системного программирования РАН, и представляется опыт их применения для тестирования операционной системы Linux, а также ряда операционных систем реального времени.

Об авторах

Е. А. Герлиц
ИСП РАН
Россия


В. В. Кулямин
ИСП РАН
Россия


А. В. Максимов
ИСП РАН
Россия


А. К. Петренко
ИСП РАН
Россия


А. В. Хорошилов
ИСП РАН
Россия


А. В. Цыварев
ИСП РАН
Россия


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

1. В.В. Кулямин, Н.В. Пакулин, О.Л. Петренко, А.А. Сортов, А.В. Хорошилов. Формализация требований на практике. Препринт №13. М.: ИСП РАН, 2006.

2. В.В. Кулямин, А.К. Петренко, В.В. Рубанов, А.В. Хорошилов. Формализация интерфейсных стандартов и автоматическое построение тестов соответствия. «Информационные технологии», №8, 2007, С.1‑8.

3. М.В. Екимов, И.В. Ковернинский, А.В. Хорошилов. “АРМ ПТ: создание системы проектирования тестов для критических систем на основе СПО”. Сборник докладов Всероссийской конференции “Свободное программное обеспечение – 2010”, Санкт-Петербург, 26-27 октября 2010 г.

4. Сайт инструмента Requality, http://forge.ispras.ru/projects/reqdb.

5. Д.Ю. Кичигин. Метод редукции тестового набора для регрессионного интеграционного тестирования. «Программирование», №5, 2009, C.57-69.

6. Alexey Khoroshilov, Vladimir Rubanov, Eugene Shatokhin. «Automated Formal Testing of C API Using T2C Framework». In Proceedings of the Third International Symposium «Leveraging Applications of Formal Methods, Verification and Validation» (ISoLA 2008), Porto Sani, Greece, October 13-15, 2008. pp.56-70. ISBN 978-3-540-88478-1.

7. TETWare User Guide, http://tetworks.opengroup.org/documents/3.7/uguide.pdf.

8. ISO/IEC 23360-1-8:2005, Linux Standard Base (LSB) Core Specification 3.1. Geneve: ISO, 2005.

9. А.В. Хорошилов. Linux Standard Base: история успеха?. Труды Института Системного Программирования РАН, Том 10, 2006. C.29-50.

10. Список ошибок, обнаруженных в ходе тестирования библиотек ОС Linux. http://linuxtesting.org/results/impl_reports.

11. Н.В.Пакулин, А.В.Хорошилов. Разработка формальных моделей и тестирование соответствия для систем с асинхронными интерфейсами и телекоммуникационных протоколов. Программирование, №6, 2007, C.26-55.

12. А.В. Баранцев, И.Б. Бурдонов, А.В. Демаков, С.В. Зеленов, А.С. Косачев, В.В. Кулямин, В.А. Омельченко, Н.В. Пакулин, А.К. Петренко, А.В. Хорошилов. “Подход UniTesK к разработке тестов: достижения и перспективы”. Труды Института системного программирования РАН, №5, 2004. C.121-156.

13. А.В.Хорошилов. Спецификация и тестирование систем с асинхронным интерфейсом. Препринт №12. М.: ИСП РАН, 2006.

14. IEEE 1003.1-2008. Information Technology — Portable Operating System Interface (POSIX). New York: IEEE, 2008.

15. ARINC. ARINC Specification 653P1-3: Avionics Application Software Standard Interface Part 1 - Required Services. Aeronautical Radio INC, Maryland, USA, 2010.

16. Alexey Grinevich, Alexey Khoroshilov, Victor Kuliamin, Denis Markovtsev, Alexander Petrenko, Vladimir Rubanov. “Formal Methods in Industrial Software Standards Enforcement”, PSI 2006, LNCS Vol. 4378, 2006, pp. 446-455.

17. A.Maksimov. Requirements-based conformance testing of ARINC 653 real-time operating systems // Proceedings of the Data Systems In Aerospace (DASIA 2010) conference, 2010, ESA SP-682.

18. Описание возможностей Fault Injection. https://www.kernel.org/doc/Documentation/fault-injection/fault-injection.txt.

19. Eugene Shatokhin. Using Dynamic Analysis To Hunt Down Problems in Kernel Modules. Presentation at LinuxCon Europe 2011, Czech Republic, Prague, 26-28 October 2011.

20. Сайт платформы KEDR. http://linuxtesting.org/kedr.

21. Проект по верификации модулей драйверов файловых систем. http://linuxtesting.org/spruce.

22. V. Kuliamin. Standardization and Testing of Mathematical Functions. // Proc. of PSI’2009, Novosibirsk, Russia, June 2009, LNCS 5947. pp. 257-268, Springer, 2009.

23. Р.С. Зыбин, В.В. Кулямин, А.В. Пономаренко, В.В. Рубанов, Е.С. Чернов. Автоматизация массового создания тестов работоспособности //Программирование, 34(6):64-80, 2008.

24. А.В. Пономаренко, В.В. Рубанов, А.В. Хорошилов. Автоматическая генерация тестов для C/C++ библиотек. Сборник докладов Седьмой конференции разработчиков свободных программ, Переславль, 26-27 июля 2010 г.

25. Сайт API Sanity Autotest. http://forge.ispras.ru/projects/api-sanity-autotest.

26. Инструмент LSB libchk. http://bzr.linuxfoundation.org/loggerhead/lsb/devel/misc-test/files.

27. Описание Android Compatibility Test Suite. http://source.android.com/compatibility.

28. chkshlib, http://osr507doc.sco.com/en/man/html.CP/chkshlib.CP.html.

29. cmpdylib, http://www.opensource.apple.com/source/cctools/cctools-795/man/cmpdylib.1.

30. cmpshlib, sys-admin.net/ebooks/unix3/mac/ch07_01.htm.

31. dpkg-gensymbols, http://man.he.net/man1/dpkg-gensymbols.

32. А. Пономаренко, В. Рубанов, А. Хорошилов. “Система анализа обратной бинарной совместимости библиотек Linux”. Сборник докладов международной конференции “Software Engineering Conference (Russia)”, SEC(R)-2009, сс. 25-31, Москва, 28‑29 октября 2009 г.

33. В.С. Мутилин, Е.М. Новиков, А.В. Хорошилов. “Анализ типовых ошибок в драйверах операционной системы Linux”. Труды Института Системного Программирования, Том 22, 2012, с. 349-374.

34. Сайт инструмента Valgrind. valgrind.org.

35. Описание возможностей Kernel Memory Leak Detector. https://www.kernel.org/doc/Documentation/kmemleak.txt.

36. Описание возможностей Helgrind. http://valgrind.org/docs/manual/hg-manual.html.

37. Konstantin Serebryany, Timur Iskhodzhanov. ThreadSanitizer: data race detection in practice. In Proceedings of the Workshop on Binary Instrumentation and Applications (WBIA '09). ACM, New York, NY, USA, pp.62-71.

38. Сайт проекта Kernel Strider. https://code.google.com/p/kernel-strider/.

39. Сайт проекта Race Hound. http://forge.ispras.ru/projects/race-hound.

40. Сайт проекта Trinity. http://codemonkey.org.uk/projects/trinity/.

41. И.К. Исаев, Д.В. Сидоров, А.Ю. Герасимов, М.К. Ермаков. Avalanche: Применение динамического анализа для автоматического обнаружения ошибок в программах использующих сетевые сокеты. Труды Института Системного Программирования, Том 21, 2011, с. 55-70.

42. Vitaly Chipounov, Volodymyr Kuznetsov, and George Candea. The S2E Platform: Design, Implementation, and Applications. ACM Trans. Comput. Syst. 30, 1, Article 2 (February 2012), pp.1-49.

43. A. Barbalace, A. Lunchetta, G. Manduchi, M. Moro, A. Soppelsa and C. Taliercio, “Performance Comparison of VxWorks, Linux, RTAI and XENOMAI in a Hard Real-time Application”, Proc. of Real-Time Conference 2007 15th IEEE-NPSS, (2007), pp. 1-5.

44. M. Franke, “A Quantitative Comparison of Realtime Linux Solutions”, Chemnitz University of Technology, (2007).

45. M. D. Marieska, A. I. Kistijantoro and M. Subair, “Analysis and Benchmarking Performance of Real Time Patch Linux and Xenomai in Serving a Real Time Application”, Proc. of International Conf. on Electrical Engineering and Informatics, (2011), pp. 1-6.

46. J. H. Koh and B. W. Choi, “Performance Evaluation of Real-time Mechanisms for Real-time Embedded Linux”, J. of Institute of Control, Robotics and Systems (in Korean), vol. 18, no. 4, (2012), pp. 337-342.

47. J. H. Koh and B. W. Choi, “Real-time Performance of Real-time Mechanisms for RTAI and Xenomai in Various Running Conditions”, International Journal of Control and Automation, Vol. 6, No. 1, February, 2013, pp. 235-246.

48. В.В. Кулямин. Комбинаторная генерация программных конфигураций ОС. Труды Института Системного Программирования, Том 23, 2012, с. 359-370.

49. Vladimir Rubanov, Denis Silakov. Certification Infrastructure for the Linux Standard Base (LSB). //Proceedings of the second International Workshop on Foundations and Techniques for Open Source Software Certification (OpenCert 2008). Milan, Italy, 2008. pp. 79-88.


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


Герлиц Е.А., Кулямин В.В., Максимов А.В., Петренко А.К., Хорошилов А.В., Цыварев А.В. Тестирование операционных систем. Труды Института системного программирования РАН. 2014;26(1):73-108. https://doi.org/10.15514/ISPRAS-2014-26(1)-3

For citation:


Gerlits E.A., Kuliamin V.V., Maksimov A.V., Petrenko A.K., Khoroshilov A.V., Tsyvarev A.V. Testing of Operating Systems. Proceedings of the Institute for System Programming of the RAS (Proceedings of ISP RAS). 2014;26(1):73-108. (In Russ.) https://doi.org/10.15514/ISPRAS-2014-26(1)-3

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


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


ISSN 2079-8156 (Print)
ISSN 2220-6426 (Online)