LINUX операциялық жүйе ретінде

Скачать



 ҚАЗАҚСТАН РЕСПУБЛИКАСЫ ҒЫЛЫМ ЖӘНЕ БІЛІМ МИНИСТРЛІГІ
Қаныш Сәтбаев атындағы Қазақ Ұлттық Техникалық Университеті
Ақпараттық технологиялар институты
Есептеу техника кафедрасы
КУРСТЫҚ ЖОБАҒА ТҮСІНІКТЕМЕ
Тақырыбы: Linux операциялық жүйесіндегі wait() функциясы
Алматы 2008
Мазмұны
Кіріспе ............................................................................................................ 4
LINUX операциялық жүйе ретінде ......................................................... 4
Көпқолданбалы операциялық жүйелер ................................................... 5
II Негізгі бөлім
1 LINUX-пен танысу ................................................................................ 5
1.1 LINUX операциялық жүйесінің қысқаша тарихы ......................
1.2 LINUX-пен жұмыс жасауға ыңғайлы процессорлар ..................
1.3 OS-тің таралу ережелері ............................................................. 6
1.4 LINUX дистрибутивтері ............................................................... 8
2 LINUX-ке арналған бағдарламалар ..................................................... 8
3 LINUX жүйесінің күйге келтірілуі және конфигурациялары .........
3.1 LINUX дыбыстық жүйенің күйге келтірілуі ............................... 9.
3.2 Графиктік ережелер үшін бейнеадаптер режимі..................... 10
3.3 LOCALE: жүйедегі тілдер ........................................................... 11
4 LINUX ортасында жұмыс істеу ....................................................... 11
4.1 LINUX-тің практикалық қолданылуы ........................................ 13
5 Linux операциялық жүйесіндегі wait () функциясы ..........................
5.1 Wait функциясының алгоритмі ................................................... 15
III Қорытынды ............................................................................................ 19
Қолданылған әдебиеттер тізімі ............................................................... 20
Кіріспе
Linux операциялық жүйесі көптеген жерлерде, яғни ұжымдық мекемелер
Бүгінгі барлық операциялық жүйелердің жақсы қасиеттерін Linux
OS Linux-тің болашағы жоқ деп айтылуда. Бірақ бұл
Бұл жұмыстың мақсаты Linux-тің мүмкіндіктері мен жұмыс ережелерімен
Linux – те инструменттердің жинағы қамтамассыздандырылған, осы инструменттер
LINUX операциялық жүйе ретінде
“Linux” терминінің мағынасы толығымен анықталмаған. Ең алдымен ол
Нақтырақ айтсақ, белгілі бір уақыт мезетінде Linuх-тің тек
Кез келген анықтамадан шыққанда Linuх операциялық жүйе болып
Көпқолданбалы операциялық жүйе
Windows-тің барлық версиялары мен МасОS жүйелері бірқолданбалы (яғни
Linux бір уақытта бірнеше қолданушының жұмысын қамтамасыз
Көпқолданбалылықпен қатар Linux-тің көптапсырмалылық қасиеті бар.
Бір кездерде есептеу жүйелері Windows 3.1-ден Windows 95-ке
Жүйенің көптапсырмалылығы – оның бірнеше операцияларды
Әрқашан да Uniх жүйелеріндегі көптапсырмалылық Windows жүйелеріндегіден гөрі
II Негізгі бөлім
1 LINUX-пен танысу
1.1 LINUX операциялық жүйесінің қысқаша тарихы
Linux – операциялық жүйе, ол өте танымал Unix
Linux-тің бірінші түрі шыққаннан кейін екі айдан соң
Linux Unix-тің жеңілдетілген түрінің қорында орналасқан, ол Minix
Linux операциялық жүйенің негізгі қасиеттері:
Толық көпқолданбалы операциялық жүйе. Ол бір мезгілде бірнеше
Виртуалдық жадының жәрдемі. Linux қатты дискінің бөлімін виртуалдық
Операциялық жүйенің графиктік ортасы. XWindow – бұл стандартты
Linux барлық қолданбалы тор хаттамаларын, сонымен бірге Интернет-хаттамасы
Кітапхана байлығы. Әрбір жұмыстағы қайталанатын процедураларды сақтаудың орнына
SysV, BSP және IEEE POSIX 1 стандарттарына ұқсас
Операциялық жүйенің ашық мәтіні. Linux AT&T сияқты саудалық
Басқа операциялық жүйелерге қарағанда өте арзан.
Вирустарға толық қарсы тұруы. Қазіргі уақытта Linux-ке арналған
LINUX-пен жұмыс жасауға ыңғайлы процессорлар
Бүгінгі күні OS Linux түгел дерлік процессорлармен жұмыс
Сонымен қатар, Linux көппроцессорлы машиналарда SMP (мультипроцессорлық жүйе)
OS-тің таралу ережелері
“Linux тегін” – бұл Linux-тің әрбір түрі мен
Жүйе тегін таралады.
Операциялық жүйе жиынын және оған кіретін мағлұматтарды сатуға
Лицензияда көрсетілген сатып алушының құқықтарына сатушының қарсы құқысы
Соңғы бөлімше ерекше көңіл бөлуді талап етеді. Дистрибутив
Бұл бойынша Қазақстан Республикасында әрбір Linux дистрибутивінің лицензиялық
LINUX дистрибутивтері
Дистрибутив үшін құжаттар бөлек беріледі. Бірақ оған көптеген
Linux-ті мықты құрастырушылар: Red Hat Inc., және Mandrake
Linux дистрибутивтері көптеген әр түрлі компаниялармен шығарылады. Бүгінгі
Red Hat, Inc. – Red Hat Linux-тің үш
Caldera, Inc. – Caldera Open Linux түрін шығарады;
Debian Group – Linux Debian;
Corel, Inc. – әмбебап саудаға қондырылуы ыңғайлы Corel
SUSE Group – S.U.S.E Linux-ті шығарады, әсіресе еуропалық
Келесі дистирбутивтер ТМД территориясында өте танымал:
“Процедура” қоғамынан Red Hat Linux. Бұл компания ТМД
Ресей-француз “Mandrake S.A.” компаниясынан Mandrake Linux дистрибутиві. Linux-тің
Black Cat Group, BC Linux дистрибутивімен танымал. Бұл
Техникалық аспектісінде бұл барлық дистрибутивтерінің айырмашылығы өте бос
2 LINUX-ке арналған бағдарламалар
Linux операциялық жүйесін түрлі бағдармаларды құру үшін пайдалануға
DOS пен Windows-тің бағдарламалық қамтамалары. Linux-те орнықтылықтың жоғары
XWindows қабықшасы. Бұл өте ыңғайлы, әрі көрнекті және
Мәтіндік редакторлар. WordPerfect, StartOffice және ApplixWare сияқты коммерциялық
1 кесте. Мәтіндік файлдарға арналған командалар
Команда Түсініктеме
awk Мәтінге қолданылған мықты тіл
diff Мәтіндік файлдарды салыстыру
ed Қарапайым мәтіндік редактор
fold Қатардың орнын ауыстыру
grep Жол арқылы мәтіннің үзіндісін іздеу
head Файлдың бастамасын көрсету
pr Жаңа беттің бастамасы
sed Мәтіндік файлдарды қайта құру
sort Мәтіндік файлдарды реттеу
tail Файлдың соңын көрсету
wc Символдардың, қатардың және сөздердің статистикасы
Бағдарламалау тілдері. Көптеген бағдарламалау мен бағдарлама дайындау тілдері,
Деректер қоймалары. Барлық Linux платформаларындағыдай Linux клиент-сервер деректер
Іnternet жабдықтары. Linux белгілі Netscape Communication және Моsаіс
3 LINUX жүйесінің күйге келтірілуі және конфигурациялары
Жүйе қолданушы қондырғылармен қаншалықты тез жұмыс жасайтынына өте
Алайда жәрдемдесетін қондырғылардың драйверлерін қондыру процесі Windows драйверін
Жүйенің бастапқы қондыруының көптеген операцияларымен командалық жолда жұмыс
Setup бағдарламасының көмегімен OS-тің келесі функцияларын қондыруға болады:
Қолданушылар авторизация параметрлері.
Брандмауэр.
Перне тақтасының тілдері мен орындалу тәртібі.
Тышқан түрі.
Linux-тің желіде жұмыс жасау қондырғылары мен хаттамалары.
Баспа құрылғысының түрі, спулер (баспа кезегі).
Дыбыстық картаның түрі және дыбысты шығару параметрлері.
Жүйелік сағат.
XWindow-да жұмыс жасау мониторы және бейнеадаптері.
3.1 LINUX дыбыстық жүйенің күйге келтірілуі
Linux-та дыбыстық картаның жұмыс жасауы үшін setup бағдарламасын
Дыбыстық карта табылғаннан кейін қолданушыға дыбыстық картаның толқындық
Осыдан кейін дыбыс жәрдемінің қажетті модулі ядроға және
Егер табылған дыбыстық карта жәрдемдеспейтін болса, онда ескермегенде
Дыбыстық драйверінің қондырылу процесінің визуализациясын қарамағанда, Linux ядросының
3.2 Графиктік ережелер үшін бейнеадаптер режимі
Дыбыстық картаның қондырылуынан кейін көптеген қолданушыларда толық ашылатын
Xfree86 XWindow (бұл графиктік ортаның толық атауы) ашу
2 кесте Linux-тің көмегінсіз жүзеге асатын файлдық жүйелер
Түрі Түсініктеме
tmpfs Уақытша файлдарға арналған файлдық жүйе
ntfs New Technology File System (жаңа технологияның
файлдық жүйесі, WinNT)
Stacker MS-DOS үшін архивтелінетін файлдық жүйе
Double
Space Stacker бағдарламасынан рұқсатынсыз көшірілген
аналогты жүйе
Дыбыстық карта сияқты бейнеадаптер түрінің анализі автоматты түрде
Содан кейін қолданушыға ол жұмыс істейтін бейнережимді таңдауға
3.3 LOCALE: жүйедегі тілдер
Қондырудың соңғы жұмысы локальді хабарлардың шығарылу тілінің өзгертілуі
Бірақ хаос болмайды. Linux-тің көптеген әрбір бағдарламалары үшін
Locale үшін тіл OS-ті қондырғанда таңдалады. Егер қондырушыға
Locale жүйенің әрбір қолданушысы үшін жекешелендірілген. Егер қолданушы
Locale жүйенің мәтіндік режимінің жұмысына ғана әсер етіп
4 LINUX ортасында жұмыс істеу
Linux оперциялық жүйесі Red Hat дистрибутивімен жұмыс
Әрине, Red Hat Linux сәттілігі үшін жалғыз
Пакеттерді басқару жүйесінің артықшылықтарының біріне түрін жаңартудың қарапайымдылығы
Және тағы бір Red Hat артықшылығы —
Командалық жол ортасы Linux-тің негізі болып табылады. Жоғарыда
DОS операциялық жүйелерінің қолданушыларына команда термині жақсы белгілі
Linux әлемінде команда түсінігі өзгешелеу. Мұнда ол –
Командалық жол режимі жүйенің терминалы деп аталады. Ол
Оның интерфейсі Місrosoft компаниясының қарсыласындағысына ұқсас болып келген.
Linux кішігірім фирмада немесе үйдегі дербес компьютерінде жұмыс
Linux өзін желілер дүниесінде өте жақсы көрсетеді. Үйде
3 кесте Linux қондырғысының басты командалық нөмірлері
Нөмірі Түсініктеме
1 Операциондық жады
2 Дисковод
3 IDE қатты диск үшін бірінші бақылаушы
4 Терминалдар
5 Терминалдар
6 Принтер (параллельдік айырмасы)
8 SCSI қатты дискісі
9 SCSI магниттік орама
10 Шиналарға арналған тышқан
11 SCSI CD-ROM
12 QIC-02 магниттік орама
13 XT бақылаушылардағы қатты дискілер
14 Дыбыс карталары
22 IDE қатты диск үшін екінші бақылаушы
Linux кішігірім фирмада немесе үйдегі дербес компьютерінде жұмыс
Linux өзін желілер дүниесінде өте жақсы көрсетеді. Үйде
Егер Windows басқаруындағы компьютердің жұмысы сізге жеткілікті тиімді
4.1 LINUX-тің практикалық қолданылуы
OS Linux-тің танымал болмауына қарамастан, ол Қазақстан Мемлекетінде
ААҚ “Қазақтелеком”. Linux серверде орнатылған танымал Интернет-сайт www.host.kz
ЖАҚ “TNS Plus”. Бұл жерде Linux компьютерді қамтамасыз
“Парасанг” интернет-провайдері. Компьютер OS Linux-пен биллингтік деректерді санау
Advantek International, Inc., мұнда Linux серверде орнатылған, ол
ААҚ “Казкоммерцбанк”. Бұл жерде де Linux Интернет-сайтында www.kkb.kz
Ал Қазақстанның қалған жеріндегі мағлұматтар өкінішке орай жоқ.
В.Путиннің ұсынысы бойынша Ресей Мемлекетінің әскери объектілерінде OS
Бұл мысалдарды келтіргеннен кейін өте орынды сұрақ туады:
5 Linux операциялық жүйесіндегі wait () функциясы
Егер үрдіс жүйелік функция wait () қолданатын болса,
pid = wait(stat_addr);
мұнда pid - өз орындалуын тоқтатқан потомктің идентификация
Мысал: exit() функциясының қолданылуы
main()
{
int child;
if ((child = fork()) == 0)
{
printf("PID потомка %d\n",getpid());
pause(); /* приостанов выполнения
сигнала */
}
/* родитель */
printf("PID потомка %d\n",child);
exit(child);
}
Ядро өздерін жойған үрдістердің ұрпақтарын іздейді, егер олар
Егер wait функциясын орындап жатқан үрдістің өзін әлі
Қалыпты жағдайда (яғни алдын ала ештеңе келісіп қойылған
5.1 Wait функциясының алгоритмі
Кіріс мәлімет: аяқталған үрдіс арқылы қайтарылатын, status
сақтау үшін арналған айнымалы адресі
шығыс мәлімет: ұрпақ идентификаторы және exit функциясының
қайту коды
{
Егер (wait функциясын шақырған үрдістің ұрпақтары жоқ
қайтару (қатені);
үшін (;;) /* ішкі
{
Егер (wait функциясын шақырған үрдістің ұрпақтары бар
және олар өздерін жойған болса)
{
Кез-келген ұрпақты таңдау;
Оның анасына ұрпағының орталық процессордың ресурстарын
пайдаланып жатқаны жайлы мәлімет жіберу;
ұрпақтың кестеде алып тұрған орнын босату;
қайтару (ұрпақ идентификаторын, ұрпақпен шақырылған еxit
функциясының қайту кодын);
}
егер (үрдістің ұрпағы жоқ болса)
қатені қайтару;
тоқтату, үзу (ұрпақтың аяқталуына дейін);
}
}
Мысалы, егер қолданушы 1-программаны параметрмен және параметрсіз қосатын
Егер қолданушы программаны параметрмен қосатын болса (яғни argc>1)
1-программа. Wait функциясын қолдану және «Ұрпақтың қайтыс болуы»
#include
main(argc,argv)
int argc;
char *argv[];
{
int i,ret_val,ret_code;
if (argc >= 1)
signal(SIGCLD,SIG_IGN); /*«Ұрпақтың қайтыс болуы» деген
сигналды қарамау */
for (i = 0; i < 15; i++)
if (fork() == 0)
{
/* үрдіс-ұрпақ */
printf("үрдіс-ұрпақ %x\n",getpid());
exit(i);
}
ret_val = wait(&ret_code);
printf("wait ret_val %x ret_code %x\n",ret_val,ret_code);
}
2-программа. «Ұрпақтың қайтыс болуы» "деген сигналдың пайда болу
#define MAX_ARGS 16
#define MAX_LENGTH 256
#include
#include
#include
#include
int run_p (char* const args [])
{
pid_t npid = fork ();
if (npid > 0) { return npid; }
else if (npid == 0) {
execvp (args[0], args);
return -1;
} else { abort (); }
}
int main (void)
{
char str [MAX_LENGTH];
char* buf[MAX_ARGS];
int i, j, status;
for (i = 0; i < MAX_ARGS; i++)
printf ("mysh# ");
while (fgets (str, MAX_LENGTH, stdin))
{
str[strlen(str)-1] = '\0';
char* p = (char*) malloc (MAX_LENGTH);
p = strtok (str, " ");
if (!strcmp (p, "exit")) { exit (0); }
for (i = 0; i < MAX_ARGS; i++)
{ buf[i] = (char*) malloc (MAX_LENGTH); }
for (i = 0; p != NULL; i++)
strcpy (buf[i], p);
p = strtok (NULL, " ");
}
buf[i] = NULL;
status = run_p (buf);
if (status < 0)
{ fprintf (stderr, "mysh: %s: command not found\n",
exit (1); }
wait (&status);
free (p);
for (i = 0; i < MAX_ARGS; i++)
printf ("mysh# ");
};
exit (0);
}
ҚОРЫТЫНДЫ
Linux ұсынатын жабдықтардың әр түрлілігін ескере отырып, ол
Linux-ті оқып, үйренуге қиындаққа түседі, сондықтан онымен жұмыс
Linux бір уақытта бірнеше қолданушының жұмысын қамтамасыз
Linux қазіргі уақытта қорытқы end-user желісі ретінде қолданылмайды,
Linux-ті оқып, үйренуге қиындаққа түседі, сондықтан онымен жұмыс
Linux серверде қондырылғандықтан, бұл – сервермен берілетін сапалық
Linux ресурстарды қажет етпейді және де ескі i386
Терең оқылған Linux әрқашан да адамның білімін жоғары
Сонымен, Linux – бұл эксплуатация кезінде өте жеңіл
Linux – Unix-тің жемісі.
Linux – ең мықты операциялық жүйелердің бірі!
Қолданылған әдебиеттер тізімі:
1. Арман Данеш “Linux Red Hat 7.1”. Полное
2. С. Ивановский “Операционная система Linux”. Позновательная книга
3. Р. Петерсен “Linux” 2000. Руководство по операционной
4. К. Петцке “Linux от понимания к применению”.
5. Ч. Рассел “Unix и Linux”: книга переводов.
6. У.Девис. “Операционные системы”. Москва, “Мир”,1980ж.
7. Гардеев А.В., Молчанов А.Ю. “Системное программное обеспечение”.
8. Э. Немет, Г. Снайдер - «Руководство системного
Киев 2000.
9. Д. Бэкон, Т. Харрис - «Операционные системы»,
- 20 -




Скачать


zharar.kz