OS Lab Book
OS Lab Book
1برگرفته از دعای عرفه منسوب به امام حسین (ع) ..." .و هیچ ترديدی ندارم كه تو از كارهای بزرگ ،از من خواهي پرسید"... .
فهرست مطالب
مقدمه 7 ...................................................................................................................................
ربانمه هفته اول :آشنايي عمومي با لینوكس 9 .............................................................................................
ربانمه هفته دوم :آشنايي با واسط كاربری خط فرمان لینوكس 11 ......................................................................
ربانمه هفته سوم :مديريت نرم افزارها و پردازش ها 13 ....................................................................................
ربانمه هفته چهارم :پیکرهبندی سخت افزار 15 .............................................................................................
ربانمه هفته پنجم :سیستم مديريت فايل ها 17 .............................................................................................
ربانمه هفته ششم :مراحل باال آمدن لینوكس و كار با ويرايشگر وی.آی21 ............................................................ .
ربانمه هفته هفتم :مديريت سیستم لینوكس 23 ...........................................................................................
ربانمه هفته هشتم :ارتباط بین پروسس ها – سیگنال27 ..................................................................................
ربانمه هفته نهم :ارتباط بین پروسس ها – سمافور 29 ...................................................................................
ربانمه هفته دهم :ارتباط بین پروسس ها – حافظه مشترک 31 .........................................................................
مقدمه
مییام شمیید را در دوران تحص ی د دورک رشراسش ییر حدر ییلود ییش )1372درس آزمشیشییهشک
مامر ره صفحه رل ل را به دو بخش تقم م رسل و هر بصورت انجشم یک پروژک پ شدک شزی یک نرمافزارِ
بخش تو ط یک رشربر مجزا ا افشدک اود ،گذرانلم .پروژکای ره تجربه بم شر جیلی بیرای ریشر بیش وهفیههش
آورم ریه بمی شر بیش مامر بش یووییس 2بل ی بود .پس در رشر صسعار تجرب شت برنشمه شزی در طح
داا .ماوجه الم ره ارثر مفشه م ایر دادک ایلک در مام شمد مطشبق دانش رمب الکام در درس
.لذا آاسشیر دانشجویشن رشمپ وتر بیش یووییس نوااه الک ا مام شمد بش ن م نهشهر به یوییس درس
در نظرم بم شر ضروری آمل.
مام شمد مشغو بیودم و بخصیوا از یش از ش 1375ره گشههشهر به تلریس آزمشیشهشک
آزمشیشهشک را به آایسشیر بیش اصیو 1386ره بصورت ملاوم این درس را ارائه رردک ام ،امش بخشر از وه
بصورت چسل پشیشنهای 3اخاصشا مر دادم .بمار رشر ابالا بکشرگ ری یوییس /لینوک مام شمد یوییس
حترم سش )4بود ره هم شه در راکانلازی و ا افشدک از آن بر روی رشمپ وترهشی اخصر 5بش مشیکتت بمی شری
روبرو مر الم و ه چ ماخصصر برای د مشکتت در د ارس نبود .راضر رردن دانشجویشن به ییشدگ ری
هییم بمیی شر داییوار بییود زیییرا در محیی ط رییشر خییشر از دانشییهشک فقییط خییشنوادک مشیکرو ییشف یوووییس
و ایدروید ،7دانشیجویشن حداس/ویسلوز) 6مورد ا افشدک بود .خوابخاشنه امروزک بش تو عه ریشربردی لینوک
ااا شق مسش بر به آاسشیر بش این خشنوادک دارنل.
و تسیوش ب شیاری در د یارس ا ی . مام شمید بیش یتول امروزک بمار رشر ملر آزمشیشهشک
را بکیشر به رنیل. دانشجویشن مر توانسل بش ا افشدک از مجشزی شزی ،بر روی رشمپ وتر اخصر خود لینووک
ا افشدک از توزیع الیو لینوک 8بر روی شفظه هشی هشبد مد نظ ر ر.دی 9.و یش فلش یو.اس.بر 10.ن ز میر
ریه ایین توزیعهیشی الییو توانل گزیسه مسش بر برای تمرین هشی شدک آزمشیشهشک بشال .الباه الزم بذرر ا
هشی جلی تر مسش یب ن میاسل .همچسی ن ا یافشدک از برای تمرین هشی برنشمه شزی و بعضر فعشل لینوک
بر روی رشمپ وترهشی آزمشیشهشک رشمپ وتر فیراهم نمخه بشرگذاری ابکهای 11و یش م زرشر راک دور 12لینوک
ره نحوک بکشرگ ری آنتش در آزمشیشهشک آموزش دادک خواهل ال. الک ا
2
UNIX.
3
Linux.
4
Terminal.
5
PC (IBM compatible Personal Computer).
6
Microsoft DOS / Windows OS.
7
Android.
8
Live Linux distribution.
9
CD.
10
USB flash memory.
11
Network booting with Linux.
12
Linux remote desktop.
13
LPIC-1: Linux Professional Institute Certification, Study Guide, 2nd Edition, Roderick W. Smith,
2009 by Wiley Publishing, Inc., Indianapolis, Indiana.
14
Review Questions.
15
IPC: Inter-Process Communication.
16
Signal.
17
Shared Memory.
18
Semaphore.
19
[email protected]
ریشمپ وتر میرور مام هشی شمد در وزک هشی مخالف صیسع بکشرگ ری در این جلمه وضع
مر اود و نقش و تشث ر ل سورس در هر یک از این وزکهش ب شن مر گردد .همچس ن یشخاشر یخ افزاری و
نرمافزاری ابررایشنه هش ح وپررشمپ وترهش ) و بخصوا دربشرک ابررایشنه دانشهشک توض حشتر ارائه مر اود.
شکل :1مرجع اين جلسه اساليدهای يک كارگاه آموزش در اف.تي.پي " HPC-Linux-WS94-9.pdf" .است.
شکل :2میزان نفوذ سیستم های عامل در حوزه های مختلف صنعت.
کار عملی:
مومر و تخصصیر ل سیورس میر و صرفش به اسشخ این جلمه از آزمشیشهشک بلون رشر ملر ا
پردازد.
تمرین اه:
oاز دانشجویشن خوا اه مر اود ره نمخه هشی جلیل گزاراشت ارائه الک در این جلمیه را بیر روی
ب شبسل و تغ رات شصد الک را در جلمه بعل ارائه دهسل. ایسارن
مام شمد ن ز همشنسل هر نرمافزار ن شز دارد تش بیش خیشر از خیودش ارتبیشط داایاه بشایل .انمیشن
بعسوان یک رشربر از طریق ابزارهشی ورودی و خروجر حوا ط رشربری )20مر توانل بش یک نرمافزار رشر رسیل.
ماسیر) در اگر ابزارهشی ورودی و خروجر از نوش ماسر بشاسل حنظ ر صفحه رل ل و یش صفحه نمشیش در شلی
.فیرام ن بصیورت ییک میان د یاوری ایسصورت ارتبشط رشربر بش نرمافزار از نوش خط فرمشن ح ) CLI21ا
وارد الک و خروجر بصورت خط به خط ماسر نمشیش دادک مر اود.
باوانل بش ابزارهشی ورودی و خروجیر گراف کیر ح نظ یر میوس و صیفحه نمیشیش رشربر ممکن ا
گراف کر ) بش نرمافزار ارتبشط یشبل ره در ایسصورت ارتبشط از نوش وا ط گراف کر ح ) GUI22ا ی .همچسی ن
یک نرمافزار اشیل الزم داااه بشال ره دیهر نرمافزارهش ن ز بش آن رشر رسسل .در ایسصورت نرمافزار اجشزک مر
دهل تش از طریق یک وا ط برنشمه نویمر ح ) API23دیهر نرمافزارهش بش آن تعشمد داااه بشاسل.
وا ط خط فرمشن ل سورس بسشم اِد ح ) Shell24اسشخاه مر اودِ .
اید هیشی بمی شر بیرای ل سیورس
.در این جلمه نحوک رشر بیش ایین پو یاه و ره بَش bash25 /یکر از معروفارین آنتش ا شخاه الک ا
هشی آن آاسش مر اویم. بعضر از ابالایر ترین فرام ن و هشبل
20
UI: User Interface.
21
CLI: Command-Line Interface.
22
GUI: Graphical User Interface.
23
API: Application Programming Interface.
24
Linux shells: the programs that accept and interpret text-mode commands.
25
bash: The GNU Bourne Again Shell.
کار عملی:
اید و آایسشیر بیش اجیزای آن مثید ا یتن خیط فرمیشن ح ) promptو دریشفی
نحوک فعش ریردن ِ
اطت شت دربشرک یک فرمشن ح .) man
هش فرمشن هشی رشر بش فشید هش و فتر
ls, cd, pwd, mkdir, cat, more/less, history, find
فرمشن هشی رشر بش پردازش فشید هش
wc, nl, grep, sed
رشر بش ماغ ر هشی مح طر
echo, $, export
نحوک تغ ر ورودی ویش خروجر فرمشن هش تو ط پشیپ ح ) pipeو تغ ر مم ر ح .) redirection
| >, >>, <, <<,
تمرین اه:
. oخوانلن فصد او راشبچه LPIC-1و انجشم آزمشیششتر ره در مان راشبچه ب شن الک ا
oخودآموزی از طریق تتش برای پش خ به واالت آخر فصد او راشبچه .LPIC-1
26
Environment Variable such as “PATH”.
.رل یه مرا ید ایشمد نصیب ،رسایر و میلیری نرم افزارهش ا مام شمد موظف به ملیری
بهونه ای انجشم گ رد ره تلاخد رشر بش دیهر نرم افزارهش زمشن اجرا ،بروزر شنر و ذف نرم افزار مر بشیم
ماشکد از مجمو یه ای از فشیید بلکه ممکن ا ایجشد نشود .یک نرم افزار صرفش یک فشید هشبد اجرا ن م
هشی اجرایر ،فشید هشی تسظ مشت و پ کرک بسلی و فشید هشی بشنک اطت شتر بشال .برای فظ یکپیشرچهر ایین
ره ابزارهشی خودرشری بکشر گرفاه ایونل .همچسی ن مام هش الزم ا مجمو ه فشید در هسهشم اناقش ب ن
بلل د ا افشدک بت سه از مسشبع ،مومش نرم افزارهش از راشبخشنه هشی پویش 27و یش راشبخشنه هشی ااارارر 28ا افشدک
ره بیش توجیه مر رسسل .لذا هسهشم نصب ،بروزر شنر و یش ذف یک نرم افزار ن شز به ابزارهشی خودرشری ا
خودرشر آنتش را ن ز انجشم دهل. به وابماهر یک نرم افزار به راشبخشنه ااارارر ،رسار و ملیری
نیرم افزارهیش را توزیع هشی مخالف ل سورس از طریق مفتومر بسیشم بمیاه نیرم افیزاری 29میلیری
بماه هشی نرم افزاری تتش دارنل تش در همه مرا د نصیب ،بروزر یشنر بعتلک مر گ رنل .ابزارهشی ملیری
و یش ذف نرم افزار بصورت خودرشر بکمک رشربر ب شیسیل .ایین ابزارهیش ،بشنیک اطت یشتر از فشیید هیشی نیرم
وابماهر هشی 31ب ن نرم افزارهش و راشبخشنه هش را بعتیلک مام تت ه مر رسسل ،ملیری افزارهش 30موجود در
میام هیش م ه رنل و از طریق اطت شت رسارلر نظ ر چکمشم 32یکپشرچهر فشید هش را در هسهشم اناقیش بی ن
ریه بماه هشی نرم افزاری ل سیورس ا ی فظ مر رسسل .آر.پر.ام 33.یکر از معروفارین ابزارهشی ملیری
امروزک ابزارهشی بم شری نظ ری یشم 34در توزیع هشی ل سورس از آن بترک مر برنل.
.پرو س از لحظیه مام شمد ا و رسار پردازش/پرو س هش متمارین وظ فه یک ملیری
مییر اییود .امییروزک ابزارهییشی گراف کییر نظ ییر مییام شمیید رساییر و مییلیری ایجییشد تییش نییشبودی تو ییط
میام را پرو یس هیشی تمکمس جر 35در خشنوادک ویسلوز به رشربران این امکشن را مر دهسیل تیش وضیع
مششهلک رسسل و رسار هشیر بر آنتش ا مش رسسل .پرو س هش مر توانسل رسار ترم سش حصفحه رل ل و صیفحه
27
A dynamic-link library (DLL) is a module that contains functions and data that can be used by
another module (application or DLL in MS Windows). "*.dll" files.
28
In Linux, a shared library is a file containing object code that several a.out files may use
simultaneously while executing. "*.so" files.
29
Software package.
30
Installed file databases.
31
Dependencies.
32
Checksums.
33
RPM Package Manager (RPM): originally Red Hat Package Manager; now a recursive acronym.
34
YUM a front-end to RPM which eases the process of obtaining and installing RPMs from
repositories and help in resolving their dependencies. YUM used in Fedora, CentOS 5, Red Hat
Enterprise Linux 5 and above, Scientific Linux, Yellow Dog Linux and Oracle Linux.
35
Task Manager, previously known as Windows Task Manager, is a task manager, system monitor,
and startup manager included with Microsoft Windows systems.
سرفصل مطالب:
آاسشیر بش مفشه م بماه نرم افزاری و رشر بش ابزارهشی مرتبط .
رشر بش پرو س هش.
کار عملی:
نحوک ا افشدک از فشید هشی آر.پر.ام .ح ) RPMو ابزار یشم ح .) YUM
فرمشن هشی رشر بش پرو س هش
ps, uname, top, nice, kill, pstree
پ ش زم سه ح )foregroundو پس زم سه ح )backgroundپرو س هش و آاسشیر بش وضع
آنتش نحوک تغ ر وضع
"fg, bg, jobs, "&", "ctrl+z
ایجشد یک پرو س ره بش بمان اِد هم به رشرش ادامه دهل
nohup
تمرین اه:
. oخوانلن فصد دوم راشبچه LPIC-1و انجشم آزمشیششتر ره در مان راشبچه ب شن الک ا
oخودآموزی از طریق تتش برای پش خ به واالت آخر فصد دوم راشبچه .LPIC-1
36
Foreground Linux process.
37
Background Linux process.
.هسهشم که تغذیه الکاریکر ییک ریشمپ وتر خ افزارهش ن ز ا مام شمد موظف به ملیری
برهرار مر اود حرشمپ وتر را روان مر رس م) ،پردازنلک بصورت خودریشر بشیوس/لَخی افزار 38را از شفظیه
فقطخوانلنر 39برداااه و بر روی شفظه اصلر اناقش مر دهل و آنرا اجرا مر رسیل .لَخی افزار بعیل از انجیشم
تسظ مشت اول ه بر روی د اهشک هشی ورودی/خروجر اصلر حنظ ر صفحه رل ل ،صفحه نمشیش ،میوس ،شفظیه
میام مام شمد میر ایود و بعیل از ییشفان آن ،فرآیسیل اناقیش هشی جشنبر و )...وارد مر له جماجوی
رسایر اجیرا را بیه مام شمد ) را اروش مر رسل و در نتشیی شمد به شفظه اصلر ح بشر الن/بوت الن
آن مر پشرد.
افزارهیش اهیلام به تسظ مشت بمی شری از رشررردهیشی یخ امش م اوان ل از طریق لَخ افزار نمب
رس ل .ل سورس بعل از بوت الن ،از رشررردهشی لَخ افزار ا افشدک نمیر رسیل و ممیاق مش خیودش رسایر را
مجشزی بیه آدرس " "/procیشخاه میر ایود ریه مرگ رد .بعل از بوت الن ل سورس یک فتر بل
ماسشظر بش فشید در شفظه جشنبر مثد دیمک ن می .درون فشیید هیشی ایین ممی ر تسظ میشت ل سیورس بیرای
خ افزارهش وجود دارد.
بعضر خ افزارهش فقط در زمشن خشموش بودن رشمپ وتر مر توانسل جشبجش اونل ،ره به آنتش اتصیش
رد 40گفاه مر اود ،نظ ر پردازنلک ،شفظه اصلر و شفظه دیمک داخلر .بعضر دیهر خ افزارهش را میر
توان در ن روان بودن رشمپ وتر جشبجش ررد ،اتصش گرم.41
تیش لَخی افزار/درایور آن د یاهشک برای فعش الن یک د اهشک ،بعل از اتصش ف زیکیر الزم ا ی
مام شمد اسش شیر و بشرگذاری اود .ل سورس به این دراییورِ د یاهشک اصیطت شً "رِرندمیشجو "42 تو ط
مرگویل .بعل از فعش الن رِرندمشجو ِ یک د اهشک ،فشید مخصوا 43ماسشظر آن د اهشک در مم ر " /dev
", /udevایجشد مر اود و تسظ مشت آنتش در مم ر " "/etc/udevهرار مرگ رد .امروزک ارثر د اهشک هیش از
مام شمد انجشم مر اود .اگر نوش وصدرن/رشررن 44هماسل ،ره فعش رردن آنتش بصورت خودرشر تو ط
اید ل سیورس و ییش بیش
د اهشهر از نوش وصدرن/رشررن نبشال ،نصب رِرندمشجو آن بشیل تو ط د یاورات ِ
اجرای یک برنشمه خشا راکانلاز آن د اهشک انجشم اود.
فعش رردن شفظه هشی جشنبر نظ یر دیمیک یتوک بیر مرا ید فعیش ریردن د یاهشک ،الزم ا ی
فرآیسلی اضشفه ن ز انجشم گ رد .اِفراز دیمک 45هبد از هرگونه بترکبرداری از آن بشییل انجیشم ایود .شفظیه
38
Firmware or BIOS (Basic Input Output System) for x86 or Extensible Firmware Interface (EFI) or
OpenFirmware in Apple.
39
Read-Only Memory (ROM).
40
ColdPlug.
41
HotPlug.
42
Kernel Modules: stand-alone driver files stored in /lib/modules.
43
Special files: an interface for a device driver that appears in a file system as an ordinary file.
44
Plag & Play.
45
Disk Partitioning: the creation of one or more regions on a hard disk or other secondary storage.
سرفصل مطالب:
آاسشیر بش تسظ مشت خ افزارهش .
رشر بش شفظه جشنبر.
کار عملی:
ح )/procنظ ییر وهفییه هییش نحییوک رییشر بییش لَخ ی افزار ح ) BIOSو تسظ مییشت موجییود در فتر ی
ح ،)interruptsآدر تشی ورودی/خروجیر ح )ioportsو رشنشلتیشی د ار یر ممیاق م بیه شفظیه
ح.)dma
فرمشن هشی رشر بش رِرندمشجو هش
lsmod, insmod, rmmod, nice, kill, pstree
آاسشیر بش اِفراز و فرم رردن دیمک ح )fdisk
رشر بش شفظه جشنبر
mount, /etc/fstab, umount, df, du
تمرین اه:
. oخوانلن فصد وم راشبچه LPIC-1و انجشم آزمشیششتر ره در مان راشبچه ب شن الک ا
oخودآموزی از طریق تتش برای پش خ به واالت آخر فصد وم راشبچه .LPIC-1
46
Filesystem Hierarchy Standard.
47
Case sensitive.
48
Special files.
49
Access Control List.
50
Owner.
51
Group.
52
Others.
53
Create date and time.
54
Last Access date and time.
55
Last Modify date and time.
فشید ل سورس و شخاشر لمله مراتبر آن . سرفصل مطالب:آاسشیر بش مام ملیری
و مجوزهشی آنتش. رشر بش فشید و فتر
رپر و آرا و فشید هش.
56
Hard Link or Copy.
57
Soft Link.
تمرین اه:
. oخوانلن فصد چتشرم راشبچه LPIC-1و انجشم آزمشیششتر ره در مان راشبچه ب شن الک ا
oخودآموزی از طریق تتش برای پش خ به واالت آخر فصد چتشرم راشبچه .LPIC-1
مام شمد را مر یشبل و در شفظه بشرگذاری رردک و اجرا مر رسل. هماه یک بوتلودر در نتشی
هماه ل سورس د اهشک هشی اصلر را آمشدک شزی رردک و اِفراز ریشیه /پشرت شین روت را بیشال میرآورد .و در
) /sbin/initرا اجیرا مررسیل .بیلین ترت یب اولی ن برنشمه راکانیلاز ل سیورس ح بصیورت پ شفیر نتشی
پرو یس بیش ایمشرک 1یشخاه مرایود .اییین برنشمیه راکانیلاز ل سیورس ،مطیشبق تسظ مییشت ح ) /etc/inittab
برنشمههشی دیهر را اجرا مررسل .امش م اوان ل تسظ مشت هسهشم بشال آملن ل سورس را بماه به ن شز تغ ر ده ل.
در ریه ل سیورس بصیورت یرویس/خلم طو اجرا 61در ل سورس نششن دهسلک امکشنشتر ا
به یک طح اجرا وارد خواهل ال ریه تو یط میلیر .ل سورس بصورت پ شفر ش ارائه اجرا رردک ا
در یش .طو اجرا از 0تش 6امشرکگیذاری ایلک انیل .یطح اجیرای 0وضیع مام هشبد تسظ م ا
ره فقط میلیر مام ا تک رشربرک بودن .طح اجرای 1وضع مام ا خشموش الن/اشتدان
بلون وا ط گراف کر ریشربر و چسلرشربرک بودن ا مام م اوانل بش آن رشر رسل .طح اجرای 3وضع
. چسلرشربرک بودن بش وا ط گراف کر ا طح اجرای 5وضع
این امکشن در ل سورس وجود دارد ره بر ا شس ایسکه ل سورس م خواهل وارد رلام طح اجرا اود،
د ییاورات مافییشوتر اجییرا اییود .بمییاه بییه توزیییع ل سییورس ممیی ر اییین برنشمییه هییش مشییخص مییر اییود
ح ) ) /etc/init.d/rc, /etc/rc.d/rc, /etc/rc?.d (? a runlevelو یش از ابزار ntsysvا افشدک اود.
58
Master Boot Record (MBR).
59
Boot Loader (also sometimes called a boot manager).
60
Linux Loader ( LILO ) and GRand Unified Boot loader ( GRUB ).
61
Runlevels.
سرفصل مطالب:
آاسشیر بش مرا د بشال آملن ل سورس .
رشر بش ویرایشهر وی.آی.
کار عملی:
رشر بش تسظ مشت اروش بکشر ل سورس
/etc/inittab, /etc/init.d/rc or /etc/rc?.d/
رشر طو اجرایر ل سورس
runlevel, init, reboot, poweroff
رشر بش ویرایشهر فشید ماسر وی.آی .و اجرای فرام ن پو اه ل سورس از داخد وی.آی.
vi, gedit
تمرین اه:
. oخوانلن فصد پسجم راشبچه LPIC-1و انجشم آزمشیششتر ره در مان راشبچه ب شن الک ا
واالت آخر فصد پسجم راشبچه .LPIC-1 oخودآموزی از طریق تتش برای پش خ به
62
vi is a screen-oriented text editor originally created for the Unix operating system.
63
Dial-up Internet access uses the facilities of the public switched telephone network (PSTN).
64
Multi-User Operating System.
65
Account: data structures and procedures used to identify individual users of a computer.
66
Home directory.
67
a default or primary group.
68
Linux maintains log files that record various key details about system operation.
69
…System logger runs in background and accept data from other servers or programs: syslogd/
سرفصل مطالب:
رشربران در ل سورس . آاسشیر بش نحوک ملیری
مامالگر. آاسشیر بش
در ل سورس. آاسشیر بش نحوک رشر ش
آاسشیر بش نحوک زمشنبسلی رشرهشی بماهای.
70
The Network Time Protocol (NTP) is used to synchronize the time of a computer client or server to
another server or reference time source.
تمرین اه:
. oخوانلن فصد هفام راشبچه LPIC-1و انجشم آزمشیششتر ره در مان راشبچه ب شن الک ا
oخودآموزی از طریق تتش برای پش خ به واالت آخر فصد هفام راشبچه .LPIC-1
شکل :10مرجع اين جلسه اساليدها و كُدهای برنامه زبان سي موجود در اف.تي.پي .است.
71
Inter-Process Communication (IPC).
72
Socket: A data stream sent over a network interface or file system.
73
Pipe: A unidirectional data channel. Data written to the write end of the pipe is buffered by the
operating system until it is read from the read end of the pipe.
74
Remote-Procedure Call (RPC) or Remote-Method Invocation (RMI).
75
Synchronization.
76
Signal.
77
Semaphore.
سرفصل مطالب:
انواش آن. هسش و اسشخ آاسشیر بش مکشن زم
هسش به یک پردازش از خط فرمشن یش برنشمهنویمر. ا وک ار ش
هسش مشخص از خط فرمشن یش برنشمهنویمر. ا وک تسظ م یک تله برای یک
کار عملی:
trap, kill, man 7 signal د اورات:
تمرین اه:
oبر ا شس سیگنال ،یک پرو س تول ل رسسلک بمشزیل ره از صفحه رل ل یک جمله بخوانل و در ییک
رسل .پس یک پرو س مصرف رسسلک بمیشزیل ریه از آن فشیید جملیه را بخوانیل و فشید ماسر ثب
انجشم اود: در نمشیش دهل .ل کن رسار هشی زیر مر بشیم
.1بتفشصله بعل از تول ل ،مصرف انجشم اود .و تش تول ل انجشم نشلک ،نمر توان مصرف ررد.
.2تش محصو هبلر مصرف نشلک ،جمله جلیل خوانلک نشودحتول ل ماوهف اود).
78
Signal: an asynchronous notification sent to a process or to a specific thread within the same process
in order to notify it of an event that occurred.
هسهشمر ره پرو سهش از مسشبع مشارک حماغ ر مح طر ،شفظه اصلر ،فشید و )...بصورت همزمیشن
در د ا شبر به مسبع مشارک دچشر ارایط رهیشبار ایلک 79ریه اگیر بیه در یار ا افشدک مررسسل ،ممکن ا
میام شمید بیه رسار نشونل ،مسبع مشارک و رونل رشری پرو س هش دچشر مشکد جیلی ایود .در درس
. و نحوک رسار نش ه بحرانر 80ار دادک الک ا الک ا تفص د در این بشرک صحب
میام هیشی شمید یمشفور را مشفور 81اسشخاه ترین روش رسایر نش یه هیشی بحرانیر ا ی .
و نحیوک در اخا یشر گیرفان مامر در اخا شر برنشمه یشزان هیرار میر دهسیل .ایسشخ بصورت یک خلم
. مشفور از ل سورس و برنشمه شزی از طریق زبشن هشی مومر نظ ر زبشن ر موضوش این جلمه ا
شکل :11مرجع اين جلسه اساليدها و كُدهای برنامه زبان سي موجود در اف.تي.پي .است.
سرفصل مطالب:
در زبشن ر مشفور آاسشیر بش برنشمه شزی
79
Race condition.
80
Critical Region/Section in source code.
81
Semaphore is a variable or abstract data type used to control access to a common resource by
multiple processes in a concurrent system such as a multitasking operating system.
تمرین اه:
oبر ا شس سمافور ،یک پرو س تول ل رسسلک بمشزیل ره از صفحه رل ل یک جمله بخوانل و در ییک
رسل .پس یک پرو س مصرف رسسلک بمیشزیل ریه از آن فشیید جملیه را بخوانیل و فشید ماسر ثب
انجشم اود: در نمشیش دهل .ل کن رسار هشی زیر مر بشیم
.1بتفشصله بعل از تول ل ،مصرف انجشم اود .و تش تول ل انجشم نشلک ،نمر توان مصرف ررد.
.2تش محصو هبلر مصرف نشلک ،جمله جلیل خوانلک نشودحتول ل ماوهف اود).
ریه هیر مام هشی شمد ملرن بهونهای ا ی شفظه اصلر ح شفظه مجشزی )82در ا وک ملیری
پرو س صرفش به محلودک شفظه اصلر اخاصشصر خلوش مر توانل د ار ر داااه بشال .بیه بیشرت دیهیر
شدی ه چ بخشر از شفظه اصلر نمیر توانیل میشب ن پرو یس هیش بیه اایاراک گذاایاه ایود .لیذا در شل
پرو س هش بشیل از دیهر مسشبع نظ ر فشید ح شفظه جشنبر) برای ارتبشط دادکای ا یافشدک رسسیل و ایین در یشلر
. د ار ر به شفظه اصلر و شفظه هشی جشنبر بم شر زیشد ا ره تفشوت ر ا
شفظیه مشیارک را بیه ایرایط و رسار هیشی خشصیر خیلم مام هیشی شمید میلرن تحی امش
پرو س هش ارائه مر دهسل .بعسوان مثش ا افشدک از رل پبرد 83بعسوان یک شفظه اایارارر بی ن پرو یس هیش
و نحوک در اخا شر گرفان شفظه مشارک از ل سیورس و برنشمیه یشزی از طرییق زبیشن .اسشخ مر وم ا
. هشی مومر نظ ر ر موضوش این جلمه ا
شکل :12مرجع اين جلسه اساليدها و كُدهای برنامه زبان سي موجود در اف.تي.پي .است.
82
Virtual Memory: is a memory management technique that provides an "idealized abstraction of the
storage resources that are actually available on a given machine" which "creates the illusion to users of
"a very large (main) memory.
83
Clipboard: is a data buffer used for short-term data storage and/or data transfer between documents
or applications used by cut, copy and paste operations and provided by the operating system. It is
usually implemented as an anonymous, temporary data buffer, sometimes called the paste buffer, that
can be accessed from most or all programs within the environment via defined programming interfaces.
کار عملی:
شفظه مشارک رشر بش نمونه برنشمه هشی زبشن ر جت
تمرین اه:
oبر ا شس سمافور و حافظه مشترک ،یک پرو س تول ل رسسیلک بمیشزیل ریه از صیفحه رل یل ییک
رسل .پس یک پرو س مصرف رسسلک بمشزیل ریه از آن جمله بخوانل و در یک بشفر مشارک ثب
انجشم اود: در بشفر مشارک جمله را بخوانل و نمشیش دهل .ل کن رسار هشی زیر مر بشیم
.1بتفشصله بعل از تول ل ،مصرف انجشم اود .و تش تول ل انجشم نشلک ،نمر توان مصرف ررد.
.2تش محصو هبلر مصرف نشلک ،جمله جلیل خوانلک نشودحتول ل ماوهف اود).
Qazvin – IRAN
June 2018