Архітектура та програмне забезпечення комп’ютерів
На підставі цих приниців можна стверджувати, що сучасний комп'ютер - технічний пристрій, який після введення в пам'ять початкових даних у вигляді цифрових кодів і програми їх обробки, вираженої також цифровими кодами, здатний автоматично здійснити обчислювальний процес, заданий програмою, і видати готові результати розв'язання задачі у формі придатній для сприйняття людиною.
Реальна структура комп'ютера значно складніша, ніж розглянута вище (її можна назвати логічної структурою). У сучасних комп'ютерах, зокрема персональних, все частіше здійснюється відхід від традиційної архітектури фон Неймана, зумовлений прагненням розробників та користувачів до підвищення якості та продуктивності комп'ютерів. Якість ЕОМ характеризується багатьма показниками. Це і набір команд, які комп'ютер здатний розуміти, і швидкість роботи (швидкодія) центрального процесора, кількість периферійних пристроїв введення-виведення, які можна приєднати до комп'ютера одночасно і т.д. Головним показником є швидкодія - кількість операцій, яку процесор здатний виконати за одиницю часу. На практиці корситувача більше цікавить продуктивність комп'ютера - показник його ефективної швидкодії, тобто здатності не просто швидко функціонувати, а швидко розв'язувати конкретні поставлені задачі.Як результат, всі ці та інші фактори спричинили принципове і конструктивне вдосконалення елементної бази комп'ютерів, тобто створення нових, більш швидких, надійних і зручних у роботі процесорів, запам'ятовуючих пристроїв, пристроїв введення-виведення і т.д. Проте, слід усвідомлювати, що швидкість роботи елементів неможливо збільшувати безмежно (існують сучасні технологічні обмеження та обмеження, зумовлені фізичними законами). Тому розробники комп'ютерної техніки шукають вирішення цієї проблеми вдосконаленням архітекутри ЕОМ.
Так, з'явилися комп'ютери з багатопроцесорною архітектурою, в яких кілька процесорів працюють одночасно, а це означає, що продуктивність такого комп'ютера дорівнює сумі продуктивностей процесорів. У потужних комп'ютерах, призначених для складних інженерних розрахунків і систем автоматизованого проектування (САПР), часто встановлюють два або чотири процесори. У надпотужних ЕОМ (такі машини можуть, наприклад, моделювати ядерні реакції в режимі реального часу, передбачати погоду в глобальному масштабі) кількість процесорів досягає кількох десятків.
Швидкість роботи комп'ютера істотно залежить від швидкодії оперативної пам'яті. Тому постійно ведуться пошуки елементів для оперативної пам'яті, які потребували б якомога менше часу на операції читання-запису. Але разом із швидкодією зростає вартість елементів пам'яті, тому нарощення швидкодійної оперативної пам'яті потрібної ємності не завжди прийнятна економічно.
Проблема вирішується побудовою багаторівневої пам'яті. Оперативна пам'ять складається з двох-трьох частин: основна частина великої ємності будується на відносно повільних (більш дешевих) елементах, а додаткова (так звана кеш-пам'ять) складається зі швидкодійних елементів. Дані, до яких процесор звертається найчастіше містяться в кеш-пам'яті, а більший обсяг оперативної інформації зберігається в основній пам'яті.
Раніше роботою пристроїв введення-виведення керував центральний процесор, що займало в нього чимало часу. Архітектура сучасних комп'ютерів передбачає наявність каналів прямого доступу до оперативної пам'яті для обміну даними з пристроями введення-виведення без участі центрального процесора, а також передачу більшості функцій керування периферійними пристроями спеціалізованим процесорам, що розвантажує центральний процесор і підвищує його продуктивність.
Програмне забезпечення
Програмне забезпечення являє собою сукупність програм, призначених для розв’язання завдань на комп’ютері. Програма – це впорядкований набір команд. Програмне та апаратне забезпечення працюють взаємопов’язано і в неперервній взаємодії. Будь-який апаратний пристрій управляється програмно.
Програмне забезпечення можна поділити на три класи : системне, прикладне та інструментальне. Наведена класифікація є досить умовною. Інтеграція програмного забезпечення призвела до того, що практично будь-яка програма має риси кожного класу.
Системне програмне забезпечення здійснює управління роботою обчислювальної системи. Як правило, системні програми забезпечують взаємодію інших програм з апаратними складовими, організацію інтерфейсу користувача. Сюди відносять операційні системи, сервісні системи.
Прикладне програмне забезпечення призначене для розв’язання прикладних завдань фахової діяльності людини (тобто, прикладене до практики). Спектр таких програм надзвичайно широкий: від виробничих та наукових до навчальних та розважальних. Сюди відносять розрахункові, навчаючі, моделюючі програми, комп’ютерні ігри, тощо.