Теми рефератів
> Реферати > Курсові роботи > Звіти з практики > Курсові проекти > Питання та відповіді > Ессе > Доклади > Учбові матеріали > Контрольні роботи > Методички > Лекції > Твори > Підручники > Статті Контакти
Реферати, твори, дипломи, практика » Курсовые проекты » Особливості операційної системи UNIX

Реферат Особливості операційної системи UNIX





ні операції read (Відсутній контроль виникнення помилок при виконанні операції write). Потім управління з підпрограми copy повертається в основну програму і запускається операція exit з кодом стану 0 в якості параметра, що вказує на успішне завершення виконання програми.

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

copy copy.c newcopy.c

copy copy newcopy

є допустимими. Існуючий файл також може бути каталогом. Наприклад, за викликом:

copy. dircontents

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

може бути файлом пристрою. Наприклад, програма, викликана наступним чином:

# include

char buffer [2048];

int version = 1;

main (argc, argv)

int argc;

char * argv [];

{

int fdold, fdnew;

if (argc! = 3)

{

printf ("need 2 arguments for copy programn);

exit (1);

}

fdold = open (argv [1], O_RDONLY)/* відкрити вихідний файл тільки для читання */

if (fdold == -1)

{

printf ("cannot open file % Sn ", argv [1]);

exit (1);

}

fdnew = creat (argv [2], 0666);/* створити новий файл з дозволом читання і запису для всіх

користувачів */

if (fdnew == -1)

{

printf ("cannot create file% sn ", argv [2]);

exit (1);

}

copy (fdold, fdnew);

exit (0);

}

copy (old, new)

int old, new;

{

int count;

while ((count = read (old, buffer, sizeof (buffer)))> 0)

write (new, buffer, count);

}

Малюнок 1.3. Програма копіювання файлу

copy/dev/tty terminalread

читає символи, введені з терміналу (файл/dev/tty відповідає терміналу

користувача), і копіює їх у файл terminalread, завершуючи роботу тільки в

тому випадку, якщо користувач натисне . Схожа форма запуску програми:

copy/dev/tty/dev/tty

викликає читання символів з терміналу та їх копіювання назад на термінал.

3.2 середу виконання процесів

Програмою називається виконуваний файл, а процесом називається послідовність операцій програми або частина програми при її виконанні. В системі UNIX може одночасно виконуватися безліч процесів (Цю особливість іноді називають Мультипрограмування або багатозадачним режимом),

при чому...


Назад | сторінка 8 з 14 | Наступна сторінка





Схожі реферати:

  • Реферат на тему: Програма, що реалізує роботу з текстом і збереженням даних у файл
  • Реферат на тему: Файл .htaccess
  • Реферат на тему: Файл менеджер на мові C #
  • Реферат на тему: Файл з розширенням. Docx
  • Реферат на тему: Запис в графічний файл формату BMP