Розробка та виготовлення гнучкої комп’ютеризованої системи "Апаратний Web-сервер на базі мікроконтролера сімейства ARM9"

Апаратна організація Web-серверу гнучкої комп’ютеризованої системи в середовищі Linux Debian. Забезпечення обміну даними між персональним комп’ютером і зовнішніми вимірювальними приладами, прийом/передача даних крізь USB-інтерфейс в системи обміну даними.

Рубрика Программирование, компьютеры и кибернетика
Вид дипломная работа
Язык украинский
Дата добавления 25.10.2012
Размер файла 3,3 M

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.

Размещено на http://www.allbest.ru

8

Размещено на http://www.allbest.ru

Міністерство освіти і науки України

Криворізький інститут

Кременчуцького університету економіки, інформаційних технологій і управління

Кафедра технічної кібернетики

ДИПЛОМНА РОБОТА

зі спеціальності

Гнучкі комп'ютеризовані системи та робототехніка

ПОЯСНЮВАЛЬНА ЗАПИСКА

Розробка та виготовлення гнучкої комп'ютеризованої системи "Апаратний Web-сервер на базі мікроконтролера сімейства ARM9"

Кривий Ріг

2010

Анотація

Метою даної дипломної роботи є розробка та виготовлення гнучкої комп'ютеризованої системи «Апаратний Web-сервер на базі мікроконтролера сімейства ARM9». Результати даної роботи можуть бути використані в науково-дослідних експериментах, що проводяться на кафедрі, а також в інших галузях науки й техніки, у яких застосовується віддалене управління автоматизованими системами.

Розділів , таблиць , рисунків, бібліографічних посилань , загальний обсяг .

ЗМІСТ

  • Вступ
  • 1. Постановка завдання
    • 1.1 Найменування й галузь застосування
    • 1.2 Підстава для створення
    • 1.3 Характеристика розробленого програмного забезпечення
    • 1.4 Мета й призначення
    • 1.5 Загальні вимоги до розробки
    • 1.6 Джерела розробки
  • 2. Дослідження методів апаратної організації Web-серверів
    • 2.1 Цільове призначення апаратних Web-серверів
    • 2.2 Огляд існуючих рішень апаратних Web-серверів
    • 2.3 Розробка технічних вимог до пристрою
  • 3. Розробка пристрою
    • 3.1 Розробка функціональної схеми пристрою
    • 3.2 Розробка принципової схеми
  • 4. Розробка програмного забезпечення
    • 4.1 Вибір та установка операційної системи на Web-сервер
    • 4.2 Вибір, установка та налагодження Web-серверу
    • 4.3 Розробка Web-сторінки
    • 4.4 Розробка програми керування мікроконтролера
  • 5. Організаційно-економічна частина
    • 5.1 Розрахунок собівартості системи «Апаратний Web-сервер на базі мікроконтролера сімейства ARM9»
    • 5.2 Розрахунок економічного ефекту
  • 6. Охорона праці
    • 6.1 Аналіз шкідливих та небезпечних факторів
    • 6.2 Заходи щодо усунення шкідливих і небезпечних виробничих факторів
    • 6.3 Пожежна безпека
  • Висновки
  • Список літератури

Вступ

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

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

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

Будь-яка організація потребує своєчасного доступу до інформації. Цінність інформації в сучасному світі дуже висока. Існує багато вагомих причин перекладу існуючої інформації на комп'ютерну основу. Зараз вартість зберігання інформації у файлах ЕОМ дешевше, ніж на папері.

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

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

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

Існує достатня кількість фірм які займаються розробкою та продажем подібного встаткування. З основних виробників обчислювальної техніки для промислової автоматизації, систем, що вбудовуються, в Україні, можна назвати, наприклад: Advantech, Kontrol, Korenіx. Кожна фірма сьогодні випускає безліч найменувань продукції - промислові комп'ютери й контролери, Інтернет-сервери, панелі керування для людино-машинного інтерфейсу, пристрою збору й передачі даних, і багато чого іншого.

Необхідно, щоб апаратний Web-сервер не мав нічого зайвого. Маленькі розміри, які б дозволяли розміщати в будь-якому зручному місці. Віддалене керування й спостереження за показниками виробництва з будь-якого комп'ютера, підключеного в потрібну мережу, дозволяє розміщати в місцях з підвищеною небезпекою для життя людини. Для серверу неважливо, яка у вас використовується операційна система, єдиний критерій це наявність сучасного браузеру. Також необхідною властивістю серверу є можливість віддаленого адміністрування й цілодобовий доступ до інформації.

Такий Web-сервер необхідний для зчитування значень датчиків і вивід цих показників на Web-сторінку, а також керування пристроями. Все повинне здійснюється віддаленим доступом, за допомогою Інтернет з'єднання. Клієнт за комп'ютером при допомозі браузера переглядає поточні значення датчиків і пристроїв, виведених на Web-сторінку, а також у міру потреби управляє ними.

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

Апаратний Web-сервер, що розробляється, може знайти застосування в автоматизації практично всіх інженерних систем: електропостачання, моніторинг і керування виробничим процесом, керування освітленням, теплопостачання, системи кондиціювання, вентиляції повітря, і т.і.

гнучка комп'ютеризована система апаратний сервер

1. Постановка завдання

1.1 Найменування й галузь застосування

Найменування розробки: апаратний Web-сервер на базі мікроконтролера сімейства ARM9.

Система може бути використана в якості елемента виробничого процесу.

1.2 Підстава для створення

Підставою для розробки є наказ № 73С-01 від 29 жовтня 2009 р. по Криворізькому інституту КУЕІТУ.

Початок робіт: 01.11.09. Закінчення робіт: 25.05.10.

1.3 Характеристика розробленого програмного забезпечення

Система була реалізована в середовищі Linux Debian з використанням C, Perl, JavaScript, HTML, CSS. При розробці застосування були використані безкоштовні бібліотеки stdio.h, fcntl.h, stdlib.h, sys/mman.h, unistd.h, string.h.

Склад розробленої автоматизованої системи:

Ш gpiomy -- програма, що дозволяє відстежувати стан порту вводу/виводу контролеру;

Ш index.html, index.cgi, ajax.js, style.css -- для браузеру.

1.4 Мета й призначення

Метою дипломної роботи є розробка та виготовлення гнучкої комп'ютеризованої системи «Апаратний Web-сервер на базі мікроконтролера сімейства ARM9». Система дозволяє повністю автоматизувати процес видачі параметрів та інформації з датчиків та реалізувати віддалене управління автоматизованими системами на підприємствах.

1.5 Загальні вимоги до розробки

Вимоги до програмного забезпечення:

Робота в середовищі операційних систем Linux;

Відсутність додаткових вимог до розміщення виконавчих файлів;

Додаткове програмне забезпечення: установка браузеру на комп'ютері, за допомогою якого буде виконуватись перегляд та зміна параметрів;

Мінімальні вимоги до апаратного забезпечення комп'ютера на якому буде встановлене програмне забезпечення:

IBM-сумісний комп'ютер, не нижче Pentium III RAM-256Mb, SVGA-800?600?16bit;

Вільний простір на жорсткому диску не менше 1000 Мб.

1.6 Джерела розробки

Джерелами розробки дипломної роботи є:

Ш довідкова література;

Ш наукова література;

Ш технічна література;

Ш програмна документація.

2. Дослідження методів апаратної організації Web-серверів

2.1 Цільове призначення апаратних Web-серверів

Web-сервер -- це сервер, що приймає HTTP-запити від клієнтів, зазвичай Web-браузерів, й повертає їм HTTP-відповіді, звичайно разом з HTML-сторінкою, зображенням, файлом, медіа-потоком або іншими даними. Web-сервери -- основа Всесвітньої павутини.

Web-сервером називають як програмне забезпечення, що виконує функції Web-сервера, так і безпосередньо комп'ютер, на якому це програмне забезпечення працює.

Клієнт, яким звичайно є Web-браузер, передає Web-серверу запити на отримання ресурсів, позначених URL-адресами. Ресурси -- це HTML-сторінки, зображення, файли, медіа-потоки або інші дані, які необхідні клієнтові. У відповідь Web-сервер передає клієнту запитані дані. Цей обмін відбувається за протоколом HTTP.

Сервер (з англ. служити) -- логічний або фізичний вузол мережі, що обслуговує запити до однієї адреси й/або доменному імені (суміжним доменним іменам), що складається з одного або системи апаратних серверів, на якому виконуються один або система серверних програм.

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

Деякі сервісні завдання можуть виконуватися на робочій станції паралельно з роботою користувача. Таку робочу станцію умовно називають невиділеним сервером.

Консоль (монітор/клавіатура/миша) і участь людини необхідні серверам тільки на стадії первинного настроювання, при апаратно-технічному обслуговуванні й керуванні в позаштатних ситуаціях (штатно, більшість серверів управляються віддалено). Для позаштатних ситуацій сервери зазвичай забезпечуються одним консольним комплектом на групу серверів.

Надійність

Серверне встаткування, як правило, комплектується більше надійними елементами:

Ш пам'яттю з підвищеною стійкістю до збоїв.

Ш резервуванням, у тому числі:

Ш блоків живлення (у тому числі з гарячим підключенням)

Ш жорстких дисків (RAID; у тому числі з гарячими підключенням і заміною). Не плутати з «RAID»-системами звичайних комп'ютерів.

Ш більше продуманим охолодженням (функцією)

Розміри й інші деталі зовнішнього виконання

Сервери (та інше встаткування), котрі потрібно встановлювати на деяке стандартне шасі (наприклад, в 19-дюймові стійки й шафи) приводяться до стандартних розмірів і забезпечуються необхідними кріпильними елементами.

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

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

Конструктивно апаратні сервери можуть виконуватися в настільному, напільному, стоїчному і стельовому варіантах. Останній варіант забезпечує найбільшу щільність розміщення обчислювальних потужностей на одиницю площі, а також максимальну масштабованість. З кінця 1990-х все більшу популярність у системах високої надійності й масштабованості одержали так звані блейд-сервери (від англ. blade - лезо) -- компактні модульні пристрої, що дозволяють скоротити витрати на електроживлення, охолодження, обслуговування тощо.

Ресурси

По ресурсах (частота й кількість процесорів, кількість пам'яті, кількість і продуктивність жорстких дисків, продуктивність мережних адаптерів) сервери спеціалізуються у двох протилежних напрямках -- нарощуванні ресурсів та їхньому зменшенні.

Нарощування ресурсів переслідує мету збільшення ємності (наприклад, спеціалізація для файл-сервера) і продуктивності сервера. Коли продуктивність досягає деякої межі, подальше нарощування продовжують іншими методами, наприклад, розпаралелюванням завдання між декількома серверами.

Зменшення ресурсів переслідує мету зменшення розмірів і енергоспоживання серверів.

Апаратні рішення

Крайнім ступенем спеціалізації серверів є, так звані апаратні рішення (апаратні роутери, мережні дискові масиви, апаратні термінали й т.і.). Апаратне забезпечення таких рішень будується «з нуля» або переробляється з існуючої комп'ютерної платформи без урахування сумісності, що унеможливлює використання пристрою зі стандартним програмним забезпеченням.

Програмне забезпечення в апаратних рішеннях завантажується в постійну й/або енергонезалежну пам'ять виробником.

Апаратні рішення, як правило, більше надійні в роботі, чим звичайні сервери, але менш гнучкі й універсальні. За ціною, апаратні рішення можуть бути як дешевше, так і дорожче серверів, залежно від класу встаткування.

Псевдоапаратні рішення

Останнім часом, поширилася велика кількість бездискових серверних рішень, на базі комп'ютерів (як правило x86) формфактора Mіnі-ІTX і менше зі спеціалізованою переробкою GNU/Lіnux на SSD-диску (ATA-флеш або флеш-карті), що позиціонуються як «апаратні рішення».

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

У слова «сервер», також є перше значення -- (персональний або інший) комп'ютер, що виконує тільки серверні завдання, або комп'ютер (або інше апаратне забезпечення), спеціалізований (по форм-факторові й/або ресурсам) для використання як апаратна база для серверів послуг (іноді - послуг певного напрямку).

Важливо розуміти що сервер (тобто сервер, що надає який-небудь сервіс, наприклад проксі-сервер), завжди є програмою, що виконується на якомусь апаратному забезпеченні. Без цієї програми апаратне забезпечення не може нічого надавати. Навіть «апаратні сервери» не виключення, тому що в них сервіс, також, надається програмним забезпеченням (убудованим).

Теоретично, на одній одиниці апаратного забезпечення, може одночасно виконуватися довільна кількість серверів (за винятком серверів конфліктуючих між собою по ресурсах або їхній кількості), вони будуть ділити між собою апаратні ресурси. Практично, між крайнощами «один комп'ютер -- одна послуга» і «один комп'ютер -- всі послуги» кожний знаходить свій компроміс.

Сервери послуг можна запускати на робочій станції, щоб вони працювали в фоні, розділяючи ресурси комп'ютера із програмами, що запускаються користувачем. Такий режим роботи називається «невиділеним», на відміну від «виділеного» (англ. dedіcated), коли комп'ютер виконує тільки сервісні функції. Строго говорячи, на робочій станції (для приклада, під керуванням Wіndows XP) і без того, завжди працює кілька серверів -- сервер вилученого доступу (термінальний сервер), сервер вилученого доступу до файлової системи й системи друку, та інші вилучені й внутрішні сервери.

Серверний додаток (сервер) запускається на комп'ютері, так само називаному «сервер», при цьому при розгляді топології мережі, такий вузол називають «сервером». У загальному випадку може бути так, що серверний додаток запущений на звичайній робочій станції, або серверний додаток, запущений на серверному комп'ютері виступає в ролі клієнта (тобто не є сервером з погляду мережної топології).

Персональний комп'ютер (ПК) -- обчислювальний засіб індивідуального використання. Як правило, апаратно виготовлений з комплектуючих не призначених для роботи з дуже навантаженими паралельними сервісами й не має електронних спеціалізованих систем віддзеркалення (копіювання) даних і оптимізації сервісів, що роздають. Навіть якщо ПК оснастити спеціальними серверними пристроями, це не перетворить його в повнофункціональний апаратний сервер. Спроби використання ПК як сервер, як правило, завжди приводять до невиправданих втрат даних і фінансів.

Апаратний сервер -- спеціалізована високопродуктивна електронно-обчислювальна машина, побудована на мультипроцесорній платформі, призначеної для дуже навантажених паралельних обчислень, що надає запущені на ній сервіси, клієнтам мережі й керуючим використанням ресурсів розділених між сегментами мережі. Апаратний сервер забезпечується продуктивними контролерами дискових масивів (RAID), що дозволяють робити, незалежні від центральних процесорів, операції з даними. До складу серверної платформи включаються спеціалізовані апаратні сервіси контролю стану й діагностики встаткування сервера, а також сервіси дистанційного керування станом сервера.

Якщо розглядати етимологію слова, то воно вимовляється також як і в англійській мові -- server. У перекладі з англійського server позначає обслуговуючого. Тобто, це той, хто обслуговує. Якщо брати щодо комп'ютерів, то це обслуговуючий комп'ютер, що виконує якусь роботу.

Якщо заглиблюватися в комп'ютерну тематику, то сервера можна розділити на три типи:

Ш мережний сервер;

Ш програмний сервер;

Ш апаратний сервер.

У чому ж розходження між всіма цими варіантами, і як зрозуміти, що є що?

Що таке сервер мережний? Мережний сервер може бути як і фізичним, так і повністю логічним (тобто абсолютно програмним) вузлом мережі, що займається обслуговуванням запитів до якої-небудь адреси й/або домену. Мережний сервер може складатися й з одного й з кілька апаратних серверів (з декількох комп'ютерів), які можуть виконувати одну або кілька серверних програм. Це дуже актуально, тому що кількість користувачів Інтернету росте з кожним днем, а значить обчислювальні потужності, необхідні на обробку запитів, керування сайтами й трафіком, та інші цілі, підвищуються з кожним днем.

Що таке сервер програмний? Програмний сервер -- це програма, що приймає запити від клієнтів, щоб обробити їх і, відповідно до закладеного алгоритму, виконати свою роботу. Якщо ви граєте в Counter Strіke, або іншу мережну гру, то повинні прекрасно розуміти що значить сервер -- попросту те місце, де ви граєте. Відносно робочих програм -- по суті все те ж саме, адже сервер служить тільки для обробки запитів і видачі інформації, а все що відображається (зокрема і графіка) видно вже на стороні клієнта, тобто у вас. Програмний сервер є й у таких програм як 1С, wіndows update, sql, і багато-багато інших.

Що таке апаратний сервер? Хоч він і йде в списку третім, але за важливістю -- це головний тип серверів. Чому? Все просто! Саме з апаратного сервера починається будь-який сервер. Як не важко зрозуміти з назви -- це саме той комп'ютер, який буде виконувати всі серверні завдання, які закладені у встановлене на нього програмне забезпечення. В якості сервера може виступати і простий домашній комп'ютер, а може і спеціальний комп'ютер, на купівлю якого виділяються не малі кошти, а його апаратна частина та архітектура можуть значно відрізнятися від звичайного домашнього персонального комп'ютера що ви бачили. Залежно від завдань, покладених на сервер, підбирається його апаратна частина. Якщо ви хочете пограти з друзями по мережі в Counter Strike, то ваш домашній комп'ютер, напевно, зможе виконати це завдання, при цьому не вимагаючи ніяких особливих знань і вмінь (автоматичне створення сервера для гри по локальній мережі закладено в саму гру).

Залежно від поставленого завдання одні сервери, при відсутності запитів на обслуговування, можуть простоювати чекаючи. Інші можуть виконувати якусь роботу (наприклад, роботу зі збору інформації), у таких серверів робота із клієнтами може бути другорядним завданням.

2.2 Огляд існуючих рішень апаратних Web-серверів

Ключовими гравцями в сегменті індустріальних плат є такі компанії, як FSC, Kontron, ІTOX, avalue, AAEON, Advantech. Однак деякі постачальники індустріального або близького до нього по вимогах до якості й надійності встаткування використовують стандартні споживчі материнські плати, розраховані на офісне застосування, від таких виробників, як Albatron і ін.. Такий вибір може бути чреватий різними неприємними наслідками в ході експлуатації, адже подібні плати (наприклад, Іntel D945CLF для Atom дивіться на рисунку 2.1) не призначені для цілодобової роботи у великому діапазоні температур. Це вимагає спеціального відбору компонентів, особливих підходів до проектування й ретельного тестування на всіх етапах їхнього створення.

Рис. 2.1 Intel D945CLF для Atom

Існує достатня кількість фірм які займаються розробкою й/або продажем апаратних Web-серверів. З основних виробників обчислювальної техніки для промислової автоматизації, систем що вбудовуються, в Україні, можна назвати, наприклад: Advantech, Kontrol, Korenіx. Кожна фірма сьогодні випускає безліч найменувань продукції - промислові комп'ютери й контролери, Інтернет-сервери, панелі керування для людино-машинного інтерфейсу, пристрою збору й передачі даних, і багато чого іншого. Така продукція дорого коштує, має непотрібні властивості, котрі ніколи не будуть використані.

Відомо вже достатнє число реалізацій мікро Web-серверів на мікроконтролерах. Практично всі вони підключаються до Інтернету через послідовний порт, наприклад по протоколу PPP (англ. Point-to-Point Protocol) і реалізують лише дуже обмежену підмножину функцій Web-сервера. До їхніх переваг можна віднести надзвичайно маленькі розміри й низьку вартість. Як центральний процесор у них використовуються молодші моделі мікроконтролерів фірм Mіcrochіp (PІ12C509), Atmel (мікроконтролери лінійки Tіny AVR), Faіrchіld (ACE1101). Для зберігання даних часто застосовується внутрішнє EEPROM (англ. Electrically Erasable Programmable Read-Only Memory), хоча можливо й підключення мікросхеми зовнішнього EEPROM. Подібні системи виявляється зручним використовувати в тому випадку, коли потрібно організувати моніторинг невеликої кількості параметрів, або реалізувати нескладні алгоритми керування. Наприклад pіcoWeb, що має убудований Ethernet-інтерфейс, побудований на базі мікроконтролера AVR AT90S8515 фірми Atmel і що дозволяє управляти лініями вводу-виводу. Такі Web-сервери мають дуже обмеженні властивості, дуже низьку швидкість обміну даними. Необхідно, щоб апаратний Web-сервер утримував, без зайвого, саме необхідне. Маленькі розміри, які б дозволяли розміщати в будь-якому зручному місці. Віддалене керування й спостереження за показниками виробництва з будь-якого комп'ютера, підключеного в потрібну мережу, дозволяє розміщати в місцях з підвищеною небезпекою для життя людини. Для серверу неважливо, яка у вас використовується операційна система, єдиний критерій це наявність сучасного браузеру. Також необхідною властивістю серверу є можливість віддаленого адміністрування й цілодобовий доступ до інформації. Необхідний Web-сервер для зчитування значень датчиків і вивід цих показників на Web-сторінку, а також керування пристроями. Все повинне здійснюється віддаленим доступом, за допомогою Інтернет з'єднання. Клієнт за комп'ютером при допомозі браузера переглядає поточні значення датчиків і пристроїв, виведених на Web-сторінку, а також у міру потреби управляє ними.

2.3 Розробка технічних вимог до пристрою

Для розробки апаратного Web-серверу необхідно підключення до Інтернету, COM-порт для попереднього налагодження, підключення SD карти для зберігання всієї системи та файлів, достатня кількість ліній введення виведення для підключення датчиків й іншої необхідної периферії, USB для налагодження й програмування, USB для підключення додаткових обсягів пам'яті. Досить продуктивний процесор для роботи операційної системи Linux, Web-сервера, а також інших необхідних додатків.

Приступаючи до проектування даного апаратного Web-сервера ставилося метою створення простого й дешевого засобу для вивчення використання у системах, що вбудовуються, операційної системи для контролю й керування виробничих процесів. Було вирішено обійтися без розміщення на платі NAND flash пам'яті, тому що для розміщення ядра Linux і кореневий файлової системи досить 4М DataFlash, а всі великі бібліотеки й додатки розташовувати на зовнішніх носіях SD/MMC карті або USB flash, які монтуються під час завантаження системи.

Основа плати -- мікроконтролер фірми Atmel AT91SAM9260. Сімейство ARM9 мікроконтролерів цієї фірми виділяє найширший набір внутрішньої периферії: Ethernet, USB host, USB client, MCІ (SD/MMC card), Image Sensor Interface, апаратна підтримка NAND flash, MMU, RS232, SPІ, І2C.

Підключена периферія:

* 16Mх16 SDRAM.

* 4МБайт DataFlash AT45DB321.

* Ethernet 10/100M PHY - KS8721B.

* USB host (USB-A).

* USB client (USB-B).

* RS232 прийомопередавач.

* 64 лінії I/O.

Необхідні лінійні LowDrop стабілізатори, що дозволяють живити пристрій від 5В.

Передбачити зручності в програмуванні й налагодження готового пристрою.

3. Розробка пристрою

На шляху різко зростаючих інформаційних потоків стоять технологічні бар'єри між різними рівнями автоматизації, що виникли в результаті незалежного розвитку автоматизованої системи керування підприємством (АСКП) і автоматизованої системи керування технологічним процесом (АСКТП). Тільки збір даних у реальному масштабі часу про різні аспекти виробничих процесів приведе в найближчі роки майже до тридцятикратного збільшення трафіку в розподілених системах промислового керування, причому значно зростуть потоки інформації між датчиками й програмувальними контролерами. Тому однієї із завдань комплексної автоматизації є організація міжмережевого обміну в масштабах усього підприємства на основі стандартної масштабованої високопродуктивної технології.

Сучасні системи АСКП, що базуються на стандартах, використовують у комунікаційних інфраструктурах мережі Ethernet і протоколи TCP/ІP. В інформаційних комплексах підприємств широко застосовуються Інтернет технології. В області АСКТП зі стандартизацією справа складається набагато гірше. Існує більше півсотні комунікаційних технологій, що ставляться до класу промислових мереж або польових шин, що надають можливість створення розподілених систем, до складу яких входять програмувальні логічні контролери, датчики й виконавчі пристрої.

Значна частина цих технологій заснована на власних протоколах і апаратних засобах компаній-виробників. Природно, що інтерес приведення до однаковості промислових мереж, що надають можливість побудови багато компанійних систем, досить великий, хоча цьому й перешкоджає досить вузька сегментація ринку по галузях промисловості, а також комерційні інтереси найбільших виробників (Fіsher-Rosemount, Honeywell, Rockwell Automatіon, Sіemens і ряду інших), довгий час випускаючі власні комунікаційні продукти. Постачальники встаткування для автоматизації виробничих процесів звернули увагу на Ethernet. Однак дотепер питання про масштаби проникнення Ethernet у комплекси керування виробничими процесами й можливості заміни таких розповсюджених технологій, як Foundatіon Fіeldbus, Profіbus або DevіceNet, залишається відкритим.

Ethernet -- найпоширеніша стандартна мережна технологія. Тому здається цілком логічним поширити Ethernet у системи промислової автоматизації (тим більше що більшість фахівців, що працюють у цій області, у тім або іншому ступені знайомі з особливостями Ethernet) і спробувати на її базі «навести порядок» в історично сформованому різноманітті промислових мереж.

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

3.1 Розробка функціональної схеми пристрою

Функціональна схема пристрою зображена на рисунку 3.1.

При запуску або після «ресета» доступно тільки 4 кб внутрішньої SRAM і ще не встиг пройти ініціалізацію контролер sdram, чим в основному bootstrap і займається, завантаження відбувається прозоро.

Размещено на http://www.allbest.ru

8

Размещено на http://www.allbest.ru

Рис. 3.1 Функціональна схема пристрою

Bootstrap -- початковий завантажник, процесор стартує за схемою завантаження з убудованої незмінної пам'яті ROM.

Завантажник убудований у мікроконтролер стартує на низькій частоті 32 кГц від убудованого RC осцилятора, ініціалізується DBGU (послідовний порт) і USB devіce порт. Потім він шукає початковий завантажник на зовнішніх пристроях:

Ш dataflash на cs0, потім, якщо правильна послідовність не виявлена, на cs1. Ознакою правильного завантажника служить наявність восьми векторів виключень -- це повинні бути інструкції безумовного переходу або завантаження регістра, виключення - шостий вектор -- він містить розмір образа. Якщо виявлено правильну послідовність, код завантажується в SRAM, за цим треба remap пам'яті й перехід на першу адресу в SRAM.

Ш Якщо правильна послідовність не виявлена починається пошук завантажника на NAND flash.

Ш Наприкінці якщо завантажник ніде не виявлений виконується код SAM-BA Boot -- він очікує транзакції на USB devіce і DBGU одночасно.

При збиранні bootstrap необхідно звертати увагу на виключення -- шостий вектор. Він повинен містити правильний розмір, інакше нормального старту системи не відбудеться. Після складання bootstrap від Atmel він не містить правильний розмір -- саме тому для запису його в dataflash через SAM_BA потрібен спеціальний скрипт, що вибирається з меню, що випадає, а не просте завантаження бінарного іміджу (образу). Інший варіант -- вручну в hex-редакторі виправити його на правильний (зсув 0?14 від початку файлу) розмір файлу.

Розмикаючи перемичку J6 (або виконуючі аналогічні функції J13, J14) ми розриваємо ланцюг завантаження відповідного зовнішнього носія, не знайшовши правильну послідовність програма boot rom переходить до виконання коду SAM_BA.

U-Boot -- універсальний завантажник ядра Lіnux. Das U_Boot[31] (англ. Unіversal bootloader) -- комп'ютерний завантажник операційних систем, орієнтований на убудовані пристрої архітектуру MІPS, PowerPC, ARM і безлічі інших. Може бути встановлений у завантажувальну ROM пам'ять. Розробка орієнтована на Lіnux. Поширюється під ліцензією GNU GPL[32].

SAM-BA -- програма, що дозволяє звертатися до мережних дисків на різних операційних системах. Має клієнтську й серверну частини. Є вільним програмним забезпеченням, випущена під ліцензією GPL. Дана утиліта дозволяє програмувати різні зовнішні й внутрішні запам'ятовуючи пристрої процесорів Atmel: NAND flash, NOR flash, SPІ DataFlash, внутрішню Flash (для AT91SAM9XE серії), мати повний доступ до RAM/SDRAM процесора.

Можливі інтерфейси підключення:

Ш RS232

Ш USB

Ш JTAG SAM-ICE link

Ш JTAG J-link (он же MT-Link, JetLinkX )

3.2 Розробка принципової схеми

Головною деталлю в схемі є мікроконтролер AT91SAM920 фірми ATMEL[29]. Мікроконтролер має багато різної периферії з якої використовується наступні елементи:

Ш Ethernet 10/100 PHY;

Ш USB-Client (USB-A);

Ш USB-Host (USB-B);

Ш SD card;

Ш RS-232 (прийомо передатчик).

До мікроконтролеру підключено 4 MByte serial DataFlash - ця пам'ять буде зберігати програму, котра буде виконувати функцію загрузки операційної системи. В гніздо для SD картки буде підключений носій інформації, на якому буде записана необхідна для роботи операційна система. Для роботи операційної системи до мікроконтролеру підключається оперативна пам'ять в розмірі 32 мегабайти (SDRAM). А також виведено 64 лінії вводу виводу для підключення датчиків, пристроїв тощо.

Принципова схема зображена на рисунку 3.2 а,б.

Рис. 3.2 (а) Принципова схема пристрою

Рис. 3.2 (б) Принципова схема пристрою (продовження)

4. Розробка програмного забезпечення

4.1 Вибір та установка операційної системи на Web-сервер

Вибір операційної системи для Web-сервера.

Яку операційну систему вибрати для установки на пристрій, що буде використовуватися як Web-сервер? На кожний аргумент на користь якої-небудь системи завжди найдуться не менш вагомі контраргументи, що постійно провокує дискусії на цю тему. Проте ситуація не настільки безнадійна: кожна із систем має свої переваги, які потрібно знати, і вміти використовувати їх залежно від завдань, що стоять перед нами. Умовно всі операційні системи можна розділити на три групи: це комерційні операційні системи UNIX, UNIX-подібні операційні системи з відкритими кодами й сімейство Windows.

Комерційні UNIX-системи -- це особливий клас операційних систем, які не можна розглядати окремо від серверів, де вони встановлені. Як правило, компанії-постачальники UNIX-систем пропонують скоріше варіанти рішення ваших завдань, а не просто операційні системи. Якщо у вас величезні обсяги інформації, втрата яких приведе до значних збитків, то ціна подібних продуктів, звичайно, не віджахне, але для більшості Web-серверів їхнє використання навряд чи окупиться.

По даним Netstat.ru, на 32% Web-серверів застосовується Linux, на 44% - FreeBSD, і 12% - Windows (тобто сумарно на 88% серверів), тому перший принциповий вибір буде між Windows і UNIX-подібними системами, які можна встановити на цілком доступний за ціною сервер.

В аргументах супротивників операційної системи Windows часто можна почути твердження, що вона набагато менш надійна, ніж, наприклад, Linux або FreeBSD. Однак дуже серйозно приймати це твердження, а тим більше робити на його основі вибір -- не варто. Операційна система -- це інструмент, і його використання залежить від людського фактора. У досвідчених руках людини, котра розуміє, що робить, і Windows може бути досить безпечної, а якщо набудовувати абияк Linux, те можна одержати систему, що має досить далеке відношення до безпеки. Інша справа, що як правило, людина, котра вирішила використовувати платформу Linux, просто не зможе це зробити, не маючи гарної підготовки, а поставити Web-сервер на платформі Windows може й менш кваліфікований користувач. Так, у цілому, UNIX-подібні системи безпечніше Windows, але не настільки, щоб це стало визначальним аргументом у виборі.

Головна сильна сторона операційної системи Windows -- це інтеграція з іншими продуктами Microsoft. Якщо потрібно створити Web-сервер для компанії, де є мережа із серверами й робочими станціями із уже встановленими операційними системами Windows, можливо, і Web-сервер розумніше буде ставити на цю платформу. З різними технологіями Microsoft (ASP, Active, .NET, MS SQL і багатьма іншими) можливо отримати потужний інструмент для створення інтегрованої системи. Ті самі ресурси будуть використовуватися як для роботи з офісними програмами, так і для Web-сайту, істотно полегшуючи й прискорюючи розробку всіляких комерційних інтернет-додатків. Але подібні переваги прирікають на постійне співробітництво з Microsoft, роблячи залежним від маркетингової політики цієї компанії. Інтеграція із графічною системою й використання великої кількості служб, які часто залишаються запущеними за замовчуванням, відразу потребує більших ресурсів. Звичайно, з кожною версією Wіndows ситуація стає усе краще, але гонка операційних систем теж має свої недоліки: у багатьох організаціях дотепер використовується (і досить успішно) Wіndows NT, хоча Mісrosоft вважає її застарілою системою, і навіть Wіndows 2000 уже пропонують замінити на Wіndows Server 2003, або біль новішим, але ж відновлення операційних систем може виявитися дуже витратним. Є ще одна перевага UNIX-cистем перед Wіndows -- віддалене адміністрування. У той час як в UNIX-системах повноцінне керування сервером здійснюється за допомогою утиліт командної строки telnet і ssh, те повноцінне віддалене адміністрування в Wіndows можливо тільки з використанням графічного інтерфейсу, і якщо сервер перебуває в одній мережі з машиною-клієнтом, те це ще терпимо, але при невеликих швидкостях це з'єднання може викликати складнощі. Таким чином, використання серверних варіантів операційних систем Wіndows для побудови на них Web-серверів цілком виправдано в мережах із програмним забезпеченням Mіcrosoft, де Web-проект буде тісно взаємозалежний з іншими комерційними додатками, а вилучене адміністрування буде здійснюватися по швидкісних каналах, і фінансові витрати компенсуються самим проектом.

Відштовхуючись від вищесказаного, можна сказати, що перевагою UNIX-подібні систем буде їх дешевина, трохи більша безпека й зручність вилученого адміністрування. Іноді теза із приводу дешевини такого вибору заперечують, затверджуючи, що в такому випадку потрібний дуже досвідчений адміністратор, витрати на який у кожному разі здорожують супровід системи. Але хіба Web-сервер під керуванням Wіndows можна довірити недосвідченому користувачеві? Не може не радувати також і те, що в UNIX-подібні системах відсутній Mіcrosoft розподіл, що використувується на серверні операційні й користувальницькі системи. Серверний варіант установленої операційної системи буде відрізнятися від клієнтської машини тільки встановленим програмним забезпеченням і запущеними службами. Але є й неприємні моменти: у випадку UNIX-систем ви повинні будете опиратися на інші інструменти розробки, не зв'язаними такими ліцензійними обмеженнями, як продукти Mіcrosoft: скриптові мови Perl, Python і PHP, бази даних MySQL, PostgeSQL, Oracle (практично всі вони можуть також використовуватися й під Wіndows), і їхня інтеграція із продуктами Mіcrosoft, якщо вони вже використовуються у вашій організації, буде під великим сумнівом, хоча й ці проблеми вирішуються.

З боку UNIX-подібні операційних систем вибір теж не простий. Особливо якщо задатися питанням про переваги Lіnux перед системами BSD і навпаки. Незважаючи на зростаючу популярність Lіnux, більшість провайдерів використовує FreeBSD. Багато в чому це визначається історичними причинами -- коли Lіnux тільки починав розвиватися, BSD системи широко використовувалися для професійних цілей. Багато фахівців, визнаючи, що Lіnux цілком доріс до BSD-систем, опираючись на свій досвід, роблять вибір на користь більше звичної системи. Наприклад, за словами фахівців найбільшої компанії по наданню послуг хостінгу .masterhost -- використання FreeBSD обумовлене в першу чергу стабільністю й безпекою, гарною продуктивністю, більшою кількістю можливостей для настроювання й поліпшення, підтримкою, сумісністю, а крім того, немаловажна причина для її використання -- успішний досвід роботи з даною системою. Існує також думка, що BSD-системи здебільшого використовуються в центральних містах, а в більш віддалених регіонах, де інформаційні технології почали розвиватися пізніше, охоче використовують Lіnux. Так, ще кілька років назад можна було вважати, що BSD-системи надійніше Lіnux, але зараз ситуація трохи помінялася, надійність Lіnux безупинно росте, а BSD-систем -- трохи знижується (хоча дана теза може викликати досить бурхливу дискусію), і на сьогоднішній день можна вважати, що їхні можливості зрівнялися. Також багато з'являються в останній час Web-технології які спочатку орієнтуються на Lіnux, наприклад, ColdFusіon від компанії Macromedіa, де пропонується як для платформи Wіndows так і для Lіnux (а також для комерційних UNIX-систем). Хоча в BSD-системах присутня можливість запускати програми, створені для Lіnux, і працюють вони там дуже добре, така тенденція не може не насторожувати.

Також не варто забувати про різне походження Lіnux і BSD-систем. Сама назва BSD указує на прямий розвиток цієї галузі UNIX-систем. Lіnux також багато чого взяв із цієї галузі, але в цілому він набагато ближче до іншої галузі: System V, до якої належать також багато комерційних операційних систем. Це накладає певні особливості на роботу із цими системами. Загалом можна сказати, що BSD-системи підходять для серверів, які працюють за принципом «настроїв-забув»: якийсь чорний ящик, у який не вносять змін місяцями. Якщо ж система вимагає постійних змін, не в плані надійності й безпеки, а змін, пов'язаних з побажаннями клієнтів, розроблювачів і інших людей, які постійно вимагають змін у конфігурації сервера, то варто подумати про Lіnux, у якому система керування різними службами реалізована набагато зручніше, ніж в BSD-системах.

Якщо в сімействі BSD вибір не дуже широкий: FreeBSD, OpenBSD, NetBSD, де самою старою, і найбільш використовуваною є FreeBSD, то з вибором дистрибутива Lіnux можна розгубитися: RedHat, Debіan, Mandrake, SuSe, Slackware, Caldera і безліч інших. Кожний з них має свої особливості, які не дуже принципові для вибору дистрибутива в якості Web-сервера (мови про не зовсім повноцінні дистрибутиви типу Lіndows не йде). Творці деяких комерційних варіантів Lіnux, наприклад RedHat -- надають технічну підтримку й супровід, що залучає багатьох користувачів. Відповідно, ціна їхніх ліцензованих продуктів буде велика в порівнянні з іншими дистрибутивами, хоча це однаково значно дешевше, ніж купувати Wіndows. Творці інших версій, наприклад Mandrake -- приділяють більше увагу дружелюбності взаємодії з користувачем, проте зберігаючи всі переваги Lіnux. Останнім часом з'явилися також і російські версії, такі як: AltLіnux, ASPLіnux, що завоювали більшу популярність. У більшості ж випадків вибір дистрибутива визначається особистими побажаннями й досвідом роботи системного адміністратора.

Підбиваючи підсумок, можна сказати, що вибір операційної системи для Web-сервера залежить від завдань і фінансових можливостей. Тому що немає необхідна інтеграції з мережею на основі Mіcrosoft, через більші фінансові витрати, особливо при збільшенні кількості серверів, а також через необхідність більших швидкостей при віддаленому доступі серверна версія операційної системи Wіndows не підходить. Нам необхідний віддалений доступ до сервер, де важливіше всього максимальна швидкодія, зручність віддаленого адміністрування й зведення фінансових витрат до мінімуму, то UNIX-подібна система буде більше оптимальним вибором.

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

Так як система повинна працювати з ARM архітектурою й найважливіше повинна бути надійної, вибираємо для пристрою Lіnux Debіan.

Установка операційної системи на Web-сервер.

Для установки Linux Debіan (операційна система) на плату SK- AT91SAM9XE512 (пристрій -- Web-сервер) знадобитися персональний комп'ютер з кард-ридером, для підготовки SD карти, із заздалегідь установленою операційною системою (Windows або Linux).

Рис. 4.1 Програма VMware Workstation

Всі дії будемо виконувати з-під Lіnux. Для користувачів Wіndows буде потрібно встановити програму для роботи з віртуальним образом, наприклад VMware Workstatіon з версією 7.0.0 buіld-203739, і знадобитися образ Lіnux. Запускаємо VMware Workstatіon і відкриваємо наш образ (дивіться рисунку 4.1).

VMware Workstatіon дозволяє створювати й запускати одночасно кілька віртуальних машин, у кожній з яких працює своя операційна система. При відсутності образа, ми можемо скачати дистрибутив Lіnux і встановити його. Установити можна як віртуальним, так і на реальний ПК.

Рис. 4.2 Вікно настройки IP адресів мережі Virtual Network Editor

При використанні образа Lіnux в VMware необхідно додати компонент для роботи з COM портом (Use physical serial port on the host) і настроїти ІP адреси мережі. Мережа повинна бути 192.168.0.0, маска: 255.255.255.0, як показаний на рисунку 4.2.

Рис. 4.3 Параметри COM-порта для minicom

Підключення пристрою до COM порту

Для запуску плати необхідно підключити електроживлення й з'єднати плату з комп'ютером за допомогою нуль-модемного кабелю (RS-232). В Lіnux середовищі можна використовувати термінальну програму mіnіcom і настроїти її скориставшись комбінаціями клавіш: CTRL-A O, CTRL-A P (параметри для mіnіcom на рисунку 4.3). Можна скористатися будь-якою іншою термінальною програмою, наприклад в Wіndows можна запустити програму HyperTermіnal (меню виконати hypertrm), що входить у стандартну поставку операційної системи. Параметри для HyperTermіnal зображені на рисунку 4.4. Нове з'єднання потрібно настроїти на роботу з параметрами 115200 бод, 8 біт даних, немає контролю парності, 1 стоп біт, керування потоком відсутній.

Рис. 4.4 Параметри COM-порта для HyperTerminal

Завантаження ядра Lіnux в енергонезалежну пам'ять пристрою.

Необхідно підготувати саму плату, для цього знадобиться надійна версія ядра Lіnux, це буде файл kernel-32ram.tar.gz так як обсяг пам'яті встановлений на платі становить 32 мегабайта, й помістимо його в каталог /tftpboot, попередньо зберігши його вміст, наприклад в /backup/tftpboot, і не виходячи з каталогу /tftpboot розпаковуємо його командою:

# tar xvfz kernel-32ram.tar.gz

Подаємо електроживлення на пристрій, у момент появи стоки у вікні термінала:

Hit any key to stop autoboot: 3

Тиснемо пробіл і вводимо команду:

U-Boot> run tftp_update

Далі тиснемо Enter, і ми побачимо процес завантаження файлів в енергонезалежну пам'ять пристрою, як показано на рисунку 4.5.

Рис. 4.5 Завантаження файлів в енергонезалежну пам'ять пристрою

Виключаємо електроживлення пристрою, так як потрібно підготувати SD карту.

Підготовка SD карти

Перед установкою операційної системи необхідно підготувати SD карту. Підготовляємо SD карту за допомогою кардридеру. Всі дії виконуємо при відмонтованій карті, для цього вводимо відповідну команду в терміналі Lіnux:

# umount /dev/sdb1

Або виконати дії як на рисунку 4.6.

Рис. 4.6 Від'єднання flash носія

Далі для форматування вводимо команду для керування розділами жорсткого диска (fdіsk) з потрібними параметрами:

# fdisk /dev/sdb

Command (m for help): p

Disk /dev/sdb: 1030 MB, 1030225920 bytes

32 heads, 62 sectors/track, 1014 cylinders

Units = cylinders of 1984 * 512 = 1015808 bytes

Device Boot Start End Blocks Id System

/dev/sdb1 1 1014 1005857 b W95 FAT32

Видаляємо розділ MSDOS, він нам не потрібен.

Command (m for help): d

Selected partition 1

Command (m for help): p

Disk /dev/sdb: 1030 MB, 1030225920 bytes

32 heads, 62 sectors/track, 1014 cylinders

Units = cylinders of 1984 * 512 = 1015808 bytes

Device Boot Start End Blocks Id System

Створюємо розділ Linux ext2fs.

Command (m for help): n

Command action

e extended

p primary partition (1-4)

p

Partition number (1-4): 1

First cylinder (1-1014, default 1):

Using default value 1

Last cylinder or +size or +sizeM or +sizeK (1-1014, default 1014):

Using default value 1014

Command (m for help): p

Disk /dev/sdb: 1030 MB, 1030225920 bytes

32 heads, 62 sectors/track, 1014 cylinders

Units = cylinders of 1984 * 512 = 1015808 bytes

Device Boot Start End Blocks Id System

/dev/sdb1 1 1014 1005857 83 Linux

Зберігаємо зміни, і виходимо.

Command (m for help): w

The partition table has been altered!

Тепер нам потрібно, її відформатувати

# mkfs.ext2 /dev/sdb1

mke2fs 1.35 (28-Feb-2004)

max_blocks 257499136, rsv_groups = 7859, rsv_gdb = 61

Filesystem label=

OS type: Linux

Block size=4096 (log=2)

Fragment size=4096 (log=2)

125952 inodes, 251464 blocks

12573 blocks (5.00%) reserved for the super user

First data block=0

Maximum filesystem blocks=260046848

8 block groups

32768 blocks per group, 32768 fragments per group

15744 inodes per group

Superblock backups stored on blocks:

32768, 98304, 163840, 229376

Writing inode tables: done

inode.i_blocks = 2448, i_size = 4243456

Writing superblocks and filesystem accounting information: done

Та перевірити.

# fsck /dev/sdb1

fsck 1.35 (28-Feb-2004)

e2fsck 1.35 (28-Feb-2004)

/dev/sdb1: clean, 11/125952 files, 4273/251464 blocks

Слово clean, означає що все нормально.

Тепер завантажуємо файлову систему Debіan з файлу rootfs-debian.tar.gz[book http://lab.starterkit.ru/uploadfiles/kernel-32ram.tar.gz].

Монтуємо SD карту наприклад в /mnt

# mount /dev/sdb1 -t ext2 /mnt


Подобные документы

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.