DevioLabавтоматичне керування капіталом
ПРАЦЮЄ 24/7
КРИПТОВАЛЮТИ · АКЦІЇ · 10 БІРЖ

Портфель, який керується автоматично

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

10підключених біржCrypto + Stocksв одному портфелі24/7автоматичний контроль

Звіт до лабораторної роботи № 7 з дисципліни «Операційні системи»

Інформація про навчальний заклад

ВУЗ:
Національний університет Львівська політехніка
Інститут:
Інститут комп’ютерних технологій, автоматики та метрології
Факультет:
Комп’ютерні науки
Кафедра:
Кафедра безпеки інформаційних технологій

Інформація про роботу

Рік:
2011
Тип роботи:
Лабораторна робота
Предмет:
Операційні системи телекомунікаційних мереж
Група:
БІ-31
Коротко про документ

Про що ця робота

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

У роботі розглядаються

  • Операційні системи
  • Міжпроцесна взаємодія
  • Повідомлення
  • Мова програмування C
  • Файлова система

Зміст і розділи

  1. Мета
  2. Завдання
  3. Текст програми клієнта
  4. Текст програми сервера
  5. Результат виконання програми
  6. Висновок
Для кого:Студенти технічних спеціальностей вищих навчальних закладів
Викладачі:Баран Р. Д.

Ключові поняття

процесповідомленняклієнткаталогпайпопераційна системафункціяпрограма

Частина тексту файла (без зображень, графіків і формул):

МІНІСТЕРСТВО ОСВІТИ І НАУКИ УКРАЇНИ НАЦІОНАЛЬНИЙ УНІВЕРСИТЕТ «ЛЬВІВСЬКА ПОЛІТЕХНІКА» Кафедра БІТ / Звіт до лабораторної роботи № 7 ПОВІДОМЛЕННЯ З дисципліни “Операційні системи” Мета: навчиться організовувати обмін даними між процесами з використанням повідомлень. Завдання 9. Клієнт формує запит, що містить ім'я каталогу. Сервер переглядає каталог і передає клієнтові кількість підкаталогів, що мають в цьому каталозі. Клієнт виводить отриману інформацію на екран. Текст програми клієнта #include <iostream.h> #include <stdio.h> #include <errno.h> #include <sys/types.h> #include <unistd.h> #include <fcntl.h> #define NAME "sfifo.cc" int main() { int fd,a; char buf[30]; mkfifo(NAME, S_IFIFO|S_IRWXU|S_IRWXG|S_IRWXO) printf("vedit buf:"); scanf("%lf",&buf); if((fd=open(NAME, O_WRONLY))==-1) { perror("error"); return 1; } write(fd, buf, strlen(buf)); system(/home/shadow8279/parth2.c); if (a=0) { if((fd=open(NAME, O_RDONLY))==-1) { perror("error to read"); } read(fd, folCount, sizeof(folCount)); printf("the number of folders in this directory is:"); printf("%5d", folCount); } close(fd); unlink(NAME); } Текст програми сервера #include <stdio.h> #include <sys/types.h> #include <dirent.h> main(int argc, char *argv[]) { if((fd=open(NAME, O_RDONLY))==-1) { perror("error to read"); } read(fd, buf, sizeof(buf)); struct dirent *mydir; DIR *fd; argv[]==buf[]; if((fd = opendir(argv[])) == NULL) { perror("error opening directory "); break; } while((mydir = readdir(fd)) != NULL) printf("directory is open"); system(ls); int folCount = 0; if(FindFirst(Folder+"\*.*",faAnyFile,SR) == 0) { if(SR.Name != "." && SR.Name != "..") { folCount++; } } if((fd=open(NAME, O_WRONLY))==-1) { perror("error to write"); return 1; } write(fd, folCount, strlen(folCount)); closedir(fd); return a=0; } Результат виконання програми / Скріншот вмісту папки Pictures / Висновок В даній лабораторній роботі я навчився організовувати обмін даними між процесами з використанням повідомлень.
Допоможи студентському архіву

Ми допомогли тобі — допоможи наступному студенту

Файл ще не обрано

Оголошення від адміністратора

Антиботан аватар за замовчуванням

Подякувати Студентському архіву довільною сумою

Admin

26.02.2023 12:38

Дякуємо, що користуєтесь нашим архівом!