Статьи

Васильєв В.А., Калмикова М.А. Про класифікацію комп'ютерних програм

Васильєв В.А.1, Калмикова М.А.1
1Пензенскій державний університет

Бібліографічна посилання на цю статтю:
Васильєв В.А., Калмикова М.А. Про класифікацію комп'ютерних програм // Сучасні наукові дослідження та інновації. 2013. № 2 [Електронний ресурс]. URL: http://web.snauka.ru/issues/2013/02/20478 (дата звернення: 25.03.2019).

C розвитком комп'ютерних технологій, стрімко зростає кількість всіляких комп'ютерних програм, що мають різне призначення і застосування. Чи не фахівцеві в області обчислювальної техніки і програмування складно уявити роль і місце кожного програмного продукту у всьому різноманітті існуючих комп'ютерних програм, а також зробити вибір кращої програми для того чи іншого завдання. У зв'язку з цим, науковий і практичний інтерес представляє загальна класифікація комп'ютерних програм.

Програмні продукти можна класифікувати за різними ознаками. Основною ознакою, за яким зазвичай класифікують програмні продукти, є їх призначення. Так, комп'ютерні програми поділяють на системні, інструментальні та прикладні [1 - 6].

Системні програми - це комплекс програм, які здійснюють управління внутрішніми компонентами комп'ютера і забезпечує їх взаємодію з прикладними програмами. До системних програм (див. Рис. 1) відносяться: операційні системи [2 -8], драйвери [4, 9], програмні оболонки [2], утиліти [7].

Операційна система - це комплекс взаємопов'язаних системних програм, контролюючий використання і розподіл ресурсів обчислювальної системи і організуючий взаємодія користувача з комп'ютером. Залежно від кількості одночасно оброблюваних завдань і числа користувачів, розрізняють чотири основні класи операційних систем: однопользовательские однозадачні - підтримують одну клавіатуру і можуть працювати тільки з однією (в даний момент) завданням; однопользовательские однозадачні з фонової печаткою - дозволяють крім основного завдання запускати одну додаткову задачу, орієнтовану на висновок інформації на друк; однопользовательские багатозадачні - забезпечують одному користувачеві паралельну обробку декількох завдань; розраховані на багато користувачів багатозадачні - дозволяють на одному комп'ютері запускати кілька завдань кількома користувачами. Відомі операційні системи: MS - DOS, Windows NT, Windows 95, Windows 98, Windows 2000 , Windows Me, Windows XP, Windows Vista, Windows 7, Windows 8, Linux і ін.

Драйвери - програми розширюють можливості операційної системи з управління пристроями введення-виведення, оперативною пам'яттю і т.д. За допомогою драйверів можливе підключення до комп'ютера нових пристроїв або нестандартне використання наявних (драйвери клавіатури, принтера, видеоконтроллера і ін.). Драйвери пристроїв можна розділити на два основних види: для користувача режиму і режиму ядра (див. Рис. 1). Драйвери для користувача режиму діляться на драйвери віртуальних пристроїв, що використовуються для підтримки програм (MS-DOS), і драйвери принтерів. Драйвери режиму ядра поділяються на драйвери файлової системи (реалізують введення / виведення на локальні і мережеві диски), драйвери потокових пристроїв (реалізують введення / виведення відео та звуку), драйвери відеоадаптерів (реалізують графічні операції), WDM -драйвери (призначені в загальному для розширення стандартних можливостей основного драйвера) .Також, драйвери поділяють на однорівневі і багаторівневі. Більшість драйверів, які керують фізичними пристроями, є багаторівневими. Програми оболонки - програми, створені для спрощення роботи зі складними програмними системами. Оболонки надають користувачеві зручний доступ до файлів і великі сервісні послуги. Прикладами програм оболонок є: Norton Commander, Total Commander, Volkov Commander, FAR Manager і т.п. Утиліти - допоміжні комп'ютерні програми, що розширюють і доповнюють відповідні можливості операційної системи. Їх поділяють на антивірусні програми [3, 10], програми архіватори [3, 9], програми русифікатори, програми для оптимізації дисків. Антивірусні програми призначені для запобігання зараження комп'ютерними вірусами і ліквідації наслідків зараження вірусами. Розрізняють такі види антивірусних програм: детектори - сканують файли для пошуку відомих вірусів, що відповідають визначенню в словнику вірусів; доктора - знаходять і видаляють заражені вірусом файли; ревізори - запам'ятовують початковий стан програм, каталогів і системних областей, а потім періодично порівнюють поточний стан з вихідним. Представники антивірусного сімейства програм - Microsoft Securit y Essentials, Kaspersky Antivirus, DrWeb, Norton Antivirus. Програми-пакувальники (архіватори), дозволяють стискати інформацію на дисках, а також об'єднувати копії декількох файлів в один архівний файл, для зручного зберігання інформації. Представники даних програм - WinZip і WinRar. Програми для оптимізації дисків, створення резервних копій інформації (наприклад, APBackUp, Acronis True Image) - дозволяють періодично копіювати інформацію, що знаходиться на жорсткому диску комп'ютера, на додаткові носії. Інструментальні програми - програми, які використовуються в ході розробки, коригування або розвитку інших прикладних або системних програм. До інструментальних програм (див. Рис. 2) можна віднести транслятори, редактори текстів програм, допоміжні програми, бібліотеки підпрограм [3]. Транслятори реалізуються у вигляді компіляторів або інтерпретаторів, виконують перетворення з однієї мови програмування на іншу [3, 11]. Компілятор читає всю програму цілком, робить її переклад і створює закінчений варіант програми на машинній мові, який потім і виконується. Інтерпретатор перекладає і виконує програму рядок за рядком. Редактори забезпечують редагування текстів програм і колірне виділення на екрані синтаксичних конструкцій мови програмування. Допоміжні програми - це отладчики, програми для отримання перехресних посилань і т. П. Бібліотеки підпрограм містять заздалегідь підготовлені підпрограми, які можуть використовувати програмісти. Велика кількість програм написано з використанням мов програмування: Java, С, C ++, PHP, MathLab, Visual Basic / Basic, FoxPro, Assembler, Pascal.

Прикладні програми - сприяють вирішенню будь-якої задачі в межах даної проблемної області та забезпечують виконання необхідних користувачам робіт: редагування текстів, малювання картинок, обробка інформаційних масивів і т. Д. [2, 3, 7, 12]. Їх поділяють на програми загального призначення, методологія-орієнтовані, проблемно-орієнтовані і професійного рівня (див. Рис. 3).

Програми загального призначення - програми, орієнтовані на широке коло користувачів в різних проблемних областях, що дозволяють автоматизувати найбільш часто використовувані функції і роботи. Це графічні (Adobe Photoshop, Corel Draw) і текстові редактори (Microsoft Word, Wordpad, Microsoft Publisher, Corel Ventua і Adobe ageMaker), табличні процесори (Microsoft Excel - для роботи з електронними таблицями), видавничі системи (PageMaker, QuarkXPress, Scribus і ін.), програми підготовки презентацій (Microsoft PowerPoint, Microsoft FrontPage, Activstudio, MimioStudio і ін.), мультимедійні (Media Player Codek Pack, K - Lite Codek Pack, Quick Time Player і ін.), СУБД - системи управління базами даних ( Microsoft Access, Clipper, Paradox, FoxPro), комп'ютерні ігри. Останні класифікують за жанрами [12]: Action: 3 D - шутери, «дії-стрілялки», файтинг, аркада; сімулятори- технічні, аркадні, спортивні, економічні; стратегії- стратегії по схемі ігрового процесу, за масштабом ігрового процесу; пригоди, адвенчури або квести (текстові, графічні), головоломки, екшн-адвенчури; рольові ігри, головоломки, логічні, пазли, традиційні та настільні, текстові.

Методо-орієнтовані програми призначені для вирішення завдань числового аналізу, статистичних завдань. До них відносяться програми: математичних методів (для вирішення диференціальних рівнянь і імітаційного моделювання, наприклад, Mathematica, SMathStudio, EquPixy, Matrix і ін.), Статистики (наприклад, Calc 3 D Pro), економічного призначення (бухгалтерські - 1С8, Галактика, Парус і т. п., фінансового аналізу - Project Expert, Pick Soft, Budget Manager і ін., правові бази даних - Гарант, Консультант, Кодекс і т.п.), навчальні програми (наприклад, RocketReader), комп'ютерні віруси.

Комп'ютерні віруси [3, 10, 13] можна умовно класифікувати за такими ознаками: по природному середовищі вірусу (мережеві, файлові, завантажувальні);  за способом зараження середовища проживання;  по деструктивних можливостях;  за особливостями алгоритму вірусу Комп'ютерні віруси [3, 10, 13] можна умовно класифікувати за такими ознаками: по природному середовищі вірусу (мережеві, файлові, завантажувальні); за способом зараження середовища проживання; по деструктивних можливостях; за особливостями алгоритму вірусу. За способом зараження середовища перебування віруси бувають резидентні (при інфікуванні комп'ютера знаходяться в оперативній пам'яті і є активними аж до його виключення) і нерезидентні (не заражають пам'ять комп'ютера і є активними обмежений час). За деструктивним можливостям їх поділяють на дуже небезпечні (знищують дані на комп'ютері), небезпечні (призводять до збою в роботі комп'ютера), безпечні (зменшують пам'ять і створюють різні ефекти) і нешкідливі (зменшують вільну пам'ять). За особливостями алгоритму вірусу розрізняють програми: троянські програми, віруси-черв'яки, компаньйон-віруси, паразитичні, стелс-вірус, поліморфік-віруси і макровіруси. Троянські програми імітують інший додаток (програму інсталяції, текстовий редактор, гру і т. П.), При цьому виконують несанкціоновані дії: збір і пересилку інформації третім особам, її модифікацію або видалення, передає управління комп'ютером віддаленого пользователю.Віруси-черви проникають в пам'ять комп'ютера з комп'ютерної мережі, обчислюють мережні адреси інших комп'ютерів і розсилають по ним свої копіі.Компаньон-віруси створюють файл-двійник, який отримує управління при запуску зараженого файлу. Паразитичні віруси (крім хробаків і компаньйонів) при поширенні своїх копій обов'язково змінюють вміст дискових секторів або файлів. Стелс-вірус повністю або частково приховує свою присутність в системі шляхом перехоплення звернення операційної системи до уражених файлів, «підставляючи» замість себе незаражені ділянки. Полиморфик-віруси - не мають постійного ділянки коду і є важко обнаружіми. Макровіруси - пишуться на WordBasic (не в машинних кодах), живуть в документах Word, записують себе в Normal.dot.

Проблемно-орієнтовані комп'ютерні програми - програми для вирішення завдань планування, оперативного управління, матеріально-технічного постачання і т.д. [3]. Вони включають в себе програми (рис. 3): комплексні для підприємств, комплексні для не промисловою сфери і для окремих предметних областей. Програми для промислової сфери складають технологічну основу для планування виробництва, контролю за ходом виконання плану робіт, забезпечують рух фінансових, матеріальних і трудових ресурсів, контролюють сервісне обслуговування, розподіл готової продукції і маркетинг (ERP-системи: SAP, R / 3, Axapta, MFG Pro, Scala, BAAN і ін.). Програми непромислової сфери призначені для автоматизації діяльності фірм, які пов'язані з матеріальним виробництвом (банки, біржа, торгівля), (наприклад IBIS AS, PROFILE, Midas ABS, FMS - Financial Management System, Диасофт-БАНК і ін.). Програми окремих предметних областей є одним з основних напрямків розвитку і створення програмних продуктів, наприклад для бухгалтерського обліку, фінансового менеджменту, правових систем і т.д. (Інфобухгалтер, Моноліт-Інфо, і ін.).

Програми професійного рівня [3, 14] підрозділяються на програми: автоматизованого робочого місця (АРМ), системи автоматизованого проектування (САПР), автоматизовані системи наукових досліджень (АСНИ), автоматизовані системи управління (АСУ).

Програми АРМ - допомагають вирішувати завдання в рамках діяльності цього фахівця (наприклад, АРМ диспетчера, АРМ конструктора, АРМ технолога і т. П.). Програмні пакети САПР призначені для проектування та розробки об'єктів виробництва і будівництва, і для оформлення конструкторської та технологічної документації. CAD-системи або комп'ютерна підтримка проектування - призначені для вирішення конструкторських задач і оформлення конструкторської документації, моделювання тривимірної об'ємної конструкції деталі та оформлення креслень і текстової конструкторської документації (P-CAD, OrCAD, AutoCAD, CADdy, CADMECH Desktop, OmniCAD, Компас-Графік, CAD SolidMaster і ін.). CAM-системи або комп'ютерна підтримка виготовлення - призначені для проектування обробки виробів на верстатах з числовим програмним управлінням і видачі програм для цих верстатів. CAM-системи є системами технологічної підготовки виробництва (наприклад, Mastercam, Edgecam, SolidCAM). САЕ-системи (системи інженерного аналізу) або підтримка інженерних розрахунків, дозволяють вирішувати завдання: розрахунок на міцність, аналіз і моделювання теплових процесів, розрахунки гідравлічних систем і машин, розрахунки процесів лиття (T - Flex, Ansys, Comsol, Nastran, Salome і ін .). АСНИ - програми для автоматизованих систем наукових досліджень на основі отримання і використання моделей досліджуваних об'єктів, явищ і процесів (програми MAPLE, EPICS, TANGO, SCILAB, MATLAB). Програми АСУ - для автоматизованих систем управління, що реалізують сукупність математичних методів з використанням технічних засобів і організаційних комплексів, що забезпечують управління складним об'єктом або процесом, відповідно до вказаної метою.

Таким чином, побудована загальна класифікація комп'ютерних програм, яка дозволяє представити роль і місце різних програмних продуктів у всьому їх різноманітті, а також зорієнтувати у виборі програми для вирішення необхідної задачі. Представлена ​​класифікація комп'ютерних програм не є єдино-можливої.


бібліографічний список
  1. Макарова Н.В., Волков В.Б. Інформатика. Видавництво: Пітер, 2011. - 576 с.
  2. Голіцина О.Л., Попов І.І., Партика Т.Л. Програмне забезпечення. Навчальний посібник. М .: ФОРУМ, 2008. - 448 с.
  3. Могильов А.В., Пак Н.І., Хеннер Є.К. Інформатика. Повна вища освіта відповідного. Видавництво: Академія, 2012 - 848 с.
  4. Воронін А. А., Волков А. В. Інформатика. Класифікація системного програмного забезпечення. Електронний підручник. URL :.
  5. Класифікація програмного забезпечення. Введення в системне програмне забезпечення. Лекції. URL: software / lectures / 845.htm.
  6. Шитов В.Н. Новітній довідник корисних комп'ютерних програм. Видавництво: Будинок Слов'янської книги, 2009. - 466 с.
  7. Соболь Б.В., Галин А.Б., Панов Ю.В., Рашидова Є.В., Садовой М.М. Інформатика. Вид. 3-е, Ростов н / д: Фенікс, 2007. - 446 с.
  8. Сафонов В.О. Основи сучасних операційних систем. Видавництво: БИНОМ. Лабораторія знань, 2011. - 584 с.
  9. Інформатика і програмування. Основи інформатики: підручник для студ. установ вищ. проф. освіти / Н.І. Парфілова, А.В. Пруцков, А.Н. Пилькін, Б.Г. Трусов; під ред. Б.Г. Трусова. - М .: Видавничий центр «Академія», 2012. - 256 с.
  10. Топольський Д.В., Топольська І.Г. Комп'ютерні віруси. Навчальний посібник. - Челябінськ, ЮУрГУ, 2008. - 25 с.
  11. Макарова Н.В., Матвєєв Л.А., Бройдо В.Л., Гаврилова Т.А., Рамін Е.Л. та ін. Інформатика: Підручник. - 3-е перераб. вид. / За ред. Проф. Н.В. Макарової. - М .: Фінанси і статистика, 2006 - 768 с.
  12. Юр'єва Л. М., Больбот Т. Ю. Комп'ютерна залежність: формування, діагностика, корекція і профілактика: Монографія. Видавництво: Пороги, 2006 -196 с.
  13. Гордон Ян. Комп'ютерні віруси без секретів. Видавництво: Новий видавничий будинок, 2004 - 320 с.
  14. Острейковскій В.А. Інформатика. Видавництво: Вища школа, Москва, 2009. - 511 с.
  15. Класифікація комп'ютерних ігор. URL: /text_raznoe_2.html.

Кількість переглядів публікації: Please wait

Всі статті автора «optoopto»

Новости