ثبمسَ تْبيل
داًؾگبٍ فٌْتی
اففِبى
داًؾکذٍ ثشق ّ
کبهپيْتش
دستورکار
آزمايشگاه
سيستم عامل
1
عشفقل ّ رمٍْ اسصيبثي دسط آصهبيؾگبٍ عيغتن ّبهل
فِشعت آصهبيؼُب:
دس آى setupعيغتن ّ اّوبل تغيريا 1:
آصهبيؼ
ّ windowsرمٍْ کبس ثب آى 2:
آصهبيؼ
پيبدٍعبصي زمِب ثب ++ Cيب #C 3:
آصهبيؼ
registryدس ّيٌذّص 4:
آصهبيؼ
آؽٌبيي ثب Linux 5:
آصهبيؼ
ثشًبهًَْيغي دس حميو Linux 6:
آصهبيؼ
زبميك دس هْسد عيغتنّبهل آصهبيؾگبُي ّ Nach.O.S 7:
آصهبيؼ
ًقت آى
آصهبيؼ 8: پيبدٍعبصي زمِب دس Nach.O.S
رمٍْ اسصيبثي:
الف: کْئيض: 5 سمشٍ
ة: گضاسػکبس: 8 سمشٍ
ج: پشّژٍ:
لغوت اّل: آصهبيؼ 7: 2 سمشٍ
زنْسي ثب لغوت دّم: آصهبيؼ 8: 5 سمشٍ (زبْيل ثَ فْس
اهتسبى ؽفبُي)
2
فيرست:
.....................
.1 آصهبيؼ 1: Setupعيغتن ّ اّوبل تغيريا دس آى
................................
............
1 1-1 Setupعيغتن ّ اّوبل تغيريا دس آى
..........................
......
4 1-2 ساٍ اًذاصي عيغتن ّ ًمؼ DOSدس آى
........................................................
....
6 1-3 حميو ) (Environmentدس DOS
....................................................................................
8 1-4 دعتْسکبس
.........................................................
.....
8 1-2-1 کبس ثب ثشًبهَ Setup
............................................................
........
8 1-2-2 ساٍ اًذاصي عيغتن
..........................
.....
01 آصهبيؼ 2: تٌَين کشدى کبهپيْتشُبي ؽخقي
.....................
01 ................................................................ 2-1 پيؾآگبُي
..............................................................
.........
11 2-2 تٌَيوب ًشهبفضاسي
......................................................
11 . 2-2-1 خبيل کشدى Recycle Bin
................
................................
21 2-2-2 پبک کشدى فِشعت Windows/Temp
...........................................................
......
21 2-2-3 کبُؼ الالم Start Up
.............................................................
........
31 2-2-4 Defragکشدى ديغک
.....................
................................................................
31 2-2-5 Scan Disk
................................
...........
41 2-2-6 Uninstallکشدى ثشًبهَ ُبي لذميي
.....................
41 2-2-7 ززف ثشًبهَ ُبي غريمشّسي )(Disk Cleanup
...........................................................
......
41 2-2-8 ذبيٌَ کشدى Swapfile
.....................
61 2-2-9 کبُؼ اًذاصٍ عشثبس ًبؽي اص گشافيک
.....................
................................
71 2-2-11 ثَ کبس گريي REGCLEAN
.....................
................................................................
71 2-2-11 پبيذاسي
.....................
................................
81 2-2-21 خبيل کشدى cacheهشّسگش
................................................................
...........
81 2-3 تَيوب عختبفضاسي
....................
................................................................
81 2-3-1 تٌَين BIOS
...................
91 2-3-2 ًقت دسايْسُبي خذيذ ثشاي کبس گشافيکي
.................
................................................................
91 2-3-3 افضايؼ RAM
2-3-4 حمذّد کشدى زذاکثش اًذاصٍ زبفََ فيضيکي ثشاي Disk
...............
................................................................................................
02 Cache
.....................
................................................................
12 2-4 صهبى هؾبّسٍ
........................................................................................
...
22 دعتْس کبس:
..........................
.....
32 آصهبيؼ3- چٌذٍّيفِبي ّ چٌذزمي دس ّيٌذّص
.....................
................................................................
32 3_1 پيؼ آگبُي
.....................
................................................................
42 3-2 چٌذٍّيفِبي
......................................................
42 . 3-2-1 چٌذٍّيفِبي زبت DOS
.................
42 3-2-2 چٌذٍّيفِبي ًْذببي ّ چٌذٍّيفِبي غريًْذببي
...........................................................................................
......
62 3-3 چٌذزمي
................................................................
...........
72 3-3-1 هْوبسي چٌذ زمي
.....................
72 ................................ 3-3-2 دسدعشُبي کبس ثب ًخ
3
.........................
....
82 3-3-3 اهکبًب ّيٌذّص ثشاي کبسثب زمِب
.....................
92 3-4 هْاسد اعتفبدٍ اص چٌذٍّيفِبي ( ّ چٌذزمي)
..............................................................
.........
03 3-5 ثشًبهٌِْيغي چٌذزمي
..............................
.........
03 3-5-1 اصمبد ّ ثَ اشببم سعبًذى يک ًخ
..................
................................
13 3-5-2 هْلك کشدى ّ اص عشگريي ًخ
.....................
................................................................
13 3-5-3 تمذم زمِب
................................
..............
23 3-6 شمبٌُگغبصي زمِب ثَ کوک مسبفْسُب
.............................................................
........
23 3-6-1 مسبفْسُبي کالعيک
...................
................................................................
23 3-6-2 مسبفْس mutex
.....................
................................................................
23 3-6-3 event object
.....................
................................
23 3-6-4 ًبزيَ حبشاًي )(critical section
................................................................
................
33 3-7 يک ثشًبهَ سمًَْ
............................................................................................
.......
33 دعتْسکبس
.....................
................................
43 آصهبيؼ4- کبس ثب ّ Registryيٌذّص
................................................................
...........
43 4 _1 ثبًک دادُبي ثجت
.....................
................................................................
43 4_1_1 تبسخيچَ
.....................
................................
53 4_1_2 تْشيف ثبًک دادُبي ثجت
..................
................................
53 4-1-3 هْوبسي ثبًک دادٍ اي ثجت
.....................
63 4-1-4 عبختبس ثبًک دادُبي ثجت دس Windows
.....................
................................................................
73 4-2 عيغتن OLE
.............
73 4-2-1 هفبُين اّليَ دس اًتمبل دادُِب دس Windows
...........................................................
......
83 4-2-2 هْشيف عيغتن :OLE
................................
............
83 4-2-3 سّػ ليٌک کشدى دس عيغتن OLE
................................................................
.............
93 4-2-4 اخغبم هتذاخل
.............................................................
........
93 4-2-5 هيبًربُب )(shortcuts
..............................
.........
04 4-2-6 سّػ ادغبم کشدى دس عيغتن OLE
آصهبيؼ 5- آؽٌبيي ثب عيغتوْبهل ّ Linuxثشًبهٌِْيغي دس آى
................................................................................................
.....................
04
.....................
14 5-1 هْشيف عيغتن ً ّ LINUXگبُي ثَ ّيژگيِبي آى
.....................
................................
14 5-1-1 تبسخيچَ عيغتن ّبهل unix
.....................
................................
24 5-1-2 تبسخيچَ عيغتوْبهل linux
...................
................................
34 5-2 ؽشُّ کبس ثب عيغتن ّبهل linux
......................................................
34 . 5-2-1 ّسّد ثَ عيغتوْبهل
................................................................
...........
54 5-2-2 ساٌُوبي عيغتن
.....................
................................
54 5-2-3 عيغتن فبيل () file system
................................
................
84 5-2-4 رمٍْ تغيري اخبصٍ ُبي دعرتعي
...............................................................
..........
94 5-2-5 فشايٌذ ()process
.....................
................................................................
94 5-2-5-1 تْبسيف
...............
94 5-2-5-2 اخشاي فشايٌذُب دس پظ صهيٌَ ()background
4
..................
................................................................
05 5-2-5-3 ُغتَ linux
................
................................................................
05 5-2-5-4 پْعتَ linux
................................................................
.............
05 5-2-6 ثشًبهَ ًْيغي
.....................................................
15 5-2-6-1 ( gccهرتخن صثبى )c
.....................
15 ................................ 5-2-6-2 اؽکبلضدايي ثب gdb
5
آ ر آزمايش 1: Setupسيستم ً اعمال تغيريا
دس آى 1-1 Setupعيغتن ّ اّوبل تغيريا
ثشًبهَ ّ Setupتغيري پيکشثٌذي عيغتن خضء DOSيب ّ Windows
يب عيغتوِبي ّبهل ديگش ًيغت، ّيل ثَ دليل تؤثري فشاّاًي
کَ ايي ثشًبهَ ثش سّي کبسکشد کل عيغتن ّ خبقْؿ عيغتن
ّبهل ًقت ؽذٍ دس کبهپيْتش داسد، اص ايٌشّ خْة اعت لجل
اص ؽشُّ آصهبيؾِب ثب Setupعيغتن آؽٌب ؽْمي.
دس کبهپيْتشُبي لذميي ،XTثشاي تْيني پيکشثٌذي عيغتن (ًُْ
گشدًَُّبي ديغک ًشم، ديغک عخت ّ کبس گشافيکي ّ ...) اص
يکغشي اتقبل دٌُذٍ ) (Jumperاعتفبدٍ هيؽذ، ّيل ثَ دليل
هؾکال کبس، دس کبهپيْتشُبي خذيذتش ،ATاص يک زبفََ 46
ثبييت ثَ ًبم CMOSاعتفبدٍ هيؽْد. يک ثبتشي حمتْيب ايي
زبفََ سا دس هْلِ خبهْػ ثْدى کبهپيْتش زفٌ هيکٌذ. ثشاي
ديذى ّ دعتکبسي ايي زبفََ ثشًبهَُبي خمتلفي ًْؽتَ ؽذٍاًذ
کَ هْشّفرتيي آهنب هتْلك ثَ ؽشکتِبي ُ AWARDّ AMIغتٌذ.
ايي ثشًبهَُب ثَ ًبم Setupهؾِْسًذ ّ دس داخل زبفََ ROM
کبهپيْتشُب لشاس داسًذ. هْلِ ساٍ اًذاصي عيغتن، پيغبم
ساٌُوبيي دس هْسد چگًْگي ّسّد ثَ ثشًبهَ Setupسمبيؼ دادٍ
Setup هيؽْد. ايي پيغبم ّ شمچٌني رمٍْ هؾبُذٍ ّ تغيري اىالّب
ّ اهکبًبتي کَ Setupدس اختيبس کبسثش هيگزاسد، ثَ ًُْ Setup
ثغتگي داسد.
ال
دس ايٌدب لغوتِبي هِوي کَ هْوًْ دس ُش ّ Setupخْد داسًذ،
هْسد حبث لشاس هيگريًذ. ايي لغوتِب ؽبيذ دس عيغتن مشب
هْخْد ًجْدٍ يب ٌّْاى ديگشي داؽتَ ثبؽٌذ ّ يب ايٌکَ
ّولکشدي هتفبّ ثب آًچَ دس ايٌدب ؽشذ دادٍ هيؽْد، اص
خْد ًؾبى دٌُذ.
: STANDARD CMOS SETUPؽبهل اىالّبتي دس هْسد لغوتِبي هِن
عخت افضاسي اعت. ايي اىالّب ؽبهل :
تبسيخ ّ عبّت عيغتن
1
گشافيکي هؾخقب ديغکِبي عخت، گشدًَّ ُبي ديغک ًشم، کبس
ّ زبفََ.
ؽشايو لفل کشدى عيغتن ) (HALT ONدس ٌُگبم ساٍ اًذاصي: دس
فْس فْبل ثْدى ايي گضيٌَ (ثب همذاس ّ ) ALL ERRORSثشّص
خيبُبي عخت افضاسي، عيغتن لفل هيکٌذ. ثشاي هثبل اگش ايي
گضيٌَ فْبل ثْدٍ، ديغک عخت يب ففسَ کليذ ّفل ًجبؽذ
عيغتن دس ٌُگبم ساٍ اًذاصي لفل هيکٌذ.
ً : BIOS FEATURES SETUPبم ديگش ايي لغوت دمکي اعت ADVANCED
CMOS SETUPثبؽذ کَ هؾتول ثش لغوتِبي صيش اعت:
:Virus warningهْلْي کَ ايي گضيٌَ فْبل ثبؽذ، ، BIOSليبُ
ساٍاًذاص ( ّ Boot sectorخذّل خبؾِبي ) (Partion Tableديغک عخت سا
صيش ًَش هيگريد ّ اگش ثشًبهَ اي لقذ تغيري آهنب سا داؽتَ
ثبؽذ، عذ ساٍ آى ثشًبهَ هيؽْد ّ ثب ًؾبى دادى يک پيغبم،
تقوين کبسثش سا ثشاي اداهَ کبس ّ تغيري لغوتِبي رکش ؽذٍ
يب تْلف ّوليب هيپشعذ.
: CPU Internal Cacheتْيني هيکٌذ کَ آيب زبفََ هنبى داخل
پشداصًذٍ کبهپيْتش فْبل ثبؽذ يب ًَ.
: CPU External Cacheتْيني هيکٌذ کَ آيب زبفََ هنبى سّي ثشد
افلي فْبل ثبؽذ يب ًَ.
تْخَ: دس دّ هْسد فْق، زبفََ هنبًي کَ تْشيف هيؽْد ثبيذ
ّخْد داؽتَ ثبؽذ.
:Quick Power on Self Testاگش ايي گضيٌَ فْبل ثبؽذ، BIOSاص ثشخي
تغتِبي عخت افضاسي دس هْلِ ساٍ اًذاصي عيغتن فشفًَش هي-
کٌذ.
: Memory Parity Checkثب فْبل ثْدى ايي گضيٌَ ثيتِبي هْاصًَ
) (Parity bitزبفََ تغت هيؽًْذ کَ ثبّث کٌذي عيغتن ّيل اىويٌبى
کبس هيؽْد.
: Swap Floppy Driveثب فْبل ثْدى ايي لغوت، اهکبى تغيري ًمؼ :A
ّ: Bثَ ٌّْاى ديغک ساٍ اًذاص ّخْد داسد.
: Boot Up Floppy Seekثب فْبل ثْدى ايي گضيٌَ، هْلِ ساٍ
اًذاصي، ًُْ گشدًَُّبي ديغک ًشم چک هيؽْد.
:Boot Sequenceايي گضيٌَ هؾخـ هيکٌذ دسهْلِ ساٍ اًذاصي، دس
کدب ّ ثَ چَ تشتييب (اّل ديغک عخت، ديغک ًشم يب ديغک
ليضسي) ثَ دًجبل عيغتن ّبهل گؾتَ ؽْد.
ّ : Boot Up NumLock Statusمْيت کليذ NumLockسا دس هْلِ ساٍ-
اًذاصي هؾخـ هيکٌذ.
: Boot Up System Speedثبّث تٌَين عشّت عيغتن دس ٌُگبم ساٍ
اًذاصي هيؽْد.
: Typemathic Rate Settingاگش ايي گضيٌَ سا غريفْبل کٌيذ اص
همبديش پيؼفشك
) (TypemathicRate=12char/sec,TypemathicDelay=250msecاعتفبدٍ هيکٌذ. اگش
ايي گضيٌَ فْبل ثبؽذ ثب اعتفبدٍ اص گضيٌَ ُبي Typemathic
2
( Delayتؤخري ثني اّلني سّيذاد کليذ ّ سّيذادُبي هکشس ثْذ اص
آى ثشزغت هيلي ثبًيَ) ّ ( Typemathic Rateتْذاد تکشاس کبساکرت
دسثبًيَ) هيتْاى عشّت ففسَ کليذ سا کٌرتل کشد.
:Security Optionثب اعتفبدٍ اص ايي لغوت هيتْاى تْيني کشد کَ
سهضّجْس، فمو هتْلك ثَ لغوت Setupثبؽذ يب ساٍ اًذاصي
عيغتن سا ًيض ؽبهل ؽْد. دمکي اعت دس عيغتن مشب ًبم Password
Checking optionثشاي ايي لغوت هٌَْس ؽذٍ ثبؽذ.
: XXXXX Shadowفْبل کشدى ايي گضيٌَ ُب ثبّث هيؽْد حمتْيب
ROMهشثْه ثَ Videoيب ديگش ًمبه زبفََ ،ROMثَ زبفََ
RAMکپي ؽْد کَ هْخت افضايؼ عشّت عيغتن خْاُذ ؽذ(XXXXX
دس ُSetupبي خمتلف فشق هيکٌذ).
:Power MANAGEMENT SETUPثب اعتفبدٍ اص ايي لغوت هيتْاى
تْاى هقشيف کبهپيْتش سا کٌرتل کشد. ثذيي تشتيت کَ ثْذ اص
هْيين کَ ثب عيغتن کبس ًکشدمي، کبهپيْتش ثَ ىْس هذ
خْدکبس هقشف ثشق سا تب زذ هْسد ًَش هب کبُؼ دادٍ، تب
ّليت کَ کليذي سا فؾبس ًذادٍ يب هْط سا زشکت ًذُين، دس
تْعو کبسثش ّ زبلت خبهْؽي هْلت ثبلي دببًذ (ايي هذ
ثْعيلَ زبال پيؾٌِبدي Setupتْيني هيؽْد) ّ الصم ثَ تزکش
power اعت کَ ثشاي اعتفبدٍ اص ايي اهکبًب ثبيذ لغوت
managementفْبل ثبؽذ. همبديشي کَ هي تْاى تٌَين کشد ثَ
لشاس صيش اعت:
:Doze Modeثْذ اص عپشي ؽذى صهبى تْيني ؽذٍ، عبّت عيغتن دس
کٌذتشيي زبلت خْد لشاس خْاُذ گشفت، دس زبيل کَ عبيش
لغوتِب عشّت ّبدي خْد سا زفٌ هيکٌٌذ.
: Standby Modeثْذ اص عپشي ؽذى صهبى تْيني ؽذٍ، ففسَ سمبيؼ
خبهْػ خْاُذ ؽذ.
: Suspend Modeثْذ اص عپشي ؽذى صهبى تْيني ؽذٍ، شببم لغوتِب
جبض پشداصًذٍ خبهْػ خْاٌُذ ؽذ.
: HDD Power Downثْذ اص عپشي ؽذى صهبى تْيني ؽذٍ، ديغک عخت
خبهْػ هيؽْد.
: IDE HDD AUTO DETECTIONثب اعتفبدٍ اص ايي لغوت هي تْاى
اىالّب ديغک عخت (هثل ٍشفيت، تْذاد عيلٌذسُب ّ ...)سا
ثيْس خْدکبس اعتخشاج کشد.
:Password SETTINGثب اعتفبدٍ اص خبؾِبي خمتلف ايي گضيٌَ،
هيتْاى ثشاي ثشًبهَ Setupيب کل عيغتن سهض ّجْس تْيني کشد.
اگش لغويت زبت ٌّْاى USER PASSWORDّ SUPERVISOR PASSWORD
ّخْد داؽتَ ثبؽذ ّ ُشدّ لغوت فْبل ثبؽٌذ، فمو ثب سهض
ّجْس SUPERVISORهيتْاى اص شببم لغوتِبي Setupاعتفبدٍ کشد.
: LOAD BIOS DEFAULTSهْلْي کَ ثشد افلي کبهپيْتش هؾکلي
داؽتَ ثبؽذ ّ لقذ ّيتيبثي داؽتَ ثبؽيذ، ثب اعتفبدٍ اص
ايي گضيٌَ هيتْاى همبديش پيؼ فشك BIOSسا ثَ CMOSثبس
کشد. ايي کبس ثش سّي STANDARD CMOS SETUPتؤثريي ًذاسد.
3
: LOAD SETUP DEFAULTSاص ايي گضيٌَ ثشاي ثبس کشدى ذبرتيي
زبليت کَ دس ROM BIOSرخريٍ ؽذٍ اعت، اعتفبدٍ هيؽْد. اخشاي
ايي گضيٌَ ًيض ثشسّي STANADRD CMOS SETUPتؤثريي ًذاسد.
:EXIT WITHOUT SAVING ,SAVE AND EXITثب اعتفبدٍ اص چٌني
لغوتِبيي هيتْاى اص ثشًبهَ Setupخبسج ؽذ ّ ثبتْخَ ثَ
گضيٌَاي کَ اًتخبة هيؽْد مجو تغيريا زبفََ CMOSسا کٌرتل
کشد.
ًکتَ هِن : ثشاي دعرتعي ثَ اىالّب زبفََ ،CMOSدسگبٍ )(Port
مشبسٍ 70Hثشاي آدسط دُي ّ دسگبٍ 71Hثشاي دسيبفت ّ اسعبل
اىالّب اعتفبدٍ هيؽْد. ثشًبهَ صيش سا دس ًَش ثگرييذ:
MOV AL,10H
OUT 70H,AL
IN AL,71H
INT 20H
گشدًَّ ُبي ديغک اثتذا آدسط ( 10Hآدسط هشثْه ذببىالّب
ًشم) سا ثَ دسگبٍ 70Hاسعبل ّ عپظ اص دسگبٍ دادٍ )(71H
ALهٌتمل هيکٌذ. ثْذ اص گشدًَُّب سا ثَ ثجب اىالّب
اًتمبل اىالّب ، 4 ثيت کن اسصػ ،ALکذ هشثْه ثَ هؾخقب
گشدًَّ دّم ) : 4 ّ (Bثيت پشاسصػ،گشدًَّ اّل ) : (Aسا داسا
ُغتٌذ. الصم ثَ رکش اعت کَ حمتْيب CMOSسا هي تْاى اص
ىشيك دسگبٍ دادٍ آى تغيري داد، ّيل ايي کبس ثبّث ذبن خْسدى
کذُبي فست ) (Checksumهيؽْد ّ دمکي اعت جمجْس ثَ ثبسکشدى پيؼ-
فشمِبي BIOSثَ زبفََ CMOSؽْيذ. ثَ يبد داؽتَ ثبؽيذ کَ
ايي کبس خلْي خشاثکبسيِبي ازتوبيل هْخْد دس STANDARD CMOS
SETUPسا سميگريد ّ آى لغوت سا ثبيذ ثَ فْس دعيت تقسير کشد
کبهل اذمبم (ُيچْلت ًْؽنت CMOSسا لجل اص کغت هِبس
ًذُيذ).
1-2 ساٍ اًذاصي عيغتن ّ ًمؼ DOSدس آى
هْلْي کَ عيغتن سا سّؽي هيکٌيذ يب آى سا دّثبسٍ ساٍ هي-
اًذاصيذ، ثشًبهَ هْخْد دس آدسط 0000: FFFFاخشا هيؽْد. ايي
ّول خضء ّيژگيِبي سيضپشداصًذٍ خبًْادٍ 6818 ايٌتل ثْدٍ،
سثيي ثَ ً DOSذاسد. ايي آدسط دس ًبزيَ ROMلشاس داسد ّ
زبّي يک دعتْس پشػ ثَ ثشًبهَ تغت کٌٌذٍ عيغتن ّ عشّيظ
ساٍ اًذاص ّالِ دس ROMاعت. تْعو ايي تغت کٌٌذٍ ّ ساٍ
اًذاص، کبسُبي صيش اذمبم هيؽْد:
گشم) (Warm Bootاذمبم گريد). تغت عيغتن (اگش ساٍ اًذاصي
(ثْني اص تغتِبي عيغتن اذمبم سميگريد).
اًتمبل ثشًبهَ ساٍ اًذاص ّالِ ثش سّي اّلني ليبُ)(Sector
ديغک ثَ آدسط 7: C00Hاص زبفََ.
اًتمبل کٌرتل کبس ثَ ثشًبهَ ساٍ اًذاص هْخْد دس ديغک.
4
ثشًبهَ ساٍ اًذاص هْخْد سّي ديغک کبسُبي صيش سا اذمبم هي
دُذ:
تغت ايي هْمُْ کَ آيب ايي ديغک يک ديغک ساٍاًذاص ُ DOSغت
يب ًَ؟ ايي کبس ثْعيلَ خْاًذى اّلني ليبُ ؽبخَ سيؾَ اذمبم
هي پزيشد. ثَ ايي تشتيت کَ دّ پشًّذٍ MSDOS.SYS ّ IO.SYS
سا خغتدْ هيکٌذ ّ اگش ايي پشًّذٍُب ّخْد ًذاؽتَ ثبؽٌذ
پيغبم خيبيي فبدس هيؽْد.
اًتمبل دّ پشًّذٍ رکش ؽذٍ ثَ زبفََ (دس ثْني ًگبسؽِب،
IO.SYSپشًّذٍ MSDOS.SYSسا دس زبفََ ثبس هي کٌذ).
اًتمبل کٌرتل ثَ . IO.SYS
ال
ثشًبهَ ّ IO.SYSوً اص دّ لغوت جمضا تؾکيل ؽذٍ اعت:
: BIOSيک جموَّْ اص گشداًٌذٍُبي )ّ (Device driverعبيل
خبًيب(هبًٌذ چبپگش) ّ ثشًبهَُبي همذاسگزاسي اّليَ اعت
(ايي همذاسگزاسيِب فمو دس هْلِ ساٍ اًذاصي هي تْاًذ
اذمبم ؽْد). BIOSتْعو ؽشکت عبصًذٍ کبهپيْتش دس عيغتن
تْجيَ هيؽْد.
: SYSINITکَ ثْعيلَ هبکشّعبفت صبيَ ؽذٍ اعت ّ تْعو ثشًبهَ
همذاسگزاسي اّليَ BIOSفشاخْاًذٍ هيؽْد. SYSINITهمذاس
زبفََ دس دعرتط سا تْيني هيکٌذ ّ عپظ خْد سا ثَ اًتِبي
زبفََ هٌتمل هيکٌذ ّ ُغتَ – DOSيْين MSDOSSYSسا اص حمل
اّليَ ثبسؽذًؼ ثَ حمل هنبيي (کَ ثبالخشٍ دس آذمب لشاس خْاُذ
ً
گشفت) اًتمبل هيدُذ، ثيْسيکَ MSDOS.SYSتمشيجب سّي حمل
اّليَ IO.SYSلشاس هيگريد. دس ايي زبلت کٌرتل ثَ ُغتَ DOS
عپشدٍ هيؽْد. ُغتَ DOSکبسُبي صيش سا اذمبم هيدُذ:
همذاسگزاسي اّليَ خذّهلبي داخلي ّ ًْازي کبسي .DOS
همذاسگزاسي ثشداس ّلفَُبي 20Hتب . 2FH
تؾکيل ليغت پيًْذي هشثْه ثَ گشداًٌذٍُبي همين (Resident
) ّ Driverهمذاسگزاسي اّليَ ُش گشداًٌذٍ (خبقْؿ ثشداسُبي
ّلفَ هتٌبٍش ثب آى گشداًٌذٍ).
ثشسعي Disk Parameter Blockکَ زبّي اىالّبتي دسهْسد ديغکِبي
هْخْد دس عيغتن هيثبؽٌذ.
تْيني ثضسگرتيي اًذاصٍ ليبُ ) (Sectorکَ دس عيغتن هْسد
اعتفبدٍ لشاس خْاُذ گشفت.
اصمبد چٌذيي Drive Parameter Blockثشاي ًگِذاسي اىالّب گشدًَّ-
ُبي ديغک)(Disk Drive
اختقبؿ زبفََ هيبًگري ) (Bufferثشاي ديغکِب.
سمبيؼ پيغبم هشثْه ثَ زك کپي). MSDOS، (Copyright
ثشگشداًذى کٌرتل ثَ . SYSINIT
زبل SYSINITثب اعتفبدٍ اص عشّيغِبي ّبدي پشًّذٍ دس
،MSDOSپشًّذٍ Config.sysسا ثبس ّ اخشا هيکٌذ. ّخْد ايي
پشًّذٍ اختيبسي اعت ّ ثشاي عفبسؽي کشدى ) (Customizeعيغتن
ال
ثَ کبس هيسّد. هثً هيتْاى ثب Config.sysگشداًٌذٍُبي عخت
5
افضاسي خذيذ يب زبفََُبي هيبًگري ديغک يب هفغش دعتْسا
خذيذ سا ثَ عيغتن هْشيف کشد.
اگش SYSINITپشًّذٍ Config.sysسا پيذا کشد، آًشا دس زبفََ
ثبس کشدٍ، شببم زشّف آًشا ثَ زشّف ثضسگ تجذيل ّ خو ثَ خو
اخشا هيکٌذ. دس ايي هْلِ، عبختبسُبي اىالّبتي الصم ثشاي
زبفََُبي هيبًگري تْشيف ؽذٍ ّ عپظ زبفََ الصم ثَ آهنب
اختقبؿ دادٍ هيؽْد.
گشداًٌذٍ دعتگبُِبي رکش ؽذٍ دس ً Config.sysيض ثَ زبفََ ثبس
ؽذٍ، تبثِ همذاسدُي اّليَ آهنب اخشا هي ؽْد. ثشًبهَ
همذاسدُي اّليَ، همذاس زبفََ هْسدًيبص گشداًٌذٍ سا ثَ
SYSINITگضاسػ کشدٍ، گشداًٌذٍ سا ثَ ليغت پيًْذي گشداًٌذٍ
ُبي هْخْد امبفَ هيکٌذ.
ثْذ اص ايٌکَ شببم گشداًٌذٍ ُبي دعتگبُِب ًقت ؽذًذ،
SYSINITشببم پشًّذٍ ُب سا هيثٌذد ّ پشًّذٍُبي هشثْه ثَ
پبيبًَ ) ،1(CONچبپگش) ،2(PRNصبي) ّ3(NULدعتگبُِبي خٌيب )(AUX
4سا ثَ تشتيت ثَ ٌّْاى ّسّدي-خشّخي، حمل سمبيؼ خيب، حمل چبپ
ّ دعتگبُِبي خٌيب اعتبًذاسد ثبص هيکٌذ.
دس اًتِب ، SYSININTهفغش دعتْسا سا ثَ زبفََ ثبس کشدٍ،
خْد سا اص ثني هيثشد ّ عپظ کٌرتل سا ثَ دعت هفغش (کَ دس
اکثش هْاسد Command.comاعت) هيدُذ.
1-3 حميو ) (Environmentدس DOS
حميو يک هيبًگري) (Bufferاعت کَ DOSثشاي رخريٍعبصي هتغريُبي
هِن هبًٌذ هغري ) ّ (Pathاّالى، دس اختيبس داسد. کبسثشاى ّ
ثشًبهَُبي ديگش ًيض هي تْاًٌذ دس ايي حميو هتغريي سا اصمبد
ّ يب هتغريُبي هْخْد سا دعتکبسي کٌٌذ. اص ايي هتغريُب هي-
تْاى ثشاي اسعبل اىالّب ثني پشًّذٍُبي دعتَاي )(Batch File
ًيض اعتفبدٍ کشد.
ايي هتغريُب ًمؼ هِوي دس تٌَين ) (Tune Upعيغتن داسًذ.
ثيْسيکَ هيتْاى ثب آهنب هْاسد صيش سا تٌَين کشد:
هغري خغتدْي ثشًبهَ ُبي اخشايي ثب هتغري . PATH
آخشيي دعتْس ّاسد ؽذٍ تْعو کبسثش ثب هتغري . Prompt
ال
حمل خبؼ غريهمين هفغش دعتْسا ( DOSهْوًْ ) Command.comثب
هتغري . COMSPEC
رمٍْ ّولکشد دعتْس COPYثب هتغري . COPYCMD
رمٍْ ّولکشد دعتْس DIRثب هتغري . DIRCMD
1
Console
2
Printer
3
Null
4
Auxiliary
6
DOSثَ ىْس پيؼ فشك، 652 ثبيت ثشاي حميو کٌبس هي گزاسد
سا ثب (الجتَ ايي همذاس لبثل تغيري اعت). شمچٌني کلوب
زشّف ثضسگ دس حميو خْد هيچيٌذ. ثشاي ديذى حميو، دعتْس SET
سا اص پبي اّالى DOSاخشا کٌيذ. ثب دعتْسا صيش هي تْاى
يک هتغري حمييي سا دعتکبسي کشد:
ثشاي اصمبد هتغري OS_LABثب همذاس : IUT
C:\>WORKS>SET OS_LAB=IUT
ثشاي تغيري همذاس هتغري ثَ : COMPUTER
C:\>WORKS>SET OS_LAB=COMPUTER
ثشاي ززف هتغري : OS_LAB
C:\>WORKS>SET OS_LAB
ثب اعتفبدٍ اص سمبد % کَ دس اثتذا ّ اًتِبي ًبم هتغري
حمييي لشاس دادٍ هيؽْد، هيتْاى اص هتغريُبي حمييي دس
ال
پشًّذٍُبي دعتَاي اعتفبدٍ کشد. هثً ثشاي اعتفبدٍ اص
هتغري حمييي PATHدس پشًّذٍ ُبي دعتَاي هي تْاى اص %%PATH
اعتفبدٍ سمْد.
7
1-4 دعتْسکبس
1-2-1 کبس ثب ثشًبهَ Setup
تزکش: شببم هْاسد هشثْه ثَ Setupثبيذ ثب زنْس هشثي
آصهبيؾگبٍ اذمبم ؽْد. دس موي، اگش گضيٌَاي دس Setupعيغتن
مشب ّخْد ًذاسد اص آصهبيؼ آى هْسد فشفًَش کٌيذ.
ثشاي ّسّد ثَ ثشًبهَ Setupدس عيغتن مشب چَ کبس ثبيذ کشد؟
ثشًبهَ Setupعيغتن مشب تْعو چَ ؽشکيت ًْؽتَ ؽذٍ اعت؟
ديغک عخت سا يبدداؽت کٌيذ. آيب هيتْاًيذ ايي هؾخقب
هؾخقب سا تغيري دُيذ؟ اگش هيتْاًيذ، چَ گضيٌَُبيي سا
خْد ثشًبهَ Setupپيؾٌِبد هيکٌذ؟
هؾخقب زبفََ افلي ) (RAMعيغتنتبى سا يبدداؽت کٌيذ (ًُْ
ّ زدن)؟
ثَ چَ سّؽي هيتْاى ديغک عخت سا ثَ عيغتن هْشيف کشد؟
ثب تغيرياتي کَ دس Setupهيدُيذ کبسي کٌيذ کَ هْلِ ساٍ
اًذاصي عيغتن، اّل ديغک عخت ثشاي ّخْد يب ّذم ّخْد
عيغتن ّبهل ثشسعي ؽْد. تغيريي سا کَ دس Setupثْخْد آّسدٍ
ايذ، ثٌْيغيذ.
ثشاي عيغتن خْد ّ ثشًبهَ Setupسهض ّجْس ثگزاسيذ تب افشاد
ديگش ًتْاًٌذ ّاسد ثشًبهَ Setupؽًْذ، ّيل ثب سهضّجْس
ثتْاًٌذ ّاسد عيغتن ؽًْذ. اگش چٌني اهکبًي دس Setupعيغتن
مشب ّخْد ًذاسد، ايي گبم سا اذمبم ًذُيذ. تْخَ: پظ اص
ب
اذمبم ايي گبم، زتوً سهض ّجْس سا اص سّي عيغتن ثشداسيذ.
آيب ثذّى اعتفبدٍ اص ثشًبهَ ،Setupاهکبى تغيري حمتْاي
زبفََ ّ CMOSخْد داسد؟
تزکش: پظ اص اذمبم آصهبيؼ، Setupسا ثَ زبلت اّليَ آى
ثشگشداًيذ.
1-2-2 ساٍ اًذاصي عيغتن
ثشًبهَ صيش سا ثب اعتفبدٍ اص Debugثٌْيغيذ ّ آًشا ثب ًبم
Boot1.comرخريٍ کٌيذ.(زشّف ثْذ اص "; " ًجبيذ ّاسد ؽًْذ):
0=POP DS;DS
0=]274[:MOV [0472],DS;DS
JMP FFFF:0000;Reset
ثشًبهَ ليغت 1-2 سا تب اثتذاي دعتْس پشػ سدگريي )ّ (Trace
همذاس DSسا يبدداؽت کٌيذ.
ثب اعتفبدٍ اص ثشًبهَ ،Mapلغوت Bios Parameterهؾخـ کٌيذ اعن
ثبيت 274 چيغت. عپظ ثشًبهَ Boot1.comسا اص پبي اّالى DOS
اخشا کٌيذ.
8
چگًْگي ّولکشد ثشًبهَ ّ ًُْ ساٍ اًذاصي سا ثب رکش دليل
ثيبى کٌيذ.
عيش دّم ليغت 1-2 سا ثَ فْس صيش تغيري دُيذ:
4321,]2740[MOV WORD PTR
ثْذ اص مجو ثشًبهَ تغيري يبفتَ ثب ًبم ّ Boot2.comخشّج اص
،Debugآًشا اخشا کٌيذ. ًُْ ساٍ اًذاصي چيغت؟چشا؟
ثب Debugيک ثشًبهَ 2 ثبييت ثٌْيغيذ کَ ّلفَ 19Hسا فذا
ثضًذ. آًشا ً Boot3.comبهيذٍ ّ اخشا کٌيذ. ًتيدَ چيغت؟
ثب اعتفبدٍ اص هٌْي ،Assemblyلغوت ،Low Memory Usage ّ ROM Bios
اص ًشم افضاس NGاىالّب خمتقشي دس هْسد ّلفَ مشبسٍ ّ 19H
ثبيت 274:0 زبفََ ثذعت آّسيذ.
9
کامپيٌترىاي شخصي آزمايش 2: تنظيم کرر
ُذف
آؽٌبئي ثب ّْاهل تبثريگزاس ثش کبسايي کبهپيْتشُبي ؽخقي
تْاًبئي تٌَين کشدى )ً (Tune upشم افضاسي ّ تب زذّدي عخت
افضاسي عيغتنُبي کبهپيْتشي ثشاي دعتيبثي ثَ کبسايي ثيؾرت
2-1 پيؼآگبُي
ًمؼ کبهپيْتش دس صًذگي کًٌْي ّ کبسُبي سّصهشٍ افشاد
ثششمَ کظ ّامر ّ آؽکبس اعت. اص ىشيف عشّت ّ عِْلت کبس ثب
کبهپيْتشُبي ؽخقي اهشي اعت کَ هيلْة شمَ کبسثشاى اعت.
هؾکال ًبؽي اص افْل کبسايي کبهپيْتشُبي ؽخقي اهشي اعت
کَ ثَ خْثي ثبيذ ّاسعي ؽْد ّ هذًَش ثبؽذ.
يک ًبسمبييت ّوْهي کبسثشاى چٌني عيغتنُبيي ايي اعت کَ پظ
اص هذتي، عشّت کبهپيْتشؽبى کبُؼ يبفتَ اعت يب ايٌکَ
عشّت کبهپيْتشؽبى دس همبيغَ ثب کبهپيْتشُبي هؾبثَ کن
اعت. الجتَ کبُؼ کبسايي کبهپيْتشُب شميؾَ ثَ عبدگي لبثل
زل ًيغت ّ ثَ ّْاهل هتٌُْ ّ هتْذدي ّاثغتَ اعت ّ
دسًتيدَ سميتْاى ساٍزلي ّوْهي ثشاي آى اسايَ داد، اهب ثَ
ًَش هيسعذ ثغيبسي اص ايي هؾکال ّاثغتَ ثَ ّذم آؽٌبيي
کبسثش اص افْل تٌَين فسير ّ ًگَداسي هٌبعت کبهپيْتش
ؽخقي خْد اعت. دس ايي جمبل کْتبٍ عْي ؽذٍ اعت ساُکبسُبي
فسيسي سا ثشاي ذبجْد عشّت ّ کبسايي کبهپيْتشُبي ؽخقي،
شمشاٍ ثب تْمير هيبلت پيؼًيبص دس عيغتنّبهل ّيٌذّص ّشمَ
ؽْد.
کبسايي کبهپيْتش ؽخقي مشب ثَ ّْاهل صيبدي ّاثغتَ اعت اص
مجلَ:
ًُْ ّ عشّت cpu
ًُْ، عشّت ّ اًذاصٍ زبفََُبي افلي ّ هنبى
ًُْ هْوبسي گزسگبٍ I/O
ًُْ کبس ّ VGAکبس ؽجکَ ّ عشّت Hard Disk
عيغتنّبهل
کبسايي serverي کَ ؽجکَ سا ثبسگزاسي هيکٌذ، تؤثريا ؽجکَ ّ
غريٍ
01
داليل کبُؼ کبسايي کبهپيْتشُبي ؽخقي، گشچَ اغلت اّلب
فيضيکي داسد ّ ثيذسًگ ؽخـ سا ثَ فکش ثَسّصسعبًي
کبهپيْتش فْلياػ يب خشيذ عيغتن خذيذ هياًذاصد، اهب ساٍ-
زل ّالْي کبُؼ عشّت کبهپيْتشُبي ؽخقي ثَخبي ثَسّصسعبًي
يب خشيذ کبهپيْتش خذيذ ًگِذاسي فسير ّ تٌَين آى، خِت
ثبصيبثي کبسايي ذبيٌَاػ اعت. گشچَ هْيبس يب هالک هْيين
ثشاي کبسايي ذبيٌَ – ثَ ّلت ّاثغتگي آى ثَ تغيريا هٌبثِ
آصاد کبهپيْتشي دس دعرتط- ّخْد ًذاسد، اهب لْاّذ هْثمي
کَ کبهپيْتش ؽخقي مشب سا ًغجت ثَ ّمْيت هؾخقي ذبيٌَ ًگَهي-
داسد هْخْد اعت. هيبلت هشثْه ثَ ايي هْمُْ سا هيتْاى ثَ
عَ دعتَ تمغين سمْد:
تٌَيوب ًشمافضاسي
تٌَيوب عختافضاسي
تٌَيوب ؽجکَ
دس ايٌدب ثَ هْاسد اّل ّ دّم پشداختَ هي ؽْد.
ًشمافضاسي 2-2 تٌَيوب
ثيؼ اص ُشچيض اثتذا ذبرت اعت ثذاًيذ چَ هيضاى اص هٌبثِ
عيغتوي کبهپييْتش مشب آصاد اعت ّ چَ هيضاى دس زبل
ًجبيذ اعتفبدٍ هيثبؽذ. دس يک ثبال آهذى هْوْيل عيغتن،
هيبًگني دسفذ هٌبثِ آصاد کورت اص 18% ثبؽذ. دس زبلت ايذٍآل
19% هٌبعت هيثبؽذ. اگش هٌبثِ آصاد عيغتن کورت اص 18% ثبؽذ
آًگبٍ عيغتن هؾکل داسد.
2-2-1 خبيل کشدى
Recycle Bin
ُش صهبى يک پشًّذٍ يب عٌذ ززف هيؽْد، ّيٌذّص آى سا ثَ
Recycle Binهيفشعتذ. اهب آًشا اص سّي ديغک پبک سميکٌذ.
ّيٌذّص ايي کبس سا ثَ ٌّْاى يک الذام اهٌييت اص ايي ًَش
کَ دمکي اعت مشب يک پشًّذٍ هِن سا ثَ اؽتجبٍ اص عيغتنتبى
ززف کٌيذ اذمبم هيدُذ. شمبًيْس کَ هيداًيذ ثشاي ززف يک
پشًّذٍ يب فبيل ثَ ىْس هغتمين اص Shift+Delاعتفبدٍ هيؽْد.
زذاکثش ٍشفيت ،Recycle Binکَ همذاس پيؼفشك اى 1/1 اًذاصٍ
Hard Diskمشب اعت، ثَ ىشص خبليب صيبد اعت. ّيٌذّص تٌِب صهبًي
پيؾٌِبد خبيل کشدى Recycle Binسا هيدُذ کَ تٌِب ثَ اًذاصٍ
11% پش ؽذٍ ثبؽذ. ثذيي تشتيت اگش مشب يک Hardثب ٍشفيت 40GB
داؽتَ ثبؽيذ، دمکي اعت ثَ هيضاى 4GBچيض غري الصم کَ فنبي
Hard Diskتبى سا گشفتَ ثبؽذ ّ عشّت آًشا پبيني هيآّسد داؽتَ
ثبؽيذ.
11
خيلي اص اّلب خبيل کشدى Recycle Binثَ عبدگي فشاهْػ هيؽْد.
ثٌبثشايي، ايي ايذٍ خْثي اعت کَ دسفذي کَ دس آى ّيٌذّص
ثَ مشب هيگْيذ کَ Recycle Binسا خبيل کٌيذ کبُؼ دُيذ.
2-2-2 پبک کشدى فِشعت Windows/Temp
ّيٌذّص صهبًي کَ ًشم افضاس خذيذي ًقت هيؽْد يب ثشًبهَ
فِشعيت هيدُذ، اذمبم سا Auto_Save ّول کبسثشدي
(هْوْال )C:\Windows\tempسا ثشاي رخريٍ فبيلِبي هْليت کَ تْعو
عيغتن اصمبد هيؽًْذ، ثَ کبس هيثشد. اًتَبس هيسّد ايي
فبيلِب کَ داساي پغًْذ ُ .tmpغتٌذ صهبًي کَ مشب
کبهپيْتشتبى سا خبهْػ هيکٌيذ، ثيْس خْدکبس اص آى ززف
ؽًْذ اهب، اگش ثشًبهَُبي کبسثشدي ثيْس غري ّبدي خبشبَ
يبثٌذ، دمکي اعت ايي پشًّذٍ ُب آًچٌبى کَ اًتَبس هيسّد
ززف ًؾًْذ. ثْذ اص هذتي ايي ثشًبهَ ُب هيتْاًٌذ Hard Drive
مشب سا ذبن ثشيضًذ ّ دمکي اعت ثَ ّلت ًبعبصگبسي عجت اصمبد
هؾکالتي ؽًْذ. ززف پشًّذٍ ُبي هْليت صهبًي کَ ّيٌذّص
دسزبل اخشا اعت، دمکي اعت خببىش ايٌکَ عيغتن ّبهل دس زبل
اعتفبدٍ اص آهنب ثبؽذ، خيشًبک يب زيت غري دمکي ثبؽذ (اگشچَ
هي تْاًيذ دس ّيٌذّص ُن آهنب سا ززف کٌيذ)، اهب ثشاي
اىويٌبى ثيؾرت ذبرت اعت آهنب سا دس Dos Modeززف کٌيذ. تْفيَ
هي ؽْد آهنبئي کَ ثيؼ اص يک ُفتَ اص صهبى اصمبدؽبى هيگزسد
سا ززف سمبئيذ.
2-2-3 کبُؼ الالم Start Up
چيضي کَ ثيْس حمغْعي هيتْاًذ کبسايي کبهپيْتش ؽخقي مشب سا
زبت تبثري لشاس دُذ، تْذاد ثشًبهَُبئي اعت کَ ٌُگبم سّؽي
ؽذى کبهپيْتش ثبسگزاسي هيؽًْذ (ثيؾرت ًشم افضاسُبي خذيذ
دس ٌُگبم ًقت، ثيْس خْدکبس خْدؽبى سا دس لغوت StartUpثجت
هيکٌٌذ). ُشچَ ثشًبهَ ُبي ثيؾرتي دس گشٍّ ّ StartUpخْد
داؽتَ ثبؽذ، ؽشُّ ثَ کبس ثيؾرت ىْل خْاُذ کؾيذ. ُش
ثشًبهَ فْبل همذاسي اص زبفََ ثب دعتيبثي تقبديف ) (RAMسا
اعتفبدٍ هيکٌذ. ُشچَ ثشًبهَ ُبي ثيؾرتي اص RAMاعتفبدٍ
کٌٌذ، کبهپيْتش کٌذتش کبس خْاُذ کشد. اگشچَ ثغنت شمَ ايي
ثشًبهَ ُب شمَ RAMسا آصاد زمْاُذ کشد، اهب مشب ثبيذ تب
خبئيکَ اهکبى داسد ثشًبهَ ُبي کبسثشدي کورتي سا ثبص ًگَ
داسيذ.
تْخَ:
ثشخي ثشًبهَ ُب شميؾَ ثبيذ فْبل ثبؽٌذ (هثال ّ Systray
ّ )Explorerيب ذبرت اعت کَ شميؾَ فْبل ثبؽٌذ (هثل ّيشّط کؼ
ُب). ثٌبثشايي ٌُگبهي کَ يک ثشًبهَ سا الصم هي ثيٌيذ يب
دس ٌُگبم تشديذ اعت ذبرت اعت آًشا ززف ًکٌيذ.
21
ًکتَ:
اگش ّالْب ًيبصهٌذ يک هيبًرب ثَ ُشکذام اص ايي ثشًبهَ ُب
ُغتيذ، هي تْاًيذ يک Shortcutاص آى ثش سّي Desktopثغبصيذ.
عْدهٌذي ايي کبس دس ايي اعت کَ ُيچ زبفََ همين ثباسصؽي
سا اؽغبل سميکٌذ.
2-2-4 Defragکشدى ديغک
Defragکشدى ً Hard Diskيض سّػ ديگشي ثشاي عشّت خبؾيذى ثَ
کبسايي اعت. صهبًيکَ مشب ثشًبهَ ُبيي سا ثش سّي Hard Drive
خْد ًقت هيکٌيذ ّيٌذّص ثذًجبل ليبُ ُبي جمبّسي ثش سّي
ديغک هيگشدد تب ثشًبهَ سا دس آذمب لشاس دُذ. اگش شمَ لغوت-
ُبي يک فبيل جمبّس ُن لشاس گريًذ، Hard Diskهيتْاًذ ثب
کبسآيي ثيؾرتي ثَ فبيل دعرتعي پيذا کٌذ اهب، اغلت اّلب
عبختبس فبيل دس خالل ًقت ليَْ ليَْ هيؽْد ّ لغوتِبئي اص
ثشًبهَ (کَ دمکي اعت دس هکبى ُبي پيْعتَ هْخْد خب ًؾًْذ)
دس ًمبه تقبديف دس عشاعش ديغک خبي هيگريًذ. ايي اهش ُذ
خْاًذى HardDiskسا ّاداس ثَ گزس اص ُشخبي ديغک ثشاي
دعتيبثي ثَ دادٍ هْسد ًيبص هيکٌذ. ثيْس ىجيْي ايي اهش
ثشاي ثْني کبسُب عجت فشف صهبى ثيؾرتي هيؽْد. Microsoft Defrag
دادٍ ُبي پشاکٌذٍ Hard Diskسا جمذدا ثقْس پيْعتَ دسهيآّسد.
ّالٍّ ثش ايي، ثشًبهَُبئي سا کَ مشب اغلت اعتفبدٍ هيکٌيذ،
خببىش دعرتعي عشيِتش، دس آغبص ديغک لشاس هيدُذ.
ًکتَ:
اگشچَ ّيٌذّص ثَ مشب اخبصٍ هيدُذ دس خالل Defragکشدى Hard
Driveثشًبهَُبي ديگشي ُن اخشا کٌيذ اهب ايي کبس عشّت شببم
ثشًبهَُب سا کبُؼ خْاُذ داد ّ ًيض ثذاى عجت کَ تؾخيـ يک
ديغک ليَْ ليَْ ؽذٍ ثضسگ (اص ًَش دادٍ) عبّتُب ىْل
خْاُذ کؾيذ، ذبرت اعت کَ Defragکشدى سا صهبًي آغبص کٌيذ کَ
سا ُش ثب کبهپيْتش کبس ًذاسيذ. پيؾٌِبد هي ؽْد Defrag
ُفتَ زذالل يکجبس اذمبم داد.
2-2-5 Scan Disk
Scan Diskيکي اص افليتشيي ّ لْيتشيي اثضاسُبيي اعت کَ
تبکٌْى ثشاي تٌَين ذبيٌگي کبهپيْتشُبي ؽخقي ثَ کبس سفتَ
اعت. Hard Drive ، Scan Diskمشب سا اص خيبُبي هتفشلَ ًبؽي اص
تقبدم ّ ًبشمبٌُگي ًشم افضاسُب پبک هيکٌذ. لجل اص اخشاي
Scan Diskاىويٌبى زبفل کٌيذ کَ شمَ ثشًبهَ ُبي کبسثشدي دس
زبل اخشا سا ثغتَ ايذ. شمچٌني، Screen Saverخْد سا غري فْبل
کٌيذ.
ًکتَ:
ذبرت اعت Disk Defragسا ثْذ اص Scan Diskاذمبم دُيذ.
31
2-2-6 Uninstallکشدى ثشًبهَ ُبي لذميي
اگش مشب سّي Hardتبى ًشم افضاسُبيي داسيذ کَ ديگش اعتفبدٍ
سميکٌيذ، هيتْاًيذ آهنب سا ثب ثشًبهَ ُبي Uninstallکَ هْوْال
شمشاٍ ثب آهنب ّشمَ هيؽًْذ يب سّؽِبي ديگش کَ دس دعتْس
کبس رکش خْاُذ ؽذ Uninstallکٌيذ.
2-2-7 ززف ثشًبهَ ُبي غريمشّسي )(Disk Cleanup
ًگبٍ دليك ثَ ثغيبسي اص پيغبمُبي خيب، مشب سا ثَ ايي
ًتيدَ خْاُذ سعبًذ کَ گشچَ ّْاهل ثغيبسي دمکي اعت دس ايي
ساثيَ ّخْد داؽتَ ثبؽٌذ، ثيؾرت آهنب ثَ رمْي داساي يکي اص
هؾکال سايح زبفََ ُغتٌذ. ّاسعي زبفََ کبهپيْتشتبى دمکي
اعت مشب سا اص ثغيبسي اص ايي هؾکال سُبئي دُذ. ثٌبثشايي،
پظ اص مشّس هذيشيت فسير زبفََ افلي مشّس هذيشيت فسير
Hard Diskاعت کَ ثب آى ثشاثشي هيکٌذ. ثشاي هذيشيت فسير
زبفََ عيغتنتبى ثبيذ شمَ ثشًبهَ ُبي غريمشّسي همين دس
زبفََ، ثبصيِب، فًْت ُب ّ دسايْسُب، کَ زبفََ فشاّاًي
اؽغبل هيکٌٌذ سا ثشداسيذ.
2-2-8 ذبيٌَ کشدى Swapfile
دسک ّوْهي اص Swapfile
ثغيبسي اص افشاد شمْاسٍ ايي عْال دس رٌُؾبى ثْدٍ کَ
Swapfileثيْس دليك چيغت ّ يب Virtual Memoryيب زيت Pagefileچيغت.
ثيْس عبدٍ ثشاي تبصٍ کبسُب شمَ آهنب يکي ُغتٌذ. اگشچَ
، ّ يب اعتفبدٍ هيؽْد، اهب مشب شمَ هْوْال اص افيالزب
آهنب سا هبًٌذ يک چيض ّازذ تقْس کٌيذ. دس اداهَ دس ايي
ًْؽتبس خضئيب ّ ؽشذ ثيؾرتي ثشاي کوک ثَ مشب گفتَ خْاُذ
ؽذ. خْاًٌذٍ خْاُذ فِويذ کَ زبفََ جمبصي چيغت ّ چيْس
خْاُذ تْاًغت آًشا ذبيٌَ کٌذ تب کبسآئي کبهپيْتشػ ثيؾرت
ؽْد.
زبفََ جمبصي عيغتوي اعت کَ ثْعيلَ آى هبؽني يب عيغتن ّبهل
تقْس هيکٌذ پشداصؽِبئي کَ ثش ايٌگًَْ فشيت هيخْسد کَ
سّي هبؽني دسزبل اخشا ُغتٌذ، ثب ّخْد ايٌکَ زبفََ افلي
عيغتن حمذّد اعت، زبفََ ثغيبس صيبدي ثشاي اخشا دس اختيبس
داسًذ. عيغتن ّبهل ايي کبس سا ثب رخريٍ آى فمشٍ ُبيي کَ
اخريا ثيؾرتيي اعتفبدٍ سا داؽتَاًذ دس ّ ،RAMرخريٍ فمشٍ-
ُبي کن اعتفبدٍتش، دس ديغک زبفََ ) ،(Virtual Memoryکَ عشّت
کورتي داسد ّ هجبدلَ دادٍُب ثني ايي دّ ٌُگبهي کَ يک
دعرتعي ثَ ديغک فْس هيگريد، اذمبم هيدُذ. شمبًيْس کَ هي-
داًيذ، RAMدس زذّد 111 ثشاثش عشيِتش اص Hard Diskاعت.
ثشاي ذبيٌَ کشدى زبفََ جمبصي خببىش کبسايي ثيؾرت، a static Virtual
Memory Sizeسا جببي Dynamic Virtual Memoryاًتخبة کٌيذ. اگش اص مشب
41
عْال کٌٌذ چشا؟ پبعخ ايٌغت کَ دادٍُبي سّي ديغک پظ اص
صهبًي ليَْ ليَْ خْاٌُذ ؽذ ّ ثذيي تشتيت گزؽت هذ
افضايؼ ّ کبُؼ ( Dynamic Virtual Memoryاص حلبً اًذاصٍ)، ّيٌذّص
سا جمجْس ثَ يبفنت ليبُ ُبي اعتفبدٍ ًؾذٍ ثش سّي ديغک
ثشاي اصمبد زبفََ جمبصي هيکٌذ. اص ىشف ديگش اگش مشب اص static
Virtual Memory Sizeاعتفبدٍ هي کٌيذ، زبفََ جمبصي ىْسي ىشازي
ؽذٍ اعت کَ اص لجل، فنبئي سا ثشاي ًْؽتَ ؽذى دادٍ ُبي
هشثْه ثَ خْد سصسّ کشدٍ اعت.
دس اداهَ، ًکبتي ثشاي اعتفبدٍ هفيذ اص زبفََ جمبصي آّسدٍ
ؽذٍ اعت:
اىويٌبى زبفل کٌيذ کَ تٌَين زبفََ جمبصي ثش سّي گضيٌَ
Staticاعت (ُن همذاس زذاکثش ّ ُن همذاس زذالل آى).
دس فْس اهکبى، زبفََ جمبصي سا دس ديغکي ثغبصيذ کَ کورتيي
هيضاى هشاخَْ سا داسد. داؽنت يک پبستيؾي خذا، آهنن فمو
ثشاي زبفََ جمبصي هيتْاًذ هٌدش ثَ ايي ًتيدَ ؽْد کَ آى
ُشگض ليَْ ليَْ ًؾْد ...
مشب ازتوبال ثبيذ اًذاصٍ Page Fileعيغتنتبى سا افضايؼ دُيذ
ثَ رمْي کَ زذالل 5.2 ثشاثش RAMتبى ثبؽذ. اهب اگش مشب
فنبي Hard Diskثيؾرتي دس دعرتط داسيذ اًگبٍ اًذاصٍ Page File
ثضسگرت، ذبرت خْاُذ ثْد. ثَ خبىش داؽتَ ثبؽيذ اًذاصٍ Page File
هْوْال ثشاي کبسايي ثيؾرت کبهپيْتشُبي ؽخقي هٌبعتتش اعت.
دس اکثش کبسثشاى کبهپيْتش ّخْد داسد کَ ايي تقْس غلو
اًذاصٍ Page Fileپيؼگضيذٍ دس Optimal Settingسا ثَ کبس هيثشًذ.
آى گضيٌَ ثشاي صهبًي ذبيٌَ اعت کَ اًذاصٍ ّ Hard Diskزبفََ
کْچک ثْدًذ. اهب اکٌْى ثب اًذاصٍُبي ثغيبس ثضسگ ّ Hard Disk
زبفََُبي ثضسگ، خْد هذيشييت ّ فشاُن آّسدى زبفََ ثيؾرت
ثشاي اًذاصٍ Page Fileثغيبس هيلْة اعت.
ُشگض ثشاي زبفََ جمبصي ّيٌذّص گضيٌَ Disableسا اًتخبة
ًکٌيذ. صيشا ثْني ثشًبهَ ُبي کبسثشدي ثشاي اخشا ثَ
زبفََ جمبصي ًيبص داسًذ. ثذّى زبفََ جمبصي مشب يک پيغبم
خيب يب ًمـ اعبعي سا دسيبفت خْاُيذ کشد.
ًکتَ:
ُشگض ّعْعَ ًؾْيذ کَ Hardتبى سا تٌِب خببىش افضايؼ Page File
افضايؼ دُيذ. تْفيَ ُبي گفتَ ؽذٍ تٌِب ثشاي صهبًي اعت
کَ مشب اهکبى افضايؼ RAMسا ًذاسيذ ّ عشّت کبهپيْتش مشب
کن اعت. ّيل اهشّصٍ کَ RAMاسصاى اعت، ذبرت اعت آى ُضيٌَ
سا ثشاي افضايؼ RAMفشف کٌيذ.
تٌَين دليك Swapfile
آًچَ تبکٌْى ثيبى ؽذ اىالّبتي ثْد کَ ثشاي ّوْم هفيذ
ثْد. اهب مشب ثٌْْاى يک هٌِذط يب يک هتخقـ کبهپيْتش ًيبص
داسيذ کَ ثب رمٍْ تٌَين دليك ً Swapfileيض آؽٌب ؽْيذ. دس
ايي ساٍ دمکي اعت ًکب تکٌيکي خذيذي سا ًيض ثيبهْصيذ. دس
خْاة ايي عْال کَ " هي چمذس ... ًيبص داسم؟" ُيچ کظ سمي
51
تْاًذ ثَ مشب ثگْيذ کَ ّالْب چمذس اص فنبي Hard Diskسا ثشاي
ً Swapfileيبص داسيذ؛ ُشکغي عيغتن خْد سا ثيْس هتفبّتي
اعتفبدٍ هيکٌذ. يک سّػ هٌبعت ثشاي سبوني دليمي اص ايٌکَ
چمذس ... ًيبص داسيذ دس ريل آهذٍ اعت:
دس ايي صهيٌَ ُغتيذ ثَ اگش هبيل ثَ کغت اىالّب ثيؾرت
آدسط ايٌرتًيت ريل هشاخَْ کٌيذ:
/http://www.rojakport.com/speed_Demonz/Swapfile_Optimization
Swapfile_Optimization_01.htm
System آخشيي ًکتَ ايٌکَ دس ّيٌذّص ً XPيبصي ثَ ازنبس
Pagefileً Monitorيغت ّ ثشاي ديذى همذاس زبفََاي کَ ثَ
اختقبؿ يبفتَ کبيف اعت کليذُبي Delete ّ Alt ،Ctrlسا ثيْس
شمضهبى فؾبس دُيذ ّ عپظ کليذ Task managerسا کليک کٌيذ تب
پٌدشٍ ٍ Windows Task Managerبُش ؽْد.
عپظ عشثشگ Performanceسا اًتخبة کٌيذ تب PF Usage ّ CPU Usage
) (Page File Usageسا شمضهبى ثجيٌيذ.
2-2-9 کبُؼ اًذاصٍ عشثبس ًبؽي اص گشافيک
کبغز ديْاسي
آيب هيداًيذ اعتفبدٍ اص کبغز ديْاسي ثذاى ّلت کَ گشافيک
عٌگيين ثَ کبس هيگريد هٌدش ثَ اص دعت سفنت زبفََ ّ کٌذ ؽذى
عيغتن هيؽْد؟ دس فْستي کَ زبفََ عيغتنتبى حمذّد اعت يکي
اص هْاسدي کَ هيتْاًيذ اص دعت آى سُبئي يبثيذ شمني هْسد
اعت. فکش ًکٌيذ کَ اعتفبدٍ اص کبغذ ديْاسي کْچکرت يب
الگْ سمي تْاًذ تؤثريي داؽتَ ثبؽذ. ُش دّ هْسد فْق زبفََ
صيبدي هقشف هيکٌٌذ.
Screen Saver
شمبًٌذ کبغز ديْاسي عْي کٌيذ اص ثَ کبس ثشدى ُ Screen Saverب
ًيض اختٌبة کٌيذ صيشا کَ ،Screen Saverزبفََ صيبدي سا هقشف
هيکٌٌذ. اگش ًبچبس ثَ اعتفبدٍ اص آى ُغتيذ دعت کن صهبًي
کَ هيخْاُيذ کبهپيْتش سا ثشاي هذتي سُب کٌيذ، ايي کبس
سا اذمبم دُيذ ّ ًيض تْخَ کٌيذ کَ ُ Screen Saverبي پيؼفشك
ّيٌذّص هْوْال ذبرت ُغتٌذ.
سًگ ُب
گشافيکي، هيتْاًيذ ثشاي دعتيبثي ثَ ذبرتيي کبسايي کبس
ّمْذ سمبيؼ ّ ّوك سًگ سا تب آذمب کَ اهکبى داسد پبئني
اًتخبة کٌيذ. هْوْال کبسثشاى کبهپيْتش 24-bit true colorسا
اًتخبة هيکٌٌذ دس زبليکَ ثشاي ثغيبسي اص کبسثشدُب ّ
تمشيجب شببم هْاسد ّولي گضيٌَ 16-bit true colorهٌبعتتش اعت. مشب
ثَ عخيت هيتْاًيذ هتْخَ تفبّ ثني آهنب ؽْيذ. خبقْؿ هْاسدي
کَ ثٌْْاى هثبل اص يک پشداصؽگش لغت هبًٌذ Microsoft Word
اعتفبدٍ هيکٌيذ.
61
کبُؼ Refresh Rate
ثشاي افضايؼ کبسايي عيغتنتبى کنکن ّاسد ًکب سيضتش ؽذٍ
ّ ايي ثبس ثَ Refresh Rateپشداختَ هيؽْد. ثَ صثبى عبدٍ Refresh
Rateتْذاد دفْب تبصٍ ؽذى تقْيش دس ثبًيَ اعت. عْي کٌيذ
اص گضيٌَ higher Refresh Rateاعتفبدٍ ًکٌيذ. مشب هيتْاًيذ ُش
کذام اص optimal Refresh Rateيب default Refresh Rateسا اًتخبة کٌيذ.
دسغري ايي فْس ُ Refresh Rateبي65 يب 16 ثب ا غلت کبهپيْتش
ُب ّ ففسَ سمبيؼ ُب ثَ خْثي کبس هيکٌٌذ. ثب higher Refresh Rate
مشب زمْاُيذ تْاًغت ثَ ثيؾرتيي کبسآئي ففسَ سمبيؼ دعت
يبثيذ.
ززف خضئيب امبيف ففسَ تقْيش
تْفيَُبي رکش ؽذٍ سا خذي ثگرييذ ّ فکش ًکٌيذ کَ کبسُبي
رکش ؽذٍ تؤثري کوي داسًذ. ّيل ثَ ُش زبل اگش RAMصيبدي
داسيذ ّ اص عشّت کًٌْي عيغتنتبى سامي ُغتيذ لضّهي ًذاسد
کَ شمَ ايي تْفيَُب سا ثَ کبس ثگرييذ. هثال اص مجلَ کبسُبي
ديگشي کَ ثشاي ذبجْد عشّت عيغتنتبى هيتْاًيذ اذمبم دُيذ
آًغت کَ گضيٌَُبي صيش سا اًتخبة ًکٌيذ:
دس ّيٌذّص :XP
”“ show shadows under menus
”“ use the following transition effect for menus and tool tips
”“ use the following method to smooth edge of screen fonts
تْخَ:
ثب ايي کبس دمکي اعت اص صيجبئي سمبيؼ مشبيل ُب کبعتَ ؽْد.
ثَ ايي تشتيت مشب خمتبسيذ کَ ثشاي دعتيبثي ثَ عشّت ثيؾرت،
يک عشي حمذّديت ُبئي سا لجْل کٌيذ يب ايٌکَ ًپزيشيذ.
2-2-01 ثَ کبس گريي REGCLEAN
REGCLEANکَ حمقْل Microsoftاعت سا ثشاي شبيض کشدى (ززف
صّايذ) Windows Registryتبى، ثَ ىْس هٌَن اعتفبدٍ کٌيذ. ايي
عجت هي ؽْد کَ ّيٌذّص عشيِ تش کبس کٌذ.
2-2-11 پبيذاسي
کبهپيْتشُبي ؽخقي ثَ ّْاهل ثغيبسي ثغتگي اعبعب ثجب
داسد. ثَ ثيبى ّوْهي، پبيذاسي کبهپيْتش هي تْاًذ تْعو
يک عيغتن ّبهل ثذّى خيب زبفل ؽْد. اگش مشب خيبُبي ،Explorer
Memory error ، General Protection error ،Page fault error ،Fatal exception error
دسيبفت هيکٌيذ، آًگبٍ ثذاى هْين اعت کَ ثْني هؾکال دس
عيغتن ّخْد داسد ّ کبهپيْتش داساي ثجب ًيغت. ايي هؾکال
هؾخـ کٌٌذٍ ّ ثيبًگش خيبُبيي دس لغوت خبفي اص زبفََ، يب
آدسط ّيژٍاي ُغتٌذ کَ عجت خيب ؽذٍ ّ عيغتن مشب سا ًباهي
کشدٍاًذ. ايي هغبئل ثب پيغبم ُبي خيبيي هبًٌذ Fatal exception
71
Page fault error ّ Illegal operation error ، General Protection error ، errorشمشاٍ
هيؽًْذ. هْوْال صهبًيکَ ثشًبهَُبئي چْى Microsoft officeيب
Internet explorerيب ُش ثشًبهَ ديگشي گريهيکٌذ، آًگبٍ عيغتنّبهل
تؾخيـ هي دُذ کَ هؾکل خذي اعت. ثشًبهَ ثَ ّخْد آّسًذٍ
خيب سا شمشاٍ ثب تْيني خيب هْلك هيکٌذ. ايي خيب دس ؽکل کذ
ؽذٍ ثب لبلت يک پيغبم خيبي ًّْي هٌْکظ هيؽْد. ا يي خيب
دس ّالِ ثْعيلَ تْليك ثشًبهَ خبىي، ثشمذ آعيت ديذگي
عيغتن، حمبفَت هيؽْد. ّيٌذّص ثب ايي کبس کبهپيْتش سا اص
آعيت ديذگيُبي ثيؾرت عيغتن هقْى هيکٌذ. دس فْستيکَ ايي
ًُْ پيغبم ُبي خيب اداهَ داؽتَ ثبؽذ ّ مشب ًتْاًيذ اص
دعت آهنب خالؿ ؽْيذ، پيؾٌِبد هيؽْد ًشم افضاس هغجت خيب سا
آًگًَْ کَ دس لغوت 1-1-6 آهذٍ اعت Uninstallکٌيذ.
2-2-21 خبيل کشدى cacheهشّسگش
شمَ هشّسگشُب صهبًيکَ مشب اص يک Web Siteثَ Web Siteديگشي هي
سّيذ پشًّذٍ ُبئي سا ثش سّي Hard Driveمشب هيگزاسًذ. هؾکل
ايٌدبعت کَ آهنب ايي پشًّذٍ ُب سا دس پْؽَ يب پْؽَ ُبئي
ثَ ًبم Cacheخبي خْاٌُذ گزاؽت. ايي ثذاى هٌْب اعت کَ ثَ
تذسيح ُضاساى پشًّذٍ دس ديغکتبى اصمبد خْاُذ ؽذ کَ اشمييت
ُن ًذاسًذ يب اشميت آهنب کن اعت.
عختافضاسي 2-3 تَيوب
دس ايي لغوت ًکبتي هيشذ هيؽًْذ کَ ًيبصهٌذ ربشثَ لجلي
ًيض هيثبؽٌذ. ثٌبثشايي هجتذيبى ثبيغيت دس تغيري دادىُب،
ً
کبهال ازتيبه کٌٌذ.
2-3-1 تٌَين BIOS
اّلني الذاهي کَ مشب هيتْاًيذ ثشاي افضايؼ عشّت عيغتن خْد
BIOSاعت. تْخَ داؽتَ ثبؽيذ کَ ثکٌيذ ذبجْد تٌَيوب
BIOSثش ثيؾرت ٌّبفش اعبعي عيغتن مشب تبثري هي- تٌَيوب
گزاسد. ُيچ تغيرياتي سا اّوبل ًکٌيذ هگش ايٌکَ کبهال اص
ًتبيح آهنب آگبٍ ثبؽيذ.
اگش چيضي اؽتجبٍ اص آة دسآهذ، کبهپيْتشتبى سا جمذدا ساٍ
اًذاصي کشدٍ ّ ثَ BIOSثشگشديذ تب تغيرياتتبى سا ثَ زبلت
لجلي ثشگشداًيذ.
ىشيمَ ّسّد ثَ ففسَ ّ BIOS SETUPىشص کبس ثب آى هْوْال دس
دفرتچَ ساٌُوبي آى آهذٍ اعت (اغلت ثب فؾبس دادى دکوَ Delete
دس آغبص ثبال آهذى عيغتن هي تْاى ثَ ّ BIOSاسد ؽذ). هْوْال
Setupداساي زذالل عَ گضيٌَ افلي اعت کَ دس صيش آهذٍ اًذ:
81
ففسَ Standars Setting
ثشاي تٌَيوب دادٍ ُب، صهبى، اًْاُ گشداًٌذٍُب، زبفََ
فيضيکي ًقت ؽذٍ ّ ... اعت. اىويٌبى زبفل کٌيذ کَ شمَ ايي
هٌْکظ کٌٌذٍ ّمْيت ّالْي اخضاي کبهپيْتش مشب تٌَيوب
ُغتٌذ.
ففسَ System Setup
زبفََ هنبى ثشاي تٌَين چيضُبئي هبًٌذ عشّت ّ ، CPUمْيت
داخلي ّ خبسخي، تٌَيوب ّازذ )memory shadowing ،Floating Point (FP
ّ ... هيثبؽذ. اىويٌبى زبفل کٌيذ کَ عشّت CPUثب گضيٌَ
FASTسمبيؼ دادٍ ؽذٍ اعت. شمَ زبفََ ُبي هنبًي ّ ، FPUدس
ّخْد ُ enableغتٌذ. شمچٌني تْخَ کٌيذ کَ اگشچَ enable فْس
کشدى گضيٌَ ... دمکي اعت ثبّث ذبجْد کبسآئي گشدد ّيل دمکي
اعت ثب هذيشيت زبفََ يب عبيش تٌَيوب ًبعبصگبسي ّ تٌبلل
داؽتَ ثبؽذ.
ففسَ Chipset setting
اًتَبس ّ chipsetالِ ثش زبلت ثشاي ّفك دادى تٌَيوب
زبلت اًتَبس کورت ثبؽذ motherboardمشب هيثبؽذ. ُشچَ مشبسٍ
کبسائي عيغتن ثبالتش هي سّد.
اگش عيغتن مشب ثْذ اص کبُؼ مشبسٍ ُب اخشا سميؽْد يب دس
ّيٌذّص دچبس هؾکل هيؽْيذ مشبسٍُب سا ثَ تٌَيوب لجلي ثبص
گشداًيذ.
2-3-2 ًقت دسايْسُبي خذيذ ثشاي کبس گشافيکي
ُش کبهپيْتش ؽخقي داساي يک کبس ؽتبةدٌُذٍ ّيٌذّص ًقت
ؽذٍ هيثبؽذ. مشب هيتْاًيذ ثب ًقت آخشيي دسايْسُب، تْاى
کبس گشافيکي سا افضايؼ ّ کبسائي ّيٌذّص سا ذبجْد خبؾيذ.
عْي کٌيذ ايي دسايْسُب سا اص کبسخبًَ عبصًذٍ تْعو
ايٌرتًت دسيبفت کٌيذ ّ ًقت کٌيذ. اگش مشب اص کبسخبًَ
عبصًذٍ يب هذل کبس سمبيؾي کَ ُن اکٌْى اعتفبدٍ هيکٌيذ
آگبٍ ًيغتيذ يب ؽک داسيذ، هي تْاًيذ ساٌُوبي کبسثش کبس
سمبيؼ سا خبْاًيذ.
2-3-3 افضايؼ RAM
اگش HARDعيغتن مشب ثَ فْس هذاّم کبس هيکٌذ هؾخـ کٌٌذٍ
آًغت کَ عيغتن مشب دس زبل اعتفبدٍ اص زبفََ جمبصي اعت
ثٌبثشايي ثبيغيت همذاس RAMسا افضايؼ دُيذ. ثذيِي اعت
ُشچَ ثيؾرت، ذبرت خْاُذ ثْد.
91
Disk 2-3-4 حمذّد کشدى زذاکثش اًذاصٍ زبفََ فيضيکي ثشاي
Cache
Virtual Cacheيب ثَ اختقبس )vcacheثشاي ً ّ( Disk Cacheيض
ذبجْد کبسائي disk driveهفيذ هيثبؽذ. ثَ شمني عجت ّيٌذّص هي-
تْاًذ همذاسي اص زبفََ افلي عيغتن سا ثشاي cacheکشدى
دادٍُبيي کَ اص ديغک خْاًذٍ يب دس آى ًْؽتَ هي ؽًْذ،
دُذ. ّيٌذّص هْوْال زبفََ ثغيبس صيبدي سا ثشاي اختقبؿ
cacheکشدى اعتفبدٍ کشدٍ ّ همذاس ثغيبس کوي سا ثشاي
کبسثشدُب ثبلي هيگزاسد. ثشاي ذبجْد کبسايي عيغتن هي تْاى
زذاکثش همذاس زبفََ فيضيکي هقشيف سا ثب امبفَ کشدى عيْس
صيش ثَ پشًّذٍ System.iniحمذّد کشد:
][vcache
MiniFileCache=xxxx
MaxFileCache=yyyy
Chunksize=zzzz
کَ xxxxزذالل همذاس vcacheثشزغت کيلْثبيت، yyyyزذاکثش
همذاس vcacheثشزغت کيلْثبيت ّ zzzzاًذاصٍ ليْب اختقبؿ
يبفتَ ثَ vcacheثشزغت ثبيت اعت. ثشاي هثبل:
][vcache
6904=MiniFileCache
48361=MaxFileCache
215=Chunksize
هي تْاًذ ثشاي عيغتوي کَ RAM ، 64MBداسد ثَ کبس سّد.
ثيؾرتيي اًذاصٍاي کَ ثشاي casheتْفيَ هيؽْد 4/1 زبفََ
عيغتن اعت. ثشاي هثبل اگش مشب 64 MB RAMداسيذ، هيتْاًيذ
ثيؾرتيي اًذاصٍ cacheسا ثَ 16MBحمذّد کٌيذ. مشب هي تْاًيذ
ُش اًذاصٍ اي سا ثشاي MinFileCacheاًتخبة کٌيذ.
هْوْال اًذاصٍ 8/1 سا ثشاي آى دس ًَش هيگريًذ. ثب ّخْد ايي
پيؾٌِبد هيؽْد آًشا خبيل ثگزاسيذ (يْين ... سا ًٌْيغيذ).
اگش اص مشب ثپشعٌذ چشا، خْاة ايٌغت:
ؽشاييي سا دس ًَش ثگرييذ کَ مشب يک ثشًبهَ کبسثشدي يب يک
ثبصي کَ زبفََ ثغيبسي سا هيگريد ثبص کشدٍ ايذ. اگش چيضي
ثشاي MinFileCacheلشاس ًٌِبدٍ ثبؽيذ، ّيٌذّص هيتْاًذ
همذاسي اص RAMسا ثب ففش کشدى CACHE DISKآصاد سمبيذ. اهب
اگش مشب MinFileCacheسا ثشاثش ثب يک همذاس لشاس دادٍ ثبؽيذ
ّيٌذّص ثَ عبدگي اص آى لغوت اص RAMفشفٌَش هي کٌذ ّ ثَ
خبي آى اص Swapfileاعتفبدٍ خْاُذ کشد.
02
2-4 صهبى هؾبّسٍ
اگش ثب اذمبم آًچَ تبکٌْى گفتَ ؽذ ًتْاًغتيذ زذالل دسفذ
هٌبثِ آصادتبى سا ثَ 19% ثشعبًيذ، ازتوبال ثَ يک هؾبّس
آگبٍ اهْس کبهپيْتش ثشاي آصهبيؼ کشدى عيغتنتبى ًيبص
داسيذ. اّ دمکي اعت شمبًيْس کَ گفتَ ؽذ ثَ مشب اىالُ دُذ کَ
RAMتبى سا افضايؼ دُيذ، يب دسايْسُبي خبًيبتبى سا ثَ
سّص کٌيذ، پشًّذٍُبي پيکش ثٌذي Startupتبى سا کبُؼ دُيذ
يب زيت CPUتبى سا استمب دُيذ. الصم اعت ُضيٌَ پيؾٌِبدا
ايؾبى سا ثب هٌفْيت کَ اص افضايؼ عشّت کبهپيْتشتبى زبفل
هيؽْد عجک ّ عٌگني کٌيذ. هتؤعفبًَ ثَ خبىش ايٌکَ ًيبصُبي
کبسثشُب ثَ تْذاد کبهپيْتشُبيي کَ اعتفبدٍ هيکٌٌذ هتٌُْ
اعت، سميتْاى ساُکبسُبي عبدٍتش ّ ّوْهيتشي اص آًچَ هيشذ
ؽذ ثيبى سمْد.
12
دعتْس کبس:
werttuyyui
زبميك کٌيذ HCLچيغت؟
ثشاي آًکَ Virtual Memory Pagefileدس صهبى Shutdownپبک ؽْد چَ
کبسي ثبيذ اذمبم داد؟
يک batchfileاصمبد کٌيذ کَ کبهپيْتش سا خبهْػ کٌذ. عپظ ثب
اعتفبدٍ اص Scheduling Taskآًشا اخشا سمبئيذ. ًتيدَ کبس سا
تْمير دُيذ. اگش ثب يک کبسثش ديگش loginکٌيذ آيب ُtaskبي
تْشيف ؽذٍ لجلي لبثل هؾبُذٍ اعت؟ آيب ُtaskب کبس هيکٌٌذ
يب فمو ثشاي شمبى کبسثش کبس اذمبم هيدٌُذ.
شمبًيْس کَ هيداًيذ يکي اص کبسُبيي کَ هيتْاى دس ّيٌذّص
اذمبم داد، گشفنت backupاعت. اًْاُ خمتلف bachupسا ًبم ثشدٍ
ّ اخشا سمبييذ. اص چَ خقْفيب فبيل يب فْلذس ثشاي شببيض
اًْاُ backupاعتفبدٍ هيؽْد؟
يک Password Reset Diskثغبصيذ.
22
ًيندًز آزمايش3- چندًظيفواي ً چندخني ر
ُذف
_ تؾشير چٌذ زمي
_تْعَْ يک ثشًبهَ چٌذزمي زبت ّيٌذّص
_ افضايؼ ّ کبُؼ تمذم ًخُب
_شمضهبى کشدى ًخ ُب(شمبٌُگ عبصي ًخُب)
3_1 پيؼ آگبُي
تْاًبيي يک عيغتن ّبهل دس اخشاي چٌذ ثشًبهَ ثَ ىْس
هْاصي چٌذ ٍّيفَ اي ًبم داسد دسّالِ عيغتن ّبهل اص کالک
ثَ عخت افضاسي ثشاي اختقبؿ ثشَُ ُبي صهبًي
فشايٌذُبيي کَ ثَ ىْس شمضهبى اخشا هي ؽًْذ اعتفبدٍ هي
کٌذ اگشايي ثشَُُبي صهبًي ثَ زذ کبيف کْچک ثبؽٌذ، ّ
تْذاد کبسُبيي کَ هيخْاُين شمضهبى اذمبم ؽًْذ، صيبد ًجبؽذ
ثَ ًَش هيسعذ کَ کبسُب ثَ ىْس شمضهبى اخشا هيؽًْذ.
چٌذٍّيفَاي چيض تبصٍاي ًيغت. دس ُMainframeب چٌذٍّيفَاي
ّخْد داسد. ُMainframeب ايي تْاًبيي سا داسًذ کَ فذُب
تشهيٌبل ثَ آهنب هتقل ؽًْذ ّ کبسثش ُش تشهيٌبل ازغبط هي-
کٌذ کَ هبؽني هٌسقشً دس اختيبس اّ اعت. ثَ ّالٍّ، عيغتن-
ا
ّبهلُ Mainframeب اغلت ثَ کبسثشاى ايي اهکبى سا هيدُذ کَ
کبسُبيي سا ثَ صهيٌَ ثفشعتٌذ. ايي کبسُب صهبًي اذمبم هي-
ؽًْذ کَ کبسثش هيتْاًذ سّي چيضُبي ديگش کبس کٌذ.
هذ صيبدي ىْل کؾيذٍ اعت تب چٌذٍّيفَايُPCب ثَ هشزلَ
ّول دسآيذ. ّيل ثَ ًَش هيسعذ اکٌْى ّاسد ّقشي ؽذٍامي کَ
ا
چٌذٍّيفَاي کبهپيْتشُبي ؽخقي حممك ؽذٍ اعت. ثْذً خْاُين
گفت کَ 16 windowsثييت تب اًذاصٍاي اص چٌذٍّيفَاي پؾتيجبًي
هيکشد. ّ ًغخ 23ثييت windowsاکٌْى اص چٌذٍّيفَاي زميمي ّ
ًيض اص چٌذزمي پؾتيجبًي هيکٌذ.
چٌذزمي لبثلييت اعت کَ ثَ يک ثشًبهَ اخبصٍ هيدُذ دسّى
خْدػ، چٌذٍّيفَاي ؽْد. ثشًبهَ هيتْاًذ ثَ چٌذ ًخ اخشاي
خذاگبًَ کَ ثَ ىْس شمضهبى اخشا هيؽًْذ، ؽکغتَ ؽْد. دس
32
اثتذا ايي اهش چٌذاى هِن خلٍْ سميکٌذ ّيل ايي ثشًبهَُب هي-
تْاًٌذ اص چٌذزمي ثشاي اخشاي کبسُبي ىْالًي دس صهيٌَ
اعتفبدٍ کٌٌذ. ثذّى آًکَ کبسثش جمجْس ثبؽذ هذ صيبدي کبس
ثب هبؽني سا سُب کٌذ.
3-2 چٌذٍّيفَاي
دس اّلني سّص تْلذ ُPCب، ثشخي هشدم اص چٌذٍّيفَاي دس
آيٌذٍ محبيت هيکشدًذ. ّيل ثغيبسي ثب خْد فکشکشدًذ
چٌذٍّيفَاي سّي يک کبهپيْتش ؽخقي تک کبسثشٍ ثَ خٌذ دسد
هيخْسد؟ ثَ ُشزبل چٌذٍّيفَاي چيضي ثْد هيلْة کبثشاى
ثذّى ؽٌبخت زميمي آى.
3-2-1 چٌذٍّيفَاي زبت DOS
پشداصًذٍ 8818 ؽشکت Intelثَ خْدي خذ ثشاي چٌذٍّيفَاي عبختَ
ًؾذٍ ثْد. خبؾي اص هؾکال چٌذٍّيفَاي دس DOSثَ هذيشيت
زبفََ هشثْه هيؽذ. صهبًي کَ ثشًبهَُب ؽشُّ يب ختن هي-
ؽًْذ، يک عيغتنّبهل چٌذٍّيفَاي اغلت عْي دس خبجببيي
ثلْکِبي زبفََ ثشاي پيْعتَ ًگِذاؽنت فنبُبي خبيل اى هي-
هٌذ. ايي کبس سّي 8818 اهکبىپزيش ًجْد.
ً DOSيض ثَ تٌِبيي کوک صيبدي ًکشد. ايي عيغتنّبهل ىْسي
ىشازي ؽذٍ ثْد کَ کْچک ثبؽذ. دس فنبيي خذا اص ثشًبهَ-ُب
دببًذ ّ اهکبًب کوي ثشاي ثبسکشدى ثشًبهَُب ّ دعتيبثي ثَ
عيغتن فبيل داؽت.
ثب ايي ّخْد، ثشًبهًَْيغبى خالق دس اّلني سّصُبي پيذايؼ
،DOSساُي ثشاي غلجَ ثش آى هؾکال يبفتٌذ. ثشًبهَُبي همين
پظ اص اخشا ثشخي اص ايي ثشًبهَُب ًَري ُSpoolerبي چبپگش،
ثشاي اذمبم کبسُبي صهيٌَاي) (backgroundworkثَ ّلفَ صهبى هي-
چغجٌذ. ثْني ديگش ًَري ثشًبهَُبي کوکي ؽٌبّس)ًَ (pop-upري
SideKickهيتْاًغتٌذ ثب هْلك ) (Suspendکشدى ثشًبهَُب هْلِ
اخشاي خْدؽبى، ًّْي Task Switchingاذمبم دٌُذ.
تْذادي اص فشّؽٌذگبى ًشمافضاس تالػ کشًذ پْعتَ )(shellي صبيَ
کٌٌذ کَ اهکبى Task Switchingيب چٌذٍّيفَاي سا فشاُن کٌذ. ّيل
تٌِب يکي اص آهنب ثَ ثبصاس ًفْر کشد: .Windows
3-2-2 چٌذٍّيفَاي ًْثَاي ّ چٌذٍّيفَاي غريًْثَاي
ٌُگبهي کَ هبکشّعبفت دس عبل 5891 ًگبسػ 1 windowsسا ّشمَ
کشد، ايي ثشًبهَ پيؾشفتَتشيي چيضي ثْد کَ ثشاي غلجَ ثش
42
ّيٌذّص دس عبختَ ؽذٍ ثْد. دس آى صهبى حمذّديتِبي DOS
زبلت زميمي ) (real modeپشداصًذٍ اخشا هيؽذ ّيل ايي اهکبى سا
داؽت کَ ثلْکِبي زبفََ سا دسّى زبفََ فيضيکي خبجبب کٌذ
کَ الجتَ ايي ثب شمَ ثشًبهَُب عبصگبس ًجْد ّيل تمشيجبژك
لبثل زبول ثْد.
دس يک حميو گشافيکي چٌذپٌدشٍاي، چٌذٍّيفَاي خيلي حمغْطتش
اص خو فشهبى يک عيغتنّبهل تککبسثشٍ اعت. ثشاي هثبل، دس
خو فشهبى UNIXايي اهکبى ّخْد داسد کَ ثشًبهَُب دس صهيٌَ
اخشا ؽًْذ. اهب خشّخي سمبيؾي ُشکذام اص آهنب، ثبيغيت دسّى
يک فبيل سخيتَ ؽْد، دس غري ايٌقْس ثب آًچَ کبسثش سّي
ففسَ دس زبل اذمبم آى اعت، خملْه خْاُذ ؽذ.
يک حميو پٌدشٍاي ايي اهکبى سا ثْخْد هيآّسد کَ چٌذ
ثشًبهَ ثب يکذيگش سّي يک ففسَ اخشا ؽًْذ. سفت ّ آهذ ثني
آهنب آعبى اعت ّ شمچٌني ايي اهکبى ّخْد داسد کَ ثغشّت دادٍ-
ال
ُب سا اص يکي ثَ ديگشي هٌتمل کشد. هثً يک تقْيش کَ دس
يک ثشًبهَ ًمبؽي صبيَ ؽذٍ اعت سا دسّى يک پشًّذٍ هتين کَ
ثْعيلَ يک ّاژٍپشداص اصمبد ؽذٍ لشاس داد. دس ّيٌذّص
اًتمبل دادٍُب اص چٌذ ساٍ دمکي اعت:
سبتَ ثشػ )(Clip Board
تجبدل پْيبي دادٍُب)(Dynamic Data Exchange or DDE
پيًْذ ّادغبم اؽيب)(Object Linking and Embedding or OLE
ثب ايي ّخْد، چٌذ ٍّيفَاي کَ دس ًغخَُبي اّليَ ّيٌذّص
پيبدٍعبصي ؽذ، يک چٌذٍّيفَاي ًْثَاي هجتين ثش ثشَُُبي
صهبًي کَ دس عيغتنّبهلِبي چٌذ کبسثشٍ ّخْد داؽت، ًجْد.
ايي عيغتنّبهلِب اص عبّت عيغتن ثشاي ّلفَ دادى تٌبّثي
ثَ يک کبس ّ ؽشُّ يک کبس ديگش اعتفبدٍ هيکٌٌذ. ًغخَ
61ثييت ّيٌذّص، اص ًّْي چٌذٍّيفَاي کَ چٌذٍّيفَاي غريًْثَ-
اي ًبم داسد پؾتيجبًي هيکٌذ. ايي ًِّ چٌذٍّيفَاي خببىش
هْوبسي هجتين ثش پيبم ّيٌذّص دمکي ؽذٍ اعت. دس زبلت کلي،
يک ثشًبهَ زبت ّيٌذّص دس زبفََ ثَ ىْس غريفْبل لشاس هيگريد
تب ايٌکَ يک پيبم دسيبفت کٌذ. ايي پيبهِب ثَ ىْس غري
هغتمين يب هغتمين اص ّسّديکبسثش اص ففسَ کليذ ّ هْط
ًبؽي هيؽْد. ثْذ اص پشداصػ آى پيبم، خْد ثشًبهَ کٌرتل سا
ثَ ّيٌذّص ثشهيگشداًذ. ًغخَ 61ثييت ّيٌذّص، کٌرتل سا ثش
اعبط ثشَُُبي صهبًي اص يک ثشًبهَ ثَ ثشًبهَ ديگش هٌتمل
سميکٌذ. دس ّْك تْْيل ٍّيفَُب ٌُگبهي سّي هيدُذ کَ يک
ثشًبهَ پشداصػ يک پيبم سا شببم کٌذ ّ کٌرتل سا ثَ ّيٌذّص
ثشگشداًذ. ايي ًُْ چٌذٍّيفَاي اغلت چٌذٍّيفَاي هؾبسکيت
ًيض ًبهيذٍ هيؽْد صيشا ثَ ًّْي شمکبسي هيبى ثشًبهَُبي
کبسثشدي ًيبص داسد. يک ثشًبهَ ّيٌذّص اگش صهبى صيبدي سا
فشف پشداصػ يک پيبم کٌذ، کل عيغتن سا خمتل هيکٌذ.
52
گشچَ چٌذٍّيفَاي غريًْثَاي لبًْى اعبعي ّيٌذّص 61ثييت اعت
ّيل ؽکلِبيي اص چٌذٍّيفَاي ًْثَاي ًيض دس آى ّخْد داسد.
ّيٌذّص ثشاي اخشاي ثشًبهَُبي زبت DOSاص چٌذٍّيفَاي ًْثَ-
اي اعتفبدٍ هيکٌذ. شمچٌني ثَ ُDLLب اخبصٍ هيدُذ اص تبميش
عختافضاسي ثشاي همبفذ چٌذسعبًَاي اعتفبدٍ کٌٌذ.
ًگبسػ 61ثييت ّيٌذّص ؽبهل چٌذ ّيژگي اعت کَ ثَ ثشًبهَ-
ًْيغبى ايي اهکبى سا هيدُذ کَ ثش حمذّديت غريًْثَاي ثْدى
چٌذٍّيفَاي فبئك آيٌذ. ثذًبهرتيي آهنب، ًؾبًگش هبّط عبّت
ؽين اعت. الجتَ ايي يک ساٍ زل ًيغت ثلکَ فمو ساُي اعت کَ
ثَ کبسثش اخبصٍ هيدُذ ثفِوذ يک ثشًبهَ هؾغْل اذمبم يک
کبس ىْالًي اعت ّ عيغتن ثشاي هذتي غريلبثل اعتفبدٍ خْاُذ
ثْد.
ساٍزل ديگش تبميش ّيٌذّص اعت کَ ثَ ثشًبهَ اخبصٍ هيدُذ
دس فشخَ )ُ(Intervalبي هتٌبّة، پيبهي دسيبفت کٌذ ّ آى سا
ال
پشداصػ کٌذ. ايي تبميش هْوًْ ثشاي ثشًبهَُبي عبّت ّ
ثشًبهَُبي هتسشکعبصي (اًيويؾي) هْسد اعتفبدٍ لشاس هي-
گريد.
ال
ساٍزل ديگش اعتفبدٍ اص تبثِ )( PeekMessageاعت. هْوًْ يک
ثشًبهَ اص تبثِ )( GetMessageثشاي گشفنت پيبم ثْذي اص فف
پيبهِب اعتفبدٍ هيکٌذ. اهب دس فْستيکَ ُيچ پيبهي دس فف
ًجبؽذ، کٌرتل سا ثَ ثشًبهَ ثشهيگشداًذ. ثٌبثشايي يک
ثشًبهَ هيتْاًذ يک کبس ىْالًي اذمبم دُذ ّ فشاخْاًيِبي
)( PeekMessageسا دس کذػ ثگٌدبًذ. تب ّليت کَ ُيچ پيبهي ثشاي
ايي ثشًبهَ يب ثشًبهَ-ُبي ديگش ّخْد ًذاؽتَ ثبؽذ، اذمبم
کبس ىْالًي هيتْاًذ اداهَ پيذا يبثذ.
3-3 چٌذزمي
دس حميوُبي چٌذزمي، ثشًبهَُب هيتْاًٌذ ثَ تکَُبيي (کَ ًخ
اخشا ًبم داسًذ) ؽکغتَ ؽًْذ کَ شمضهبى اخشا ؽًْذ.
دس پيبدٍعبصي يک ًخ ثب يک تبثِ ًؾبى دادٍ هيؽْد کَ دمکي
اعت تْاثِ ديگشي سا فشاخْاًي کٌذ. اخشاي يک ثشًبهَ ثب
ًخ افلي (اّليَاػ) ؽشُّ هيؽْد کَ دس ثشًبهَُبي عٌيت main،C
ّ دس ّيٌذّص،ً WinMainبم داسد. دس زني اخشا، ثشًبهَ هي-
تْاًذ ثب هؾخـ کشدى ًبم يک تبثِ دس يک فشاخْاًي عيغتن
)ً ، (System callخ خذيذي اصمبد کٌذ. عيغتنّبهل ثَ شمبى ىشيمي
کَ ثني فشايٌذُب سفتّآهذ هيکٌذ، ثَ ىْس ًْثَاي ثني زمِب
سفتّآهذ هيکٌذ.
62
3-3-1 هْوبسي چٌذ زمي
ًخ افلي شمَ پٌدشٍُبيي سا کَ عيغتن ًيبص داسد اصمبد هي-
کٌذ. ثميَ زمِب ُيچ تشاکٌؾي ثب کبسثش اذمبم سميدٌُذ هگش اص
ىشيك استجبه ثب ًخ ُبي افلي. ثَ ّجبس ديگش، ًخ افلي
ً
ّسّديِب ي کبسثشد ّ ديگش پيبهِب سا کٌرتل هيکٌذ ّ ازتوبال
زمِبي ديگشي اصمبد هيکٌذ ايي زمِبي امبيف، کبسُبي غريّاثغتَ
ثَ کبسثش(هبًٌذ کبسُبي صهيٌَ اي) اذمبم هيدٌُذ دس ّالِ
ًخ افلي ثَ هثبثَ يک هذيش اعت کَ کبسُبي ثضسگ سا کَ دس
استجبه ثبدًيبي ثريّى پيؼ هي آيٌذ سا ثني کبسهٌذاًؼ تمغين
کبسي ثَ دعت سميگريًذ آهنب اص هيکٌذ، کبسهٌذاى هغتميوً
ب
هذيشؽبى کبسي زبْيل هيگريًذ ّ ثَ هذيش زبفل سا زبْيل هي
دٌُذ ّهٌتَش کبسي ديگش هي هبًٌذ. زمِبي دسّى يک ثشًبهَ
خبؿ، شمگي خبؾي اص شمبى فشايٌذ ُغتٌذ ثٌبثشايي آهنب هٌبثِ
عيغتن ًَري زبفََ ّ فبيلِبي ثبص سا ثَ اؽرتاک هيگزاسًذ.
چْى زمِبي دسّى يک فشايٌذ، زبفََ سا ثَ اؽرتاک هيگزاسًذ،
هتغريُبي ايغتب سا ًيض ثَ اؽرتاک هيگزاسًذ. اهب ُش ًخ
پؾتَ ّ دس ًتيدَ هتغريُبي پْيبي خْد سا داساعت. ُش ًخ
ّالٍّ ثش شمَ ايٌِب، ّمْيت پشداصًذٍ ّ کوک پشداصًذٍ هشثْه
ثَ خْد سا داساعت کَ دس زني سفتّآهذ ثني زمِب، آهنب سا رخريٍ
ّ ثبصيبثي هيکٌذ.
3-3-2 دسدعشُبي کبس ثب ًخ
ىشازي، کذ کشدى ّ خبقْؿ سفِ اؽکبل يک ثشًبهَ کبسثشدي
چٌذزمي پيچيذٍ، يکي اص هؾکلرتيي کبسُبيي اعت کَ يک ثشًبهَ
ّيٌذّص دمکي اعت ثَ آى ثشخْسد کٌذ. اص آذمب کَ يک عيغتن-
ّبهل چٌذٍّيفَاي ًْثَاي هيتْاًذ ثشاي اًتمبل کٌرتل ثَ
زمِبي ديگش، دس ُش ًميَ يک ًخ ثَ آى ّلفَ دُذ، ُش تشاکٌؼ
ًبهيلْثي ثني دّ ًخ، فمو دس هْالِ خبفي اتفبق هيافتذ.
يک اؽکبل کْچک) (bugهْوْل دس يک ثشًبهَ چٌذزمي race condition
ًبم داسد. ايي هؾکل ّليت اتفبق هيافتذ کَ ثشًبهًَْيظ فشك
ال
هيکٌذ زمي کبسي سا ثَ پبيبى هيسعبًذ (هثً دادٍاي سا
آهبدٍ هيکٌذ) لجل اص ايٌکَ کٌرتل ثَ زمي کَ ثَ ايي دادٍُب
ازتيبج داسد هٌتمل ؽْد. ثشاي کوک ثَ ُذايت زمِب ثَ فْس
کبسا، عيغتنّبهل ثَ چٌذ فشم عٌکشّى کشدى ًيبص داسد. يکي
اص آهنب مسبفْس اعت کَ ثَ ثشًبهَعبص اخبصٍ هيدُذ اخشاي يک
ًخ سا دس يک ًميَ اص کذ آى ثلْکَ کٌذ تب ايٌکَ ًخ ديگش
اخبصٍ دُذ کَ اخشاي آى ًخ هيتْاًذ اداهَ يبثذ. خبؾِبي
حبشاًي هؾبثَ مسبفْسُب ُغتٌذ. خبؾِبي حبشاًي لغوتِبي اص کذ
ُغتٌذ کَ سميتْاًٌذ ّلفَ دادٍ ؽًْذ.
ّيل مسبفْسُب خْد همذهَ اصمبد bugاعت کَ ثيثغت )ً (deadlockبم
داسد. ايي هؾکل صهبًي ثشّص هيکٌذ کَ دّ ًخ اخشاي يکذيگش
72
سا ثلْکَ کٌٌذ ّ تٌِب صهبًي اص زبلت ثلْکَ دسآيٌذ کَ
اداهَ يبثٌذ.
خْؽجختبًَ ثشًبهَُبي 23 ثييت ثَ ثْني اص هؾکال هشثْه ثَ
زمِبي ثشًبهَُبي 61ثييت اميياًذ. هثً فشك کٌيذ زمي زکن
ال
) (statementسّثشّ سا اخشا کٌذ:
;++lCount
کَ lCountيک هتغري عشاعشي 23 ثييت اعت تْعو ًخ ديگشي ًيض
هْسد اعتفبدٍ لشاس هيگريد. دس يک ثشًبهَ 61ثييت، ايي تک
زکن، ثَ دّ دعتْس صثبى هبؽني تشمجَ هيؽْداّيل 61ثيت کناسصػ
ايي هتغري سا يکي افضايؼ هيدُذ ّ دّهي سلن ًملي زبفل اص
مجِ لجل سا ثب 61 ثيت پشاسصػ آى مجِ هيکٌذ. فشك کٌيذ
عيغتنّبهل ثني ايي دّ دعتْس صثبى هبؽني ثَ ايي ًخ ّلفَ
دُذ. اگش همذاس lCountلجل اص اخشاي اّلني دعتْس صثبى هبؽني
0X0000FFFFثبؽذ. دس صهبًي کَ ًخ دچبس ّلفَ هيؽْد، lCount
همذاس 1 سا داساعت ّ ايي همذاسي اعت کَ ًخ ديگش هيثيٌذ.
تٌِب صهبًي کَ اخشاي ًخ اّل اداهَ پيذا کٌذ، lCountثَ
همذاس زميمي مجْؼ ثب 1 يْين 00001000 0Xخْاُذ سعيذ.
ايي يکي اص ُbugبيي اعت کَ خيلي ثَ ًذس اتفبق هيافتذ ّ
دمکي اعت ُشگض کؾف ًؾْد. دس ثشًبهَُبي 61ثييت، يک ساٍ دسعت
ثشاي زل ايي هؾکل، لشاس دادى ايي زکن دسّى يک خبؼ حبشاًي
اعت. ّيل دس ثشًبهَُبي 23ثييت ايي زکن دسعت اعت صيشا آى ثَ
يک دعتْسالْول صثبى هبؽني تشمجَ خْاُذ ؽذ.
3-3-3 اهکبًب ّيٌذّص ثشاي کبسثب زمِب
دس ّيٌذّص 23ثييت اگش يک ثشًبهَ صهبى صيبدي سا فشف پشداصػ
يک پيبم کٌذ، ًؾبًگش هْط سّي اى ثشًبهَ، ثَ ؽکل عبّت ؽين
دسهيآيذ ّيل ٌُگبهي کَ سّي ثشًبهَُبي ديگش هيسّمي ثَ ؽکل
ّبدي ثبصهيگشدد. تٌِب ثب يک کليک هيتْاى ثشًبهَُبي ديگش
سا ثَ پيؼسمب ) (foregroundآّسد.
اهب ٌُْص ُن ثَ کبسثش اخبصٍ کبس ثب ثشًبهَاي کَ هؾغْل
اذمبم يک کبس ّلتگري اعت، دادٍ سميؽْد. صيشا ايي کبس ّلتگري
هبًِ اص آى هيؽْد کَ ثشًبهَ ثتْاًذ پيبم دسيبفت کٌذ.
ايي هْمُْ ًبهيلْة اعت. گْػ يک ثشًبهَ ثبيذ شميؾَ ثشاي
پيبم ثبص ثبؽذ ّ ثشاي ايي کبس ًيبص ثَ ًخ ديگشي داسمي.
دس ّيٌذّص 23ثييت ُش ًخ يک فف پيبم داسد. شمچٌني تبثْي ّخْد
داسد کَ ثَ يک ًخ اخبصٍ هيدُذ ًخ ديگشي دس آى فشايٌذ سا
ثکؾذ ّ آخشيي خرب ايٌکَ ّيٌذّص 23ثييت چيضي ثَ ًبم زبفََ
حملي ًخ ) (Thread Local Storage or TLSتذاسک ديذٍ اعت. ثشاي فِويذى
آى، يبدآّسي هيکٌين کَ هتغريُبي ايغتب(عشاعشي يب حملي)
هيبى زمِبي آى فشايٌذ ثَ اؽرتاک گزاؽتَ هيؽًْذ صيشا آهنب
دس فنبي زبفََ دادٍ فشايٌذ لشاس داسًذ.(ّ زمِب زبفََ سا
82
ثَ اؽرتاک هيگزاسًذ). ُش ًخ، هتغريُبي حملي هشثْه ثَ خْد
سا داساعت. صيشا آهنب سّي پؾتَ لشاس داسًذّ ُش ًخ ثشاي
خْد يک پؾتَ داسد. هْالْي پيؼ هيآيذ کَ دّ يب چٌذ ًخ اص
يک تبثِ يکغبى اعتفبدٍ کٌٌذ ّ هٌبعت اعت کَ هتغريُبي
ايغتب ثشاي ايي زمِبيکتب ) (Uniqueثبؽٌذ. ايٌدبعت کَ TLSثَ
دسد هيخْسد. هتغريُبيي کَ دس TLSگشفتَ هيؽًْذ هبًٌذ
هتغريُبي ايغتب اص هيبى سميسًّذ ّيل ثَ ّکظ آهنب دس دعرتط شمَ
لشاس ًذاسًذ ثلکَ ثَ زمي کَ آهنب سا اصمبد کشدٍ اعت تْلك
ب
داسد. ثبيذ تْخَ داؽت عختافضاس هغتميوً اص ايي ًُْ
زبفََ پؾتيجبًي سميکٌذ ثلکَ عيغتنّبهل اعت کَ ايي
عبختوبىدادٍ سا صبيَ کشدٍ اعت ّ تْاثْي سا ثشاي کبس ثب
ايي عبختبس دس اختيبس کبسثش لشاس دادٍ اعت.
3-4 هْاسد اعتفبدٍ اص چٌذٍّيفَاي ( ّ چٌذزمي)
چٌذٍّيفَاي ثَ کبسثش ايي اهکبى سا هيدُذ کَ چٌذ ثشًبهَ
ثبص سا ثب ُن اخشا کٌذ. هثال کبسثشي هيتْاًذ ثب اعتفبدٍ
اص يک ثشًبهَ، فبيلي سا ّيشايؼ کٌذ دسزبيل ثشًبهَ ديگش
هؾغْل حمبعجَ يک ففسَ گغرتدٍ اعت.
چٌذٍّيفَاي ثَ تْليذکٌٌذٍ ) (developerايي اهکبى سا هيدُذ کَ
ثشًبهَُبيي کَ اص چٌذ فشايٌذ ّ فشايٌذُبيي کَ اص چٌذيي
ًخ اخشا اعتفبدٍ کٌٌذ، اصمبد کٌذ. هثال يک فشايٌذ هيتْاًذ
مي ًخ ّاعو کبسثش ) (user interface threadداؽتَ ثبؽذ کَ تشاکٌؼ ثب
کبسثش (ّسّديِبي ففسَ کليذ ّ هْط) سا هذيشيت کٌذ ّ زمِبي
کبسگش ) (worker threadکَ صهبًي کَ ًخ ّاعو کبسثش هٌتَش ّسّدي
کبسثش اعت، کبسُبي ديگشي اذمبم دٌُذ. اگش اّلْيت ًخ ّاعو
کبسثش سا اص شمَ ثبالتش ثذُين، ثشًبهَهبى شميؾَ ثَ
ّسّديِبي کبسثش پبعخ هيدُذ ّ دسّني زبل، زمِبي کبسگش دس
صهبًي کَ ُيچ ّسّدي ّخْد ًذاسد ثَ ىْس هؤثش اص پشداصًذٍ
اعتفبدٍ هيکٌٌذ.
اعتفبدٍ اص چٌذزمي شمچٌني هيتْاًذ ثشاي عبخت ثشًبهَُبيي
هٌبعت ثبؽذ کَ چٌذ کبس هؾبثَ يب يکغبى سا ثَ ىْس شمضهبى
اذمبم هيدٌُذ. هثال يک عشّيظدٌُذٍ هيتْاًذ ثشاي استجبه ثب
ُشيک اص هؾرتيبًؼ، يک ًخ اصمبد کٌذ.
يک فشايٌذ ثشاي کبسُبي صيش هيتْاًذ اص خٌذ ًخ اعتفبدٍ
کٌذ:
هذيشيت ّسّدي ثشاي چٌذيي پٌدشٍ
هذيشيت ّسّدي ثشاي چٌذ ّعيلَ استجبىي
اّلْيتثٌذي کبسُب
هثال ًخ ثب اّلْيت ثبال ثشاي کبسُبيي کَ دس آهنب صهبى ًمؼ
اعبعي داسد ) ّ (time-critical taskزمِبي ثب اّلْيت پبيني ثشاي اذمبم
کبسُبي ديگش.
92
دادى اهکبى پبعخگْيي دس ُش صهبى ثَ ّاعو کبسثش
ثشاي زل هغبئلي کَ هبُيت چٌذزمي داستذ، پيبدٍعبصي چٌذزمي
ىشازي سا آعبى هيکٌذ گشچَ هؾکال ّيتيبثي ّ سفِ آى ثَ
لٍْ خْد ثبليغت(اص ايي ًَش ؽجيَ ثشًبهَعبصي ثبصگؾيت
اعت).
اعتفبدٍ اص چٌذزمي دس همبيغَ ثب چٌذٍّيفَاي هضيتِبي صيش
سا داساعت:
عْئيچ هنت ) (context switchثشاي زمِب ثغيبس عشيْرت اص فشايٌذُب
اذمبم هيؽْد.
شمَ زمِبي يک فشايٌذ، فنبي آدسطدُي فشايٌذ سا ثَ اؽرتاک هي-
گزاسًذ ّ هيتْاًٌذ ثَ هتغريُبي عشاعشي دعرتعي داؽتَ ثبؽٌذ
کَ ايي استجبه زمِب سا آعبى هيکٌذ.
شمَ زمِبي يک فشايٌذ، دعتگريٍ ثبص ثَ هٌبثِ، هبًٌذ دعتگريٍ
فبيلِب سا ثَ اؽرتاک هيگزاسًذ.
3-5 ثشًبهًَْيغي چٌذزمي
3-5-1 اصمبد ّ ثَ اشببم سعبًذى يک ًخ
ثشاي اصمبد يک ًخ اص APIصيش اعتفبدٍ هيؽْد کَ دعتگريٍُبي
ثَ ًخ هشثْىَ سا ثشهيگشداًذ.
,HANDLE CreateThread(LPSECURITY_ATTRIBUTES lpAttr
DWORD dwStack ىْل اعتک خذيذ کَ اگش ففش ثبؽذ ىْل //,
اعتک ُن اًذاصٍ ىْل اعتک ًخ افلي خْاُذ ثْد
اؽبسٍگش سّتني ًخ// ,LPTHREAD_START_ROUTINE lpfunc
اگش ففش ثبؽذ اخشاي ًخ فْسا ؽشُّ هيؽْد// ,DWORD dwflag
مشبسٍ ؽٌبعبيي ًخ// ;)LPDWORD lpdwID
اگش dwflagثشاثش CREATE_SUSPENDثبؽذ، ًخ تب اخشاي
)( ResumeThreadهتْلف هيهبًذ. پيؼ تْشيف سّتني ًخ ثبيذ ثَ ؽکل
صيش ثبؽذ:
;)DWORD threadfunc(LPVOID param
ًخ ثبفذا صدى تبثِ ًخ ؽشُّ هيؽْد ّ ثب ثشگؾنت اص آى ثَ
اشببم هيسعذ. ثشاي ثَ اشببم سعبًذى ًخ دس هْلِ غريهْوْل اص
ُAPIبي صيش اعتفبدٍ هيؽْد:
;)BOOL TerminateThread(HANDLE hThread,DWORD dwStatus
;)VOID ExitThread(DWORD dwStatus
)( ExitThreadفمو زمي کَ دس آى لشاس داسد سا ثَ پبيي هيسعبًذ
ّ موٌب پؾتَ سا resetهيسمبيذ اهب )( terminateThreadثذّى ُيچ کبس
خبقْفي ًخ سا هتْلف هيکٌذ.
03
3-5-2 هْلك کشدى ّ اص عشگريي ًخ
:ُبي صيش اعتفبدٍ هيؽْدAPI ثذيي هٌَْس اص
DWORD SuspendThread(HANDLE hThread);
DWORD ResumeThread(HANDLE hThread);
( کَ دس زبلتsuspend counter) ُش ًخ يک مشبسؽگش تْليك داسد
مشبسؽگشsuspendThread() تْليك ًخ غريففش اعت. ُش ثبس فذا صدى
ResumeThread() تْليك سا يکي افضايؼ هيدُذ ّ ثبُش فذا صدى
يکي اص آى کن هيکٌذ ّ ًخ ّليت اص عشگريي هيؽْد کَ مشبسؽگش
-تْليك آى ثَ ففش ثشعذ. ُش دّ تبثِ مشبسؽگش تْليك سا ثشهي
.گشداًذ
3-5-3 تمذم زمِب
اّلْيت زمِب اص تشکيت دّ همذاس کالط تمذم کَ ثَ فشايٌذ
-ًغجت دادٍ هيؽْد ّ تمذم ؽخقي ًخ کَ ثَ ًخ ًغجت دادٍ هي
ّؽْد تْيني هيؽْد. ثشاي تْيني ّ همذاسدُي کالط تمذم اص د
. صيش اعتفبدٍ هيؽْدAPI
DWORD GetPriorityClass(Handle hAPP);
BOOL SetPriorityClass(Handle hAPP,DWORD dwPriority);
.کالط تمذم دس خذّل 4-1 آهذٍ اعت
REALTIME_PRIORITY_CLASS
HIGH_PRIORITY_CLASS
NORMAL_PRIORITY_CLASS
IDLE_PRIORITY_CLASS
خذّل4-1 کالعِبي تمذم ثشاي فشايٌذ
صيش ّخْدAPI ّثشاي تْيني ّ همذاسدُي تمذم ؽخقي زمِب د
:داسًذ
int GetThreadPriority(HANDLE hThread);
BOOL SetThreadPriority(HANDLE hThread,int Priority);
:تمذهِبي ؽخقي دس خذّل 4-2 آهذٍ اعت
Thrad_Priority_Time_Critical 15
Thrad_Priority_Highest 2
Thrad_Priority_Above_Normal 1
Thrad_Priority_Normal 1
Thrad_Priority_Below_Normal -1
Thrad_Priority_Lowest -2
Thrad_Priority_Idle -15
خذّل 4-2: تمذم ؽخقي زمِب اص ثبالتش ثَ پبيني تش
31
3-6 شمبٌُگعبصي زمِب ثَ کوک مسبفْسُب
شمگي ّيٌذّص چِبسًُْ شمبٌُگعبصي سا اعتفبدٍ هيکٌذ کَ
ثشهجٌبي مسبفْس ُغتٌذ. ايي چِبس ًُْ اص ايي لشاسًذ:
3-6-1 مسبفْسُبي کالعيک
مسبفْس هيتْاًذ ثشاي ايي اعتفبدٍ ؽْد کَ تْذاد حمذّدي
پشّعظ يب ًخ ثَ يک هٌجِ دعرتعي داؽتَ ثبؽٌذ. ايي کبس ثب
يک هتغري کَ ٌُگبم گشفنت هٌجِ افضايؼ هييبثذ ّ ٌُگبم آصاد
کشدى آى کبُؼ هييبثذ، کٌرتل هيؽْد.
3-6-2 مسبفْس mutex
ًُْ خبفي اص مسبفْس کالعيک اعت کَ تْذاد پشّعغِب يب زمِبيي
کَ شمضهبى هيتْاًٌذ ثَ هٌجِ دعرتعي داؽتَ ثبؽٌذ، تٌِب يکي
اعت.
3-6-3 event object
ثشاي خلْگريي اص دعتيبثي ثَ يک هٌجِ تب سعيذى يک عيگٌبل
اص يک ًخ يب پشّعظ ثَ کبس هيسّد.
3-6-4 ًبزيَ حبشاًي )(critical section
مشب هيتْاًيذ لغويت اص کذ سا ثَ ٌّْاى ًبزيَ حبشاًي هْشيف
کٌيذ تب اص دعتيبثي ثيؼ اص يک ًخ دس يک صهبى ثَ آى
خلْگريي ؽْد.
ثشاي اصمبد يک مسبفْس دس ّيٌذّص اص ُAPIبي صيش اعتفبدٍ هي-
کٌين.
,HANDLE CreateSemaphore(LPSECURITY_ATTRIBUTES lpAttr
همذاس اّليَ مشبسؽگش مسبفْس//,LONG InitialCount
تْذاد زمِبيي کَ هي تْاًٌذ //,LONG MaxCount
ثَ هٌجِ دعرتعي داؽتَ ثبؽٌذ
ًبم مسبفْس//;)LPSTR lpstrName
اص آذمب کَ مسبفْس يک ؽيء عشاعشي ) (globalدس ثشًبهَ هيثبؽذ،
اگش دّ پشّعظ مسبفْسُبيي ثب يک ًبم اصمبد کٌٌذ، شمَ آهنب يک
مسبفْس خْاٌُذثْد ّ ايي اهکبى شمبٌُگعبصي چٌذ پشّعظ سا
ثْخْد هيآّسد. اگش ايي همذاس NULLثبؽذ، مسبفْس حملي شمبى
پشّعظ هيؽْد. موٌب تْخَ کٌيذ اگش Maxcountهغبّي يک ثبؽذ،
23
مسبفْس ّ mutexاگش InitialCountهغبّي ففش ثبؽذ، event objectخْاُين
داؽت.
ثْذ اص اصمبد مسبفْس ثب فذا صدى تْاثِ صيش اص آهنب اعتفبدٍ
هيکٌين:
دعتگريٍ مسبفْس//,DWORD WaitForSingleObject(HANDLE hObject
صهبى اًتَبس ثَ هيلي //;)DWORD dwHowlong
ثبًيَ
دعتگريٍ مسبفْس//,BOOL ReleaseSemaphore(HANDLE hSema
همذاس افضايؾگش مسبفْس//,LONG Count
;)LPLONG lpPrevCount
اگش dwHowlongهغبّي ثبثت INFINITEثبؽذ، مسبفْس هغتمل اص
صهبى پيبدٍعبصي هيؽْد. )(ُ WaitForSingleObjectشثبس پظ اص
هْفميت خْد يکي اص مشبسؽگش مسبفْس کن هيکٌذ ّ )(ReleaseSemaphore
ثَ اًذاصٍ Countثَ مشبسؽگش مسبفْس هيافضايذ.
3-7 يک ثشًبهَ سمًَْ
ثشًبهَ سمًَْ ففسَ ثْذ دمکي اعت دس فِن هيلت هفيذ ثبؽذ.
شمَ کبسُب دس ٌُگبم پشداصػ پيبم WM_CREATEيْين دس شمبى
ؽشُّ ثشًبهَ اذمبم هيؽْد. ثشًبهَ دّ ًخ سا ثب فشاخْاًي
تبثِ )( CreateThreadاصمبد هيکٌذ ّ ُش کذام اص تْاثِ ًخ دس يک
زلمَ اّذادي سا تب هبکضمين تْشيف ؽذٍ هيمشبسًذ.
*********************ليغت
ثشًبهَ**************************
دعتْسکبس
33
با ً Registryيندًز آزمايش4- کا
4 _1 ثبًک دادٍاي ثجت
4_1_1 تبسخيچَ
دس 0.3 winاىالّب پيکشثٌذي ًشمافضاسي دس فبيلي ثَ ًبم
ً Win.iniگِذاسي هيؽذ شببم ًشمافضاسُب اىالّبتؾبى سا دس ايي
فب يل رخريٍ هيکشدًذ کَ ثبّث آؽفتگي ايي فبيل هيؽذ (خبقْؿ
اص آى ًَش کَ اىالّبتي کَ ثب ُن عٌخييت ًذاؽتٌذ کٌبس ُن
ًگِذاسي هيؽذًذ) ايي آؽفتگي، کبس ثب ايي فبيل سا هؾکل
هيکشد.
1 .3 windowsايي هؾکل سا اص دّ ساٍ زل کشد:
_ صبيَ دّ تبثِ APIثَ ًبهِبي GetProFileStringايي دّ تبثِ ثَ
خمقْؿ ثَ خْد داؽتَ ًشمافضاسُب اخبصٍ هيدادًذ فبيل
ثبؽذ.
- صبيَ يک ثبًک دادٍاي ثجت )(Registration Database
59 Windowsاص ايي ُن خلْتش سفتَ اعت ثشًبهَُب ٌُْص ُن هي-
تْاًٌذ ُ.iniبي خمقْؿ ثَ خْد داؽتَ ثبؽٌذ ّيل ذبرت اعت کَ اص
ثبًک دادٍاي ثجت ثشاي ايي کبس اعتفبدٍ کٌٌذ. ايي ثبًک
دس هْمّْبتي ًَري OLE ّ DDEکَ الصم اعت يک ثشًبهَ ثب
ب
ثشًبهَ ديگش استجبه پيذا کٌذ (ّ لبّذتً ثبيذ آدسط ّ
ديگش هؾخقب آى ثشًبهَ ّ اخضا سا ثذاًذ) اشميت فْقالْبدٍ-
اي پيذا هيکٌذ. شمچٌني ثغيبسي اص ثشًبهَُب کَ اص ًُْ
پشًّذٍ خبفي پؾتيجبًي هيکٌٌذ (هبًٌذ ثشًبهَُبي گشافيکي
کَ اص فبيلِبي گشافيکي ًَري ... ّ .jpg،.pcx،.gif ،.bmp
پؾتيجبًي هيکٌٌذ) هيتْاًٌذ آى سا دس ثبًک، ثجت کٌٌذ کَ
ثشًبهَُبيي ًَري ّ Explorerديگش ُProgram Launcherب دس ايي فْس
هيتْاًٌذ ثشاي ثبصکشدى ايي ًُْ فبيلِب اص ثشًبهَ افلي
اعتفبدٍ کٌٌذ.
43
4_1_2 تْشيف ثبًک دادٍاي ثجت
ثبًک دادٍ اي ثجت يک يک پبيگبٍ دادٍ ) (databaseعلغلَ هشاتيب
اعت کَ اىالّب پيکشثٌذي) (Configuration Informationحميو ّيٌذّص23
ثييت دس خْد ًگِذاسي هيکٌذ.
Registryاص ؽجکَ ُن محبيت هيکٌذ ّ اخبصٍ هيدُذ کَ ُش کبسثش
تٌَيوب ) (Preferenceخْد سا رخريٍ کٌذ.
ثش ًبهَُبي کبسثشدي هيتْاًٌذ ثشاي ُش کبسثش، ّاعو کبسثش
دادٍُبي هشثْه ثَ عفبسؽي ) (Customized IDداؽتَ ثبؽٌذ.
کبسثشاى هيتْاًٌذ دس يک حمل هتوشکض ؽًْذ ّ ثَ ثبًک دادٍ-
اي ثجت ايغتگبٍ کبسي) (Workstation Registryکَ کبسثش Log Onؽذٍ اعت
تضسيك) (Importؽًْذ شميٌيْس هذيش عيغتن هيتْاًذ اص ساٍ دّس
ثَ ُRgistryبي ايغتگبُِبي کبسي دعت پيذا کٌذ ّ تنبدُب سا
زل کٌذ.
اىالّب هشثْه اّوبل پْعتَاي)ً (Shell Actionيضدس Registryرخريٍ
کبسثش دکوَ هيؽْد (دس ٌُگبم کبس ثب ٌُ Explorerگبهي کَ
ساعت هبّ ط سا کليک هيکٌذ يک هٌْي ؽٌبّس)ٍ (Pop_up Menuبُش
ثشًبهَسيضي ؽذٍ لشاس هيؽْد کَ دس آى ليغت اّوبل)(Action
ال
داسد ايي اّوبل هْوًْ ؽبهل ُ Open ّ Compile،Editغتٌذ ثَ ايي
اّوبل اّوبل پيْ عتَ اي هي گْيٌذ.کبسثش ثب اعتفبدٍ اص
Registryهيتْاًذ اّوبل خذيذي تْشيف کٌذ ّيب اّوبل لجلي
سا تغيريدُذ.
لغوتِب ي هِن ديگش ّجبستٌذ اص:
Registration, Internationalization (Local Support), Plug & Play SupportOLE
4-1-3 هْوبسي ثبًک دادٍ اي ثجت
يک ساٍ ثشاي غْافي دس Registryاعتفبدٍ اص ثشًبهَ Regedit
اعت. ايي ثشًبهَ ثَ کبسثشاى اخبصٍ سّيت ّ تغيريّ Registry
شمچٌني استجبه ثب ُRegistryبي ديگش کبهپيْتشُب سا هيدُذ.
لبلت سمبيؾي Registryدس ثشًبهَ Regeditثغيبس ؽجيَ ثَ آًچَ
اعت کَ Explorerثشاي سمبيؼ ؽبخَ )ُ(Folderب ّ فبيل )ُ(Fileبثَ
کبسثشدٍ اعت صيشا ) (Registryعبختبس دسخيت داسد. Registryثَ
آًچَ کَ دس Explorerؽبخَ ًبهيذٍ هي ؽْد، کليذ ) ّ (Keyثَ
آًچَ کَ دس Explorerفبيل ًبهيذٍ هيؽْد، همذاس ) (Valueهي-
گْيذ. ُش کليذ هيتْاًذ ؽبهل چٌذ صيش کليذ ّ چٌذ همذاس
ثبؽذ.
همذاس ) (Valueؽبهل عَ خضء اعت:
ًُْ دادٍ کَ ثَ فْس مشبيل )ٍ (Iconبُش هيؽْد، ًبم همذاس ّ
خْد همذاس (اسصػ همذاس).
53
همذاس، ًجبيذ ثضسگرت اص 64kثبؽذ. اًذاصٍ شببم Registryثَ
اًذاصٍ ديغک عخت حمذّد هيؽْد ( اص حلبً هٌيمي حمذّدييت
ًذاسد).
ثشاي همذاس، دّ ًُْ دادٍ ّخْد داسد:
ًُْ دّدّيي:
ثيؾرت اىالّب ٌّبفش عختافضاسي ثَ ؽکل دّدّيي رخريٍ هيؽًْذ
ّ دس Regeditهيتْاًٌذ ثَ فشم دّددّيي يب ؽبًضدٍؽبًضدُي
ال
) (Hexadecimalثَ سمبيؼ دسآيٌذ. هْوًْ فمو کبسثشاى زشفَاي ثب
ايي همبديش کبس هيکٌٌذ.
ًُْ هتين:
ثشخي اىالّب ثَ فشم سؽتَاي اص کبساکرتُب ثَ سمبيؼ دسهي-
ال
آيٌذ. هْوًْ کبسثش ايي ًُْ دادٍ سا تغيري هيدُذ. هغري
ثشًبهَُبيي کبسثشدي يب اخضاء آهنب، ًبم فبيلِب ّ ... اص
ايي دعتَاًذ.
4-1-4 عبختبس ثبًک دادٍاي ثجت دس Windows
عبختبس Registryدس Windows 95 ّ Windows NTيکغبى اعت. ايي ثذاى
هٌْبعت کَ ثشًبهَُبيي کَ ثشاي ًْ Windows 95 ّ Windows NTؽتَ
ؽذٍاًذ، هيتْاًٌذ اًتَبس داؽتَ ثبؽٌذ، دادٍُب سا دس حمل
هؾرتکي ثيبثٌذ (هغتمل اص ًُْ دادٍ).
ؽکل صيش ثبالتشيي عير Registryسا ًؾبى هيدُذ.
کبسثشد کليذُبي سيؾَاي دس ثبًک دادٍاي ثجب
: HKey-Local_Machine
ايي کليذ ؽبهل اىالّبتي دس هْسد عختافضاس ًقت ؽذٍ،
تٌَيوب ًشمافضاسي، پشّتکلِبي ؽجکَ ّ ... هيثبؽٌذ.
:HKey_Current_Config
ايي کليذ اؽبسٍگشي اعت ثَ ؽبخَ ،HKey_Local_Machine\Config
اىالّبتي دس هْسد پيکشثٌذي عختافضاس خبسي هتقل ثَ
کبهپيْتش دسثشداسد.
:HKey_Classes_Root
ايي کليذ اؽبسٍگشي اعت ثَ ؽبخَاي اص HKey_Local_Machineکَ
اىالّب تٌَيوب ًشمافضاسي سا دسثشداسد. ثغيبسي اص دادٍ-
ُب ايي کليذ دس 1.3 ً Windowsيض ّخْد داؽتَاًذ. ايي دادٍُب
ؽبهل تْبسيف ّ ًُْ عٌذُب، ُFile associationب، ّاعو پْعتَ (Shell
) ،Interfaceهيبًرب )ُ (Shortcutبي 59( Windowsکَ دس ّالِ OLE Link
ُغتٌذ) ّ چِبسچْة ّاعو کبسثش 59 ُ ... ّ Windowsغتٌذ.
:HKey_Dyn_Data
ايي کليذاؽبسٍ گشي اعت ثَ ؽبخَ اي اص HKey_Local_Machine
ّمْيتِبي پْيب ) (Dynamic Status Informationثشاي کَ ؽبهل اىالّب
63
کَ ثَ ٌّْاى لغويت اصاىالّب ّعيلَ )ُ (Deviceبي خمتلف اعت
Plug and Playرخريٍ هيؽْد.
:HKey_Users
ايي کليذ ثَ اىالّب شببم کبسثشاًي (اّن اصاىالّب ّبم ّ
خبؿ) کَ ثَ عيغتن ّاسد ) (Log Onؽذٍاًذ، ًؾبًَ هيسّد. شببم
کبسثشاًي کَ ثَ عيغتن ّاسد ؽذٍاًذ، هيتْاًٌذ ثَ اىالّب
ّبم، دعرتعي پيذا کٌٌذ. ايي اىالّب ؽبهل تٌَيوب پيؼفشك
ثشاي ثشًبهَُبي کبسثشدي، پيکشثٌذي هيضکبس) ّ (Desktopهبًٌذ
ايٌِبعت. ايي کليذ ثَ اصاي ُش کبسثش ّسّدي يک صيشکليذ
خمقْؿ اصمبد هيکٌذ.
:HKey_Current_User
ايي کليذ ثَ ؽبخَ هشثْه ثَ کبسثش فْلي اص کليذ HKey_Users
اؽبسٍ هيکٌذ.
4-2 عيغتن OLE
4-2-1 هفبُين اّليَ دس اًتمبل دادٍُب دس Windows
ؽيء ) :(objectدادٍ )( (Dataيْين يک تکَ اص هنت يب گشافيک يب
فذا يب ... ) ّ يک يب چٌذ ّول ثشاي اصمبد، دعرتعي ّ
ثکبسگريي آى دادٍ.
ًشمافضاس دٌُذٍ)ُ :(Serverش ثشًبهَاي کَ لشاس اعت ؽيء تْليذ
ؽذٍ دس آى ثَ يک ثشًبهَ ديگش هٌتمل ؽْد، ًشمافضاس دٌُذٍ
يب عشّيظدٌُذٍ ًبهيذٍ هيؽْد. پشداصػ ّ ّيشايؼ ايي ؽيء
ًيض ثشِّذٍ عشّيظدٌُذٍ اعت.
ًشمافضاس گريًذٍ)ً : (Clientشمافضاسي اعت کَ مشب اص آى ثشاي
رخريٍکشدى يک خغن ليٌک يب ادغبم ؽذٍ ( کَ تْعو ًشمافضاس
دٌُذٍ اصمبد ؽذٍ اعت) اعتفبدٍ هيکٌيذ. ثَ ايي ًشمافضاس
هؾرتي يب ًشمافضاس همقذ ًيض گفتَ هيؽْد.
ادغبم ) :(Embeddingاگش ؽيء ثَ ىْس کبهل دس اختيبس ًشمافضاس
همقذ لشاس گريد، گْيين ّول ادغبم فْس گشفتَ اعت. تْخَ
داؽتَ ثبؽيذ دس ايي فْس يک کپي اص ؽيء د اختيبس ًشم-
افضاس گريًذٍ لشاس هيگريد ّ ُشگًَْ تغيريي دس ايي ؽيء
تبثريي دس ؽيء افلي زمْاُذ داؽت.
پيًْذخْسدى) :(Linkingاگش اؽبسٍگشي ثَ ؽيء افلي دس اختيبس
ًشمافضاس گريًذٍ لشاس گريد، گْيين ّول پيًْذ فْس گشفتَ
اعت. يْين ؽيء افلي اص عشّيظدٌُذٍ ثَ هؾرتي پيًْذ صدٍ ؽذٍ
اعت ّ ُشگًَْ تغيري دس آى هغتميوً تغيري دس ؽيء افلي هي-
ب
ثبؽذ.
73
عٌذ هشکت: فبيل دادٍاي اعت کَ ّالٍّ ثش اىالّب راتي خْد،
ؽبهل يک يب چٌذ خغن عبختَ ؽذٍ تْعو ًشمافضاسُبي ديگش ُن
ثبؽذ.
4-2-2 هْشيف عيغتن :OLE
اهکبًب چٌذٍّيفَاي ) (multitaskingدس ّيٌذّص ّ اهکبًب Clipboard
ّ ً OLEشمافضاسُب س ااص زبلت هٌفشد خبسج کشدٍ ّ ثَ سازيت
ال
هيتْاًٌذ ثب ُن کبس کٌٌذ. هثً مشب هيتْاًيذ دس ثشًبهَ
Excelخذّيل اص فْسزبغبة خْد سا ىشازي کٌيذ ّ عپظ ايي خذّل
سا ثَ گضاسؽي کَ ثَ ّعيلَ ًشمافضاس Wordهيًْيغيذ ادغبم
اص ثشًبهَاي ثَ کشدٍ ّ يب ليٌک کٌيذ. اًتمبل اىالّب
ثشًبهَ ديگش دس ّيٌْدص تْعو clipboardداساي عَ ّيت اعت:
هٌتمل ؽذٍ ثَ ثشًبهَ همقذ پْيب ًيغت. يْين دس اىالّب
دس ثشًبهَ دس ثشًبهَ هجذأ، اىالّب تغيري اىالّب فْس
همقذ ثخ سّص سميؽْد.
ب
ثشاي تغيري اىالّب دس ثشًبهَ دّم غبلجً جمجْسيذ دس ثشًبهَ
اّل اىالّب سا تغيري دُيذ ّ فشايٌذ اًتمبل سا اص ًْ اذمبم
دُيذ.
کپيکشدى اىالّب اص يک ثشًبهَ ثَ يک ثشًبهَ ديگش کبس ثي-
فبيذٍاي اعت کَ دس هنبيت چٌذيي کپي اص اىالّب ثبثت ثْخْد
آهذٍ ّ زبفََ ثيؾرتي هقشف هيکٌذ.
عيغتن ُ OLEشعَ اؽکبل فْق سا ثشىشف کشدٍ اعت. OLEثب
عبدٍتش کشدى اعتفبدٍ هؾرتک اص اىالّب ثني چٌذيي ًشمافضاس،
زفٌ اتْهبتيک اىالّب هؾرتک ّ ًيض تشکيتکشدى اىالّب دس يک
عٌذ (ثذّى آکَ فنبي ديغک عخت ثيِْدٍ اؽغبل ؽْد) تْاًغت
ثش DDEپيؾي ثگريد. ثَ ٌّْاى هثبل ٌُگبهي کَ ثشاي يک فبيل
دادٍاي يب اخشايي يک هيبًرب ) (shortcutاصمبد هيکٌيذ دس ّالِ
دس زبل اعتفبدٍ اص ُ OLEغتيذ. شمبًيْس کَ اص افيالذ OLE
ثشهيآيذ، ثشاي اصمبد يک عٌذ هشکت يب ثبيذ اخغبم سا ثَ يک
عٌذ ليٌک کٌيذ ّ يب ايٌکَ اخغبم سا دس آى عٌذ ادغبم
کٌيذ.
4-2-3 سّػ ليٌک کشدى دس عيغتن OLE
خغن ليٌک ؽذٍ داساي اىالّب صيش اعت:
کليذ سخيغرتي الصم ثشاي ازَبس ًشمافضاس دٌُذٍ خغن
يک "هتبفبيل" کَ حمتْي دعتْسالْولِبي GDIالصم ثشاي تْيني
رمٍْ سمبيؼ خغن دس ًشمافبصس گريًذٍ ثبؽذ.
يک اؽبسٍگش ) (pointerثَ فبيل دٌُذٍ خغن کَ اىالّب هٌتمل
ؽذٍ دس آى ّخْد داسد.
ليٌک کشدى داساي هضايبي صيبدي اعت کَ هِرتيي آهنب ّجبستٌذ
اص:
83
ليٌک کشدى، ًشمافضاس گريًذٍ سا لبدس هيعبصد فبيل دادٍاي
اّليَ (کَ اىالّب اص آى هٌتمل ؽذٍاًذ) سا ثشسعي کشدٍ ّ
تغيريا ثْخْدآهذٍ دس آى سا ؽٌبعبيي کٌذ. اگش هؾخـ ؽْد
کَ دادٍُبي هٌتمل ؽذٍ دس عٌذ هجؤ تغيري کشدٍاًذ، OLEثَ-
ىْس اتْهبتيک اص ليٌک (صذمري) ثْخْد آهذٍ ثشاي ًْعبصي خغن
هٌتمل ؽذٍ دس عٌذ همقذ اعتفبدٍ هيکٌذ.
ثَ دليل آگبُي خغن اص ًشمافضاس دٌُذٍ ّ ًشمافضاس گريًذٍ
آى، مشب هيتْاًيذ خغن ليٌک ؽذٍ سا دس داخل ًشمافضاس
گريًذٍ آى ًيض ّيشايؼ کٌيذ(کبيف اعت سّي خغن ليٌک ؽذٍ
دّثبس کليک کٌيذ).
ثَ دليل آًکَ اىالّب هجذأ (يْين اىالّب هْخْد دس ًشم-
افضاس دٌُذٍ) دس يک فبيل خذاگبًَ (غرياص فبيل گريًذٍ)
دس لشاس داسًذ، مشب ثَ عبدگي هيتْاًيذ اص ايي اىالّب
عٌذُبي هشکت ديگش ًيض اعتفبدٍ کٌيذ. شمچٌني هيتْاًيذ ايي
ب
اىالّب سا هغتميوً دس داخل ًشمافضاس دٌُذٍ تغيري دُيذ.
هْاسدي کَ اص سّػ ليٌک کشدى اعتفبدٍ هيؽْد:
ٌُگبهي کَ هيخْاُيذ عٌذ هشکت کْچک ثبؽذ.
دس هْاسدي کَ هيوئي ُغتيذ عٌذ اّليَ خبجبب يب ززف زمْاُذ
ؽذ.
دس هْاسدي کَ هيخْاُيذ فبيل دادٍاي هجذأ ثَ ٌّْاى يک
ا
فبيل خذاگبًَ ّخْد داؽتَ ثبؽذ تب ثْذً ثتْاًيذ ثَ سازيت
آى سا تغيري دادٍ يب اص آى دس عٌذُبي هشکت ديگش اعتفبدٍ
کٌيذ.
دس هْاسدي کَ زمْاُيذ عٌذ هشکت سا اص ىشيك پغتالکرتًّيکي
يب ديغک فالپي ثشاي ديگشاى ثفشعتيذ.
4-2-4 اخغبم هتذاخل
اگش ًشمافضاس دٌُذٍ اهکبى ادغبم يب ليٌک کشدى اخغبم سا
داؽتَ ثبؽذ مشبم يتْاًيذ دس ًشمافضاس گريًذٍ (حمتْي خغن)
سّي خغن دّثبس کليک کشدٍ ّ ًشمافضاس دٌُذٍ س ا ثبص سمْدٍ
ّ عپظ يک خغن ليٌک يب ادغبم ؽذٍ ديگش سا دس داخل خغن
هزکْس (کَ خْدػ ُن ليٌک يب ادغبم ؽذٍ) ّاسد کٌيذ. ثَ
اخغبم تْليذ ؽذٍ دس ايي زبلت " اخغبم هتذاخل" گفتَ هي-
ؽْد. OLEاص ًَش تْذاد عيْذ اخغبهي کَ هيتْاًٌذ داخل
يکذيگش ّخْد داؽتَ ثبؽٌذ ُيچ حمذّدييت ًذاسد.
4-2-5 هيبًربُب )(shortcuts
هيبًربُب شمگي اخغبهي اص ًُْ ُ OLEغتٌذ. دس ايي زبلت خبؿ
ًشمافضاس گريًذٍ خغن ففسَ تقْيش ّيٌذّص اعت ّ هيبًرب يک
خغن ليٌک ؽذٍ اعت کَ ثَ فبيل افلي اؽبسٍ هيکٌذ. اگش مشب
93
کليذ HKEY_CLASSES_ROOT\LnkFileسا ثشسعي کٌيذ هتْخَ هي-
ؽْيذ کَ يک کليذ فشّي CLSIDدس آى ّخْد داسد کَ دس آى يک
فبيل DLLثَ ًبم SHELL32.DLLلشاس داسد کَ خضئيب ثکبسگريي
ايي خغن OLEدس آى هؾخـ ؽذٍ اعت.
4-2-6 سّػ ادغبم کشدى دس عيغتن OLE
دس ايي ؽيٍْ ثَ يک خغن ًَ تٌِب اىالّب سخيغرتي ثشًبهَ
دٌُذٍ آى ّ ًيض هتبفبيل سمبيؼدٌُذٍ آى (دس ثشًبهَ گريًذٍ)
ّاسد هيؽْد ثلکَ اىالّب هشثْه ثَ خغن ًيض ّاسد هيؽْد.
دس ايي سّػ ُشچيضي کَ مشب ثشاي سمبيؼ ّ کبس ثش سّي يک خغک
ًيبص داؽتَ ثبؽيذ دس داخل خْد آى خغن ّخْد داسد.
ثٌبثشايي ديگش ثَ فبيل دادٍاي هجذأ ًيبصي ًيغت ّ مشب ثَ
سازيت هيتْاًيذ عٌذ هشکيب کَ ثب ايي ؽيٍْ اصمبد ؽذٍ اعت سا
دس ُش ديغک يب کبهپيْتش ديگشي ثکبس گرييذ. صيشا دسيبفت-
کٌٌذٍ آى دس ّالِ اىالّب افلي سا دسيبفت هيکٌذ.
سّػ ادغبم دس هْاسد صيش ثکبس هيسّد:
دس هْاسدي کَ زدن عٌذ هشکت هنبيي هغؤلَاي ًجبؽذ.
دس هْاسدي کَ ًيبص ًجبؽذ فبيل دادٍاي هجذأ ثَ فْس يک
فبيل خذاگبًَ ّخْد داؽتَ ثبؽذ.
دس هْاسدي کَ هيخْاُيذ عٌذ هشکت سا ثشاي يک ًفش ديگش
ثفشعتيذ.
آزمايش 5- آشنايي با سيستمعامل ً Linuxبرنامو-
نٌيسي ر آ
ُذف اصًگبسػ ايي آصهبيؼ ثيبى شمَ هفبُين ّدعتْسُبي linux
ًيغت. دس ايي صهيٌَ کتبذببي هتْذدي هْخْد اعت کَ فِشعت
ثشخي اص آهنب دس خبؼ هشاخِ آهذٍ اعت. ُذف اصگشدآّسي ايي
جموَّْ آؽٌب عبخنت مشب ثب چگًْگي کبسثب ايي عيغتنّبهل اعت.
الجتَ دسزذي کَ مشب سا لبدس عبصد آصهبيؾِبي هشثْه ثَ
عيغتن ّبهل linuxسا اذمبم دُيذ.
پظ اص هيبلَْ ايي خضٍّ خْاُيذ تْاًغت:
ثب عيغتن استجبه ثشلشاس کٌيذ.
04
ثب پشًّذٍُب کبس کٌيذ ّ ثشًبهَُبي لبثل اخشا سا اخشا
کٌيذ.
اص ساٌُوبي عيغتن اعتفبدٍ کشدٍ، اىالّب هْسد ًيبص خْد
سا اص آى ثيبيذ.
پشًّذٍُبي خْد سا ثب ّيشايؾگشُب ّيشايؼ کٌيذ.
ثشًبهَ ُبي خْد سا ثب اثضاسُبي ثشًبهَ ًْيغي تشمجَ
( ،)compileاؽکبل صدايي(ّ )Debugاخشا کٌيذ.
5-1 هْشيف عيغتن ً ّ LINUXگبُي ثَ ّيژگيِبي آى
ثشاي هْشيف ذبرت عيغتن ّبهل linuxاثتذا ثب تبسخيچَ عيغتن
ّبهل ّ unixاًْاُ خمتلف آى آؽٌب هيؽْمي:
5-1-1 تبسخيچَ عيغتن ّبهل unix
عيغتن ّبهل unixدس عبل 9691 م. تْعو کيتبهپغْى ّ دًيظسيچي
ثشسّي کبهپيْتش 7- DEC PDPدس آصهبيؾگبُِبي ثل ثب صثبى امسجلي
ىشازي ؽذ. دس عبهلبي ثْذ تبهپغْى ّ سيچي unixسا ثب c
ثبصًْيغي کشدًذ. صثبى cلبثل محل ثْد ّکوک کشد کَ unixثَ
عيغتنّبهلي تجذيل ؽْد کَ هيتْاًغت ثش سّي اًْاُ هتفبّتي
ثَ عيغتنّبهل تْعَْ گشدد. اخشا کبهپيْتشُب اص
آصهبيؾگبُِبي ثل حمذّد ًؾذ ّ دس اّاعو دَُ 1791 unixيک
حمقْل زبميمبتي ثْد کَ داًؾگبُِبي ثغيبسي ثش سّي آى کبس
هيکشدًذ. اص آى صهبى تبکٌْى کبسُبي ثغيبسي ثش سّي unix
اذمبم گشفتَ اعت. ثب پيؾشفت فٌْت پشداصًذٍُب ٍِّْس
کبهپيْتشُبي لْيرت گًَُْبي هتْذدي اص آى ثش سّي
کبهپيْتشُبي گًْبگْى تْعو ؽشکتِب ّ هشاکض زبميمبتي خمتلف
دًيب اسائَ گؾتَ اعت; هبًٌذ: solarisثشاي پشداصًذٍُبي .Sparc
OSF/Iثشاي پشداصًذٍ ُبي 68( 80Xکَ دس ايي آصهبيؾگبٍ هْسد
تْخَ هب اعت)
ثَ ىْس کلي ّيژگيِبي صيش سا ثشاي اًْاُ خمتلف عيغتن ّبهل
unixهي تْاى ثش مششد:
طراحي مستقل از سخت افسا : اص آذمب کَ لغوت اَّن کذ ايي
عيغتنّبهل ثَ خبي ايٌکَ ثب امسجلي ًْؽتَ ؽْد ثَ صثبى c
ًْؽتَ ؽذٍ اعت دس همبيغَ ثب عيغتنّبهلُبي ديگش داساي
عشّت کورت ّيل اًْيبف ّ اىويٌبى ثيؾرتي اعت. ًگِذاسي چٌني
عيغتنّبهلي ثشاي تْليذکٌٌذگبى آى آعبًرت اص عيغتنّبهلي
اعت کَ ثب صثبى امسجلي تْليذ ؽذٍ اعت. ثَ شمني دليل
14
سّايتِبي صيبدي اص ايي عيغتنّبهل ثش سّي عخت افضاسُبي
خمتلف اصمبد ؽذٍ اعت.
چند کا بره بٌر : دس يک صهبى يک يب چٌذ کبسثش هيتْاًٌذ اص
عيغتن هجتين ثش unixاعتفبدٍ کٌٌذ. هٌبثِ عخت افضاسي
ثباسصػ هبًٌذ چبپگشُب ّعشّيظ دٌُذٍُبي ثضسگ(هبًٌذ عشّيظ
دٌُذٍُبي ؽجکَ)تْعو افشاد ثغيبسي لبثل اعتفبدٍ اعت.
چند ًظيفو اي بٌر : ُش کبسثش هيتْاًذ شمضهبى چٌذ ٍّيفَ
ال
خمتلف اذمبم دُذ(هثً چٌذ ثشًبهَ خمتلف سا ثَ ىْس شمضهبى
اخشا کٌذ)
ذاتي: لبثليت اتقبل کبهپيْتشُبي امکا شبکو شد بو صٌ
کْچک ّ ثضسگ ّ اصمبد ؽجکَُبي کبهپيْتشي دس هنبد ايي عيغتن-
ّبهل تْجيَ گؾتَ اعت ّ ثشاي اصمبد ؽجکَ ازتيبخي ثَ ؽجکَ
ديگشي ًيغت.
را ا بٌر پايانوىاي متين ً گرافيکي: اهشّصٍ اکثش عيغتوِبي
unixداساي پبيبًَُبي هتين يب گشافيکي ُغتٌذ. شمبى ىْس کَ
گفتَ ؽذ دس آغبص unixثشاي کبهپيْتشُبي ثضسگ ىشازي ؽذ.
ايي کبهپيْتشُب هتؾکل اص يک يب چٌذ پشداصًذٍ لْي هشکضي
ّتْذادي پبيبًَ( (Terminalثْدًذ. دعرتعي شمضهبى ثَ کبهپيْتش
اص ىشيك ايي پبيبًَُب اذمبم هيگشفت. دس ّالِ ثشاي
اعتفبدٍ اص لذس چٌذکبسثشٍ ثْدى ّخْد ايي پبيبًَُب الصم
ثْد. اّلني گًَُْبي ايي عيغتنّبهل داساي پبيبًَُبي هتين
ثْدًذ. يک پبيبًَ هتين داساي يک لبلت هتين اعت کَ کْچکرتيي
خضء لبثل تفکيک آى يک کبساکرت اعت (هبًٌذ حميو هتين .) Dos
ثب پيؾشفت کبهپيْتشُب ّگشايؼ کبسثشاى ثَ ّاعيِبي کبسثش
گشافيکي زبْل ثضسگي دس صهيٌَ پبيبًَُبي unixثَ ّلُْ
پيْعت. ٍِْس ( x window systemيب ثَ ىْسخمفف ّ )xاعو گشافيکي x
windowسا هيتْاى ثَ حميو Microsoft windowتؾجيَ کشد. Xيک
عيغتن پٌدشٍثٌذي گشافيکي اعت کَ يک ّاعو گشافيکي هٌْي ّ
کبسثشپغٌذ ( )user friendlyاسائَ هيکٌذ. اص ّيژگيِبي ثبسص ايي
ّاعو کبسثش، عِْلت ّ عبدگي استجبه کبسثش ثب کبهپيْتش
اعت. دس ّاعيِبي گشافيکي کْچکرتيي ّنْ لبثل تفکيک ففسَ
سمبيؼ يک ًميَ ( )pixelاعت حميو xداساي لبثليتِبي فشاّاًي
اعت کَ ثيبى آهنب زْفلَ ايي خضٍّ خبسج اعت.
5-1-2 تبسخيچَ عيغتنّبهل linux
پيؾشفت فٌْت سيضپشداصًذٍ ٍا ّ ٍِْس سيضکبهپيْتشُبي عشيِ
ّ لْي صهيٌَ سا ثشاي ثَّخْد آهذى گًَْاي unixثش سّي
سيضکبهپيْتشُب آهبدٍ عبخت. دس هبسط 1991 Linus torvaldsيک
عيغتن minixثشاي کبهپيْتش 683 خْد خشيذ تب اص آى ثشاي
ىشازي عيغتنّبهل چٌذٍّيفَاي خْد اعتفبدٍ کٌذ. دس هبٍ
عپتبهرب اّ اّلني ًگبسػ آهبدٍ عيغتنّبهل خْد سا ثش سّي
ؽجکَ ايٌرت ًت لشاس داد ّ اص شببم ّاللَهٌذاى ثشاي تکويل
24
آى دّْ ثَ شمکبسي کشد. ايي عيغتنّبهل کَ ايذٍ خْد سا
اص unixگشفتَ ثْد ً linuxبم گشفت. اص آى تبسيخ ثغيبسي اص
ثشًبهًَْيغبى عشاعش دًيب ثَ کبس ثش سّي linuxپشداختٌذ. ثَ
ايي تشتيت پشّژٍ linuxآغبص ؽذ ّ ثتذسيح لغوتِبي خمتلف آى
ؽکل گشفت ّکبهل گؾت. اکٌْى ايي عيغتنّبهل ثش سّي
سيضکبهپيْتشُب هجتين ثش پشداصًذٍ 68 80xهْخْد اعت. دس ايي
ثني هؤعغبتي هبًٌذ ً free software foundationيض هغّْليت پؾتيجبًي
ّ استمبي linuxسا ثش ِّذٍ گشفتَاًذ.
ثَ ىْس کلي ّيژگيِبي linuxسا هيتْاى ثَ فْس صيش ثش مششد:
ايي عيغتنّبهل سا هيتْاى ثش سّي يک کبهپيْتش هٌفشد ّ
خذا اص ؽجکَ ًيض ثَ کبس گشفت ّ ثشاي کبس ثب آى ّخْد يک
ؽجکَ هتؾکل اص چٌذيي سيضکبهپيْتش الضاهي ًيغت. الجتَ دس
ايي زبلت ديگش سميتْاى اص اهکبًب ؽجکَاي linuxاعتفبدٍ
کشد.
چٌذ ٍّيفَاي ّچٌذکبسثشٍ ثْدى شمچٌني اهکبى ؽجکَ ؽذى (کَ
پيؾرت ثشاي اًْاُ unixثش مششدمي) اص مجلَ ّيژگيِبي linuxاعت
ثب ايي عيغتنّبهل هيتْاى ؽجکَُبي ثغيبس لْي ىشازي کشد
کَ اهکبى اتقبل ثَ ؽجکَُبي ديگش سا ًيض داؽتَ ثبؽٌذ.
Linuxاهکبى اعتفبدٍ اص پبيبًَُبي هنت ّ شمچٌني پبيبًَُبي
گشافيکي هجتين ثش اعتبًذاسد xسا داسد.
5-2 ؽشُّ کبس ثب عيغتن ّبهل linux
5-2-1 ّسّد ثَ عيغتنّبهل
ٌُگبهي کَ کبهپيْتشي سا کَ linuxثش سّي آى ًقت ؽذٍ اعت
ساٍ اًذاصي هيؽْد. پيبم صيش ثش سّي ففسَ سمبيؼ آى ديذٍ
خْاُذ ؽذ:
:Grub
چْى مشب ثش سّي کبهپيْتش خْد ّالٍّ ثش عيغتن ّبهل linuxهي-
تْاًيذ عيغتوِبيّبهل ديگش هثل DOSسا ًيض ًقت ّ اعتفبدٍ
کٌيذ ايي پيبم اص مشب ًبم عيغتن ّبهل هْسد ًَش سا عْال
هيکٌذ .ثشاي اعتفبدٍ اص عيغتنّبهل linuxکلوَ linuxسا ّاسد
کٌيذ .پظ اص ايي linuxکبس خْد سا آغبص ّ کبهپيْتش سا ساٍ-
اًذاصي خْاُذ کشد. ثْذ اص اذمبم سًّذ ساٍاًذاصي ثشلشاسي
استجبه ثب عيغتنّبهل هيغش خْاٌُذ ثْد.
اص آذمب کَ عيغتنّبهل linuxچٌذ کبسثشٍ ثَ يک زغبة()Account
ًيبص خْاُذ داؽت ايي زغبة تْعو هذيش عيغتن تْشيف هي-
گشدد. دس ٌُگبم ثشلشاسي استجبه ثب عيغتن دس ّالِ ثَ
زغبة خْد ّاسد هيؽْيذ ّ عيغتنّبهل ثَ ًبزيَ کبسي هشثْه
ب
ثَ خْدتبى لشاس هيدُذ ُش زغبثي زتوً داساي يک کلوَ
کبسثشدي ( )User IDاعت کَ ثب آى ًبم تْعو عيغتن ثَ سمسيت
34
کلوَ زغبة يک ثشاي هيتْاى شمچٌني هيؽْد. ؽٌبختَ
ّجْس(ً )passwordيض دس ًَش گشفت.
ثشلشاسي استجبه سًّذ عبدٍاي اعت کَ مشب سا ثَ عيغتنّبهل
هْشيف هي کٌذ. ايي سًّذ ثب ٍبُش ؽذى يک پيبم loginثش سّي
ففسَ سمبيؼ کَ ًبم کبهپيْتش سا ًيض ثَ شمشاٍ داسد، آغبص
هيؽْد. ثشاي هثبل:
:Os-lab login
همبثل پيبم فْق ًبم کبسثشدي خْد سا ّاسد کٌيذ ّ کليذ enter
سا فؾبس دُيذ. ثْذ اص ّاسد ؽذى ًبم پيبم صيش سمبيؼ خْاُذ
يبفت:
:Password
ايي پيبم سهض ّجْس ( )passwordسا اص مشب هيخْاُذ (تْخَ
داؽتَ ثبؽيذ اگش زغبة کبسثش کلوَ ّجْس ًذاؽتَ ثبؽذ ايي
پيبم سمبيؼ زمْاُذ يبفت). کلوَ ّجْس خْد سا تبيپ کٌيذ ّ
کليذ enterسا فؾبس دُيذ. اگش ًبم کبسثشي يب کلوَ ّجْس خْد
سا دسعت ّاسد ًکشدٍ ثبؽيذ پيبهي هجين ثش اؽتجبٍ ثْدى آهنب
دسيبفت خْاُيذ کشد ّ دّثبسٍ پيبم ٍ loginبُش خْاُذ ؽذ. دس
فْس دسعت ثْدى ًبم کبسثشي ّ کلوَ ّجْس عيغتن ثب ًؾبى
دادى خو فشهبى ثَ مشب آهبدگي خْد سا دسيبفت فشهبهنب اّالم
کشد.
ًکتَ:دس linuxهيتْاى دس آى ّازذ ثَ 6 پبيبًَ دعرتعي داؽتَ
ثبؽذ کَ ثَ تشتيت 1 ttyتب 6ً ttyبهيذٍ هيؽًْذ. تْذاد ايي
پبيبًَُب ثغتگي ثَ تٌَيوِبي عيغتنّبهل ٌُگبم ساٍاًذاصي
آى داسد. ّليت کَ اّالى loginسا ثش سّي ففسَ پبيبًَ هؾبُذٍ
کشديذ عْي کٌيذ ثب کليذُبي (خِت چپ ثب ساعت اص هکبى سمب)
+Altثَ پبيبًَُبي ديگش ثشّيذ. دس آصهبيؾِبي آيٌذٍ ثب
اعتفبدٍ اص ايي لبثليت هيتْاى دس حميو هنت شمضهبى ثيؼ اص
يک پبيبًَ سا اعتفبدٍ کٌيذ.
ثشاي ليِ کشدى استجبه خْد ّ ثغنت زغبثتبى هيتْاًيذ اص
دعتْس logoffاعتفبدٍ کٌيذ ّ يب کليذ ُبي ctrl+dسا فؾبس
ا
دُيذ. ايي کبس ثبّث خْاُذ ؽذ پيبم loginجمذدً ثش سّي ففسَ
ٍبُش ؽْد.
تزکش هِن: لجل اص خبهْػ کشدى کبهپيْتش اثتذا زغبة
خْدتبى سا ثجٌذيذ عپظ عَ کليذ ctrl+alt+deleteسا فؾبس دُيذ.
ثب ايي کبس linuxپبک هيؽْد ّ کبهپيْتش سا ثشاي ()shut down
آهبدٍ هيکٌيذ. پظ آًکَ linuxکبسُبي خْد سا ثَ اشببم سعبًذ
ففسَ پبک هيؽْد ّ کبهپيْتش ّاسد هشزلَ ساٍ اًذاصي جمذد
ؽذٍ عپظ پيبم ٍ LILOبُش هيؽْد. دس ايي ٌُگبم هيتْاًيذ
کبهپيْتش سا خبهْػ کٌيذ.
44
5-2-2 ساٌُوبي عيغتن
ثَ شمشاٍ گًَُْبي خذيذ ّ unixاص مجلَ linuxثغتَ خبهِ ساٌُوبي
عيغتن زبت ٌّْاى ففسَ ساٌُوب ( )Manual pageاسائَ ؽذٍ اعت.
ُشخب کَ دس کبس کشدى ثب اهکبًب عيغتن ّبهل ثَ اؽکبل
ثشخْسديذ عْي کٌيذ اص ايي ففسب ساٌُوب ثب اعتفبدٍ اص
فشهبى manکوک ثگرييذ. ايي فشهبى زذالل ثَ يک پبساهرت ًيبص
ال
داسد ّآى کلوَ کليذي ( )keywordدسخْاعيت اعت. هثً ثشاي
گشفنت اىالّب دس هْسد دعتْس isثبيذ فشهبى صيش سا فبدس
کٌيذ:
$ man is
ايي جموَّْ دس9 فقل عبصًذُي ؽذٍ اعت کَ عَ فقل اّل آى دس
ايي آصهبيؾگبٍ ثَ کبس هيآيذ:
فقل اّل هشثْه ثَ فشهبهنبيي اعت کَ دس اختيبس کبسثش لشاس
داسًذ.
فقل دّم هشثْه ثَ کتبخببًَ اعتبًذاسد فشاخْاًيِبي
عيغتن( )system callsدس linuxاعت.
فقل عْم تْاثِ کتبخببًَ صثبى cسا ؽشذ هيدُذ.
هيتْاًيذ ثب گضيٌَ -sثَ manثگْييذ کَ دس کذام فقل هْمُْ
سا خغتدْ کٌذ. فشهبى صيش دس فقل عْم ساٌُوبُب ثَ دًجبل
دعتْس ( exitدس صثبى cاعتفبدٍ هي ؽْد) هيگشدد:
$ man –s exit
5-2-3 عيغتن فبيل () file system
ً Linuxيض شمبًٌذ شمَ عيغتوِبي ّبهل ثَ ىشص چؾوگريي ثش
اىالّب رخريٍ ؽذٍ دس پشًّذٍُب تکَ هيکٌذ، اىالّب کبسثشاى
خمتلف پشًّذٍُبي اخشايي هْسد ًيبص کبسثشاى پشًّذٍُبي
دادٍاي هشثْه ثَ آهنب کتبخببًَُبي هْسد ًيبص ثشاي ثشًبهَ-
ًْيغي اىالّب هشثْه ثَ تٌَيوِبي عخت افضاسي ّ اهکبًب
هْخْد دس عيغتن کذ اخشايي خْد عيغتن ّبهل ّ ثغيبسي
اىالّب ديگش شمگي ثَ فْس پشًّذٍ رخريٍ هيؽًْذ. ثٌبثشايي
فْقالزکش الصم اعت کَ ايي ثب تْخَ ثَ زغبعيت اىالّب
پشًّذٍُب زبت يک ًَبم لْي ّ لبثل اىويٌبى هذيشيت ّ
ًگِذاسي ؽًْذ. دس عيغتوِبي ّبهل اذمبم ايي ٍّبيف ثش ِّذٍ
ال
عيغتن پشًّذٍ اعت. هثً دس dosعيغتن ّ FATدس عيغتن ّبهل
windows NTعيغتن پشًّذٍ NTFSثشاي ايي کبس ىشازي ؽذٍاًذ.
گًَْ ُبيي اص Unixکَ لجل اص ً BSDگبسػ 2/4 اصمبد ؽذٍ اًذ
ُش يک عيغتن پشًّذٍ هشثْه ثَ خْد سا داؽتٌذ يکي اص
ّيژگيِبي خبلت تْخَ عيغتنّبهل Linuxدس ًگبسؽِبي system V
4 Rrlraseثَ ثْذ ايي اعت کَ عيغتن پشًّذٍ آى، اًْاُ
عيغتوِبي پشًّذٍ هْخْد سا هيؽٌبعذ ّ لبدس اعت اىالّب
هْخْد دس آهنب (يْين پشًّذٍُبيؾبى سا) خبْاًذ. عيغتوِبي
پشًّذٍ پشاعتفبدٍ دس ّ Unixجبستٌذ اص:2 ّ Extended file system
54
system v file systemفشفًَش اص ًُْ عيغتن پشًّذٍ ثبيذ اىالّبتي
سا کَ عيغتنّبهل ثشاي ؽٌبعبيي کبهل يک پشًّذٍ ًيبص داسد
هِيب کٌٌذ.
عيغتن فبيل دس linuxثش خالف عيغتن فبيل دس ّيٌذّص کَ هي-
تْاًذ ؽبهل چٌذ دسايْ هٌيمي ثبؽذ (ًَري:. )…. c b aتٌِب
ؽبهل يک دسايْ اعت کَ آى ُن چْى فمو يکي اعت ًبم خبفي
ًذاسد. ؽبخَ سيؾَ ايي دسايْ ثب ّالهت / ؽٌبختَ هي ؽْد ّ
شببم فبيلِب ّ دايشکتْسُبي linuxدسؽبخَ/ لشاس هي گريدًذ.
ً
ؽبخَُبي افلي عيغتن کَ هغتميوب دس ؽبخَ / لشاس داسًذ
ّجبستٌذ اص: ّ bin .root .mnt.home.lib .etcچٌذ ؽبخَ ديگش دس
ايٌدب هب تٌِب اؽبسٍاي ثَ ؽبخَ ُبي homeّrootهيکٌين.
شمبًٌذ ّيٌذّص 1112 کَ دّ ًُْ کبسثشداسد:
1-کبسثشاى ّبدي
2- هذيش عيغتن ثب ًبم خبؿ administrator
ً Linuxيض هبًٌذ ّيٌذّص 1112 شمني دّ ًُْ کبسثش سا داسد ّ دس
ً linuxبم خبؿ کبسثشي ثشاي هذيش عيغتن ثَ خبي root ،administrator
اعت ثٌبثشايي ؽبخَ (/) rootؽبخَ خمقْؿ هذيش عيغتن اعت ّ linux
اخبصٍ ّسّد ّ تغيري حمتْيب ايي ؽبخَ سا ثَ ُيچ کبسثشي ثَ
غرياص هذيش عيغتن سميدُذ ّ هذيش عيغتن فبيلِب ي غري جمبص
ثشاي هؾبُذٍ ديگشاى سا هيتْاى دس ايي ؽبخَ لشاس دُذ.
شمچٌني ُش کبسثش (ًبم کبسثشي خذيذ هثل )userکَ تْعو هذيش
عيغتن دس linuxثجت هيؽْد يک دايشکتْسي خذيذ ثب ًبم کبسثشي
اّ دس ؽبخَ /homeاصمبد هيؽْد (هثال1 )/home/userکَ ّليت کبسثش
ثَ عيغتن loginهيکٌذ ايي ؽبخَ ثَ ٌّْاى ؽبخَ خبسي اّ هي-
ثبؽذ (کَ الجتَ لبثل تغيري اعت ). لبثل تْخَ اعت کَ اگش
هثال کبسثش 1 userفبيلِب ّ دايشکتْسي سا دس ؽبخَ 1/home/user
رخريٍ کٌذ ُيچ کبسثش ديگشي اخبصٍ ّسّد ثَ ايي ؽبخَ ّ
ديذى حمتْيب آى سا اًذاصٍ هگش rootکَ اخبصٍ ّسّد ّتغيري
شمَ دايش کتْسيِبي عيغتن سا داسد. دس اداهَ ثَ ؽشذ ايي
اىالّب هيپشداصمي:
ًُْ پشًّذٍ: دس linuxاًْاُ خمتلفي اص پشًّذٍ ّخْد داسد. ثَ
ُش ًُْ يک زشف کْچک اًگليغي هتٌبٍش اختقبؿ دادٍ ؽذٍ اعت
.کبسثشد ايي زشّف سا ثْذا دس تْميسب دعتْس isخْاٌُذ
ديذ. اًْاُ خمتلف پشًّذٍ ثَ شمشاٍ هتٌبٍشؽبى دس ؽکل1-3
فِشعت ؽذٍ اعت :
ًُْ پشًّذٍ زشف
هتٌبٍش
Ordinary file -
directory D
fifo P
Character device C
64
Block device B
Link to another file l
ؽکل 1-3:اًْاُ پشًّذٍ ُبي هْخْد دس linux
ًُْ اّل اغلت ؽبهل پشًّذٍُبي هنت ّ پشًّذٍُبي دادٍاي هي-
ال
ؽْد. هثً پشًّذٍُبي ثشًبهَُبي صثبى cاص ايي ًٌّْذ.
ًُْ دّم ًيض کَ ثشاي کبسثشاى ًُْ windows ّ dosپشًّذٍ
ؽٌبختَ ؽذٍاي اعت. ثشاي دعتَثٌذي جموَُّْبي پشًّذٍ
اعتفبدٍ هيؽْد.
ًّْ FIFOي پشًّذٍ اعت کَ ثشاي ثشلشاسي استجبه ثني فشايٌذُب
اعتفبدٍ هيؽْد. يکي اص ساُِبي تجبدل اىالّب ثني فشايٌذُب
دس linuxاعتفبدٍ اص FIFOاعت. ّيژگي ايي کبًبل استجبىي
ايي اعت کَ پظ اص ليِ استجبه ثني فشايٌذُب اص ثني سميسّد ّ
پبيذاس ثبلي هيهبًذ.
لجل اص تْمير دادى ًُْ ُبي bّcالصم اعت هيبليب سايح ثَ
رمٍْ اعتفبدٍ linuxاص عخت افضاس ثذاًيذ:
عيغتن ّبهل linuxثب ُش عختافضاسي ثَ يک پشًّذٍ ثشخْسد هي-
کٌذ. هثً اسعبل يک ثلْک دادٍ ثَ چبپگش هْبدل ًْؽنت آى ال
ثلْک دادٍ دس پشًّذٍ هتٌبٍش ثب چبپگش اعت. ثَ ايي
پشًّذٍ، پشًّذٍ دعتگبٍ ( )device fileگفتَ هيؽْد. ّوليب
ّسّدي ّ خشّخي دس عخت افضاسُبي خمتلف ثَ دّ فْس اذمبم هي-
ؽْد:
اسعبل ّ دسيبفت ثبيت ثَ ثبيت دادٍ ُب.
اسعبل ّ دسيبفت ثلْکي دادٍُب (دس يک اًتمبل ثبيت هٌتمل
هي ؽْد.)
هتٌبٍش ثب ايي تمغينثٌذي پشًّذٍُبي دعتگبٍ ًيض ثَ دّ
دعتَ تمغين هيؽًْذ:
:Character deviceهبًٌذ دسگبٍ عشي (.)serial port
:Block deviceهبًٌذ ديغک عخت .
پشًّذٍُبي ًُْ اّل سا ثب زشف ًُْ ّ cدّم سا ثب bسمبيؼ
ا
هيدٌُذ. ثْذً دسثبسٍ ايي پشًّذٍ ُب هيبلت ثيؾرتي خْاُين
داًغت.
هبلک پشًّذٍ: هبلک پشًّذٍ کغي اعت کَ پشًّذٍ سا اصمبد هي-
کٌذ. هبلک پشًّذٍ هيتْاًذ آى سا ثَ هبلکيت کبسثشاى ديگش
دسآّسد. هذيش عيغتن ّ کبسثشاى اصمبدکٌٌذٍ سمًَُْبيي اص
هبلکبى پشًّذٍاًذ.
گشٍّ پشًّذٍ: دس عيغتنّبهل linuxکبسثشاى ثَ گشُِّبيي
تمغين هيؽًْذ. ثشاي يک پشًّذٍ ّالٍّ ثش آى مشبسٍ گشُّي اص
کبسثشاى کَ هيتْاًٌذ ثَ آى پشًّذٍ دعرتعي داؽتَ ثبؽٌذ
ًگِذاسي هيؽًْذ.
اخبصٍُبي دعرتعي ( :) Access permissionsرمٍْ دعرتعي افشاد ثَ
پشًّذٍُب سا هؾخـ هيکٌذ. عَ دعتَ اص افشادي کَ هيتْاًٌذ
ثَ پشًّذٍ دعرتعي داؽتَ ثبؽٌذ ّجبستٌذ اص:
هبلک پشًّذٍ
74
افشاد دسّى گشٍّ هشثْه ثَ آى پشًّذٍ
ثميَ کبسثشاى
ثشاي ُش کذام اص افشاد فْق عَ ًُْ اخبصٍ دعرتعي هيشذ هي
ؽْد:
خْاًذى()read
ًْ ؽنت()write
اخشا کشدى()execute
ثٌبثش ايي شمشاٍ اىالّب ُش پشًّذٍ 9 اخبصٍ دعرتعي ًگِذاسي
هيؽْد . فبزت پشًّذٍ ّ شمچٌني هذيش عيغتن هيتْاًٌذ ايي
اخبصٍُب سا تغيري دٌُذ. اگش کبسثشي اخبصٍ ًْؽنت دس يک
ؽبخَ سا ًذاؽتَ ثبؽذ آى کبسثش سميتْاًذ ثَ پشًّذٍ ُبي
دسّى آى دعرتعي داؽتَ ثبؽذ. ثشاي ديذى اخبصٍُبي هٌتغت ثَ
يک پشًّذٍ دعتْس Is-Iسا ثکبس ثربيذ.
تبسيخ: تبسيخ اصمبد آخشيي تغيري ّ آخشيي دعريعي ثَ پشًّذٍ
ًيض دس هؾخقب آى ًگِذاسي هيؽْد .
اًذاصٍ: شببم اًْاُ پشًّذٍُب جبض پشًّذٍُبي دعتگبُي داساي
اًذاصٍ ثش زغت ثبيت ُغتٌذ. پشًّذٍُبي دعتگبُي ًيض چْى
ّالًْ اىالّبتي دسّى خْد ًذاسًذ اًذاصٍؽبى ففش اعت. ثشاي ب
ايي ًُْ پشًّذٍُب ثَ خبي اًذاصٍ دّ ّذد فسير ثضسگرت اص
ففش رخريٍ هيؽْد کَ دس لغوت ُغتَ ( )KERNELثَ آهنب خْاُين
پشداخت.
ًبم پشًّذٍ: دس ًگبسػ اعتبًذاسد unixزذاکثش ىْل ًبم
پشًّذٍ 41 کبساکرت اعت. اهب ثغتَ ثَ ًُْ عيغتن پشًّذٍ ايي
لبثليت ّخْد داسد کَ تب 652 کبساکرت ثشاي ًبم پشًّذٍ رخريٍ
ؽْد. دس ً linuxبم پشًّذٍ هيتْاًذ 652 کبساکرت داؽتَ ثبؽذ ّ
تٌِب ًْيغَ غري جمبص دس ًبم پشًّذٍ / اعت .ايي کبساکرت خذا
کٌٌذٍ ًبم ؽبخَ دس هغري دُي ثَ ًبم يک اعت:/usr/XII/oin/xinit
5-2-4 رمٍْ تغيري اخبصٍ ُبي دعرتعي
ثب اعتفبدٍ اص دعتْس )change-mod( chmodهيتْاى اخبصٍ دعرتعي
هشثْه ثَ فبيل يب دايشکتْسي سا تغيري داد. ايي دعتْس ثَ
فْس صيش ثَ کبس هيسّد:
ًبم فبيل يب دايش کتْسي chmod ugo+r+w+x
دس دعتْس ثبال )user( uيْين ؽخـ اصمبدکٌٌذٍ ايي فبيل يب
دايشکتْسي اعت. ً )group( Gؾبًَ گشٍّ ّاثغتَ ثَ اصمبد
کٌٌذٍ فبيل ّ )other( oثَ هٌْبي کبسثشاى ديگش ثَ غري اص
اصمبدکٌٌذٍ ّ گشٍّ هشثْه ثَ اّعت. شمچٌني )read(+rثَ هْين
اصمبد اخبصٍ خْاًذى ثشاي فبيل يب دايشکتْسي هزکْس )write(w
ثَ هْين اصمبد اخبصٍ ًْؽنت ّ )execute(xثَ هْين اصمبد اخبصٍ اخشا
ثشاي فبيل هزکْس اعت، ثٌبثشايي ثَ ىْس هثبل اخشاي دعتْس
84
Chmod ugo+r+w+x test1.exe
ُشکغي کَ loginکشدٍ هْخت هيؽْد کَ فبيل test1.exeتْعو
ثبؽذ(چَ اصمبد کٌٌذٍ ايي فبيل چَ افشاد هشثْه ثَ گشٍّ اّ
ّ چَ عبيش کبسثشاى) لبثل خْاًذى، ًْؽتَ ؽذى ّ اخشا
ثبؽذ.
شمچٌني لبثل تْخَ اعت کَ دس دعتْس ثبال الصم ًيغت کَ ugo
ثَ ّ +r+w+xشمگي سا ثب ُن ثَ کبس ثربمي. شمچٌني دس فْس
کبسثشدى –r-w-xثَ هٌْبي علت اخبصٍ خْاًذى ًْؽنت ّ اخشاي
ال
فبيل يب دايش کتْسي هزکْس اعت. هثً اخشاي دعتْس صيش
هْخت هيؽْد کَ عبيش افشاد ثَ غري اص اصمبد کٌٌذٍ اّ اخبصٍ
خْاًذى ّ اخشاي فبيل test1.exeسا کَ دس ؽبخَ خبسي اعت
داؽتَ ثبؽٌذ ّيل اخبصٍ ًْؽنت ّ تغيري دسآى سا ًذاؽتَ
ثبؽٌذ.
Chmod o-w+r+x test1.exe
5-2-5 فشايٌذ ()process
5-2-5-1 تْبسيف
داًغتين کَ linuxيک عيغتنّبهل چٌذ ٍّيفَاي اعت يْين شمضهبى
چٌذ ثشًبهَ سا هيتْاى سّي يک پشداصًذٍ اخشا کٌذ کَ
هتٌبٍش ثب ُش ثشًبهَاي کَ دس عيغتن اخشا هيؽْد عيغتن
ّبهل يک فشايٌذ اصمبد هيکٌذ. دس عيغتن ّبهل linuxثشاي ُش
فشايٌذ اىالّب صيبدي ًگِذاسي ؽذٍ کَ دس اداهَ ثشخي اص
آهنب ؽشذ دادٍ هيؽًْذ :
ُ :PIDش فشايٌذي دس عيغتن يک مشبسٍ ( )Process IDداسد کَ اص
ايي پظ ثب ًبم pidثَ آى اؽبسٍ خْاُين کشد. عَ فشايٌذ
ّيژٍ دس عيغتن ّبهل linuxتْشيف ؽذٍاًذ ّ ٌُگبم ؽشُّ ثَ
کبس عيغتن اصمبد هيؽًْذ ّ ٌُگبم پبيبى کبس عيغتن اص ثني
هيسًّذ. ايي فشايٌذ مشبسٍُبي ثبثت داسًذ ّ ّجبستٌذ اص
coordinatorثب مشبسٍ ففش initثب مشبسٍ يک ّ swapperثب مشبسٍ دّ .
ُ:PPIDش فشايٌذ هيتْاًذ فشايٌذُبي ديگشي سا اصمبد کٌذ.
ايي فشايٌذ پذس فشايٌذُبي خذيذ خْاُذ ثْد. ُش يک اص
فشايٌذُبي فشصًذ مشبسٍ فشايٌذ پذس خْد ( )parent process IDسا
ثَ شمشاٍ داسًذ. شببم فشايٌذُب دس عيغتن يک پذس داسًذ ّ
پذس هنبيي فشايٌذُب initاعت.
5-2-5-2 اخشاي فشايٌذُب دس پظ صهيٌَ ()background
ثب افضّدى ّالهت & ثَ آخش ُش فشهبى يب ثشًبهَ هيتْاى آى
سا دس پظصهيٌَ اخشا کشد. دس ايي زبلت ّ linuxالٍّ ثش اخشاي
ثشًبهَ رکش ؽذٍ ثب دادى اّالى خو فشهبى آهبدگي خْد سا
خِت گشفنت فشهبى يب ثشًبهَاي ديگش اّالم هيکٌذ (ثذّى
94
ايٌکَ اخشاي ثشًبهَ لجلي پبيبى يبفتَ ثبؽذ). ثذيي تشتيت
دّ يب چٌذ فشهبى سا هيتْاى ثب ُن اخشا کشد.
5-2-5-3 ُغتَ linux
ُغتَ ٍّ linuxبيف هذيشيت فشايٌذُب هذيشيت زبفََ هذيشيت
پشًّذٍ ّ استجبه ثب عخت افضاس سا ثش ِّذٍ داسد ُغتَ
ال
عيغتن ّبهل کبهً ّاثغتَ ثَ عخت افضاس اعت ّ ثبّث اعتمالل
ثشًبهَُبي کبسثشدي اص عخت افضاس هيؽْد. ثٌبثش ايي
ال
ثشًبهًَْيغي ثشاي ايي لغوت ثب ثشًبهَ ًْيغي linuxکبهً
تفبّ داسد ّ ًيبص ثَ داؽنت آگبُي اص عختافضاس ّ ًيض رمٍْ
پيبدٍعبصي ُغتَ داسد. دس linuxيک فشايٌذ هيتْاًذ ثب
اعتفبدٍ اص فشاخْاهنبي عيغتن ( )system callاص اهکبًب ُغتَ
ال
اعتفبدٍ کٌذ. هثً يک فشايٌذ ثشاي ثبص کشدى يک پشًّذٍ اص
فشاخْاى عيغتن openاعتفبدٍ هيکٌذ.
5-2-5-4 پْعتَ linux
ال
دس linuxهْوًْ ثشًبهَاي اص ًُْ پْعتَ ّاعو استجبىي کبسثش
ثب عيغتنّبهل هيؽْد . ايي ثشًبهَ فشهبى کبسثش سا دسيبفت
هيکٌذ ّ ثب اعتفبدٍ اص عشّيظُبي لغوتِبي ديگش آى سا
ال
اخشا هيکٌذ. هثً ّليت کبسثش دعتْس lsسا ثشاي ديذى ليغت
پشًّذٍُب فبدس هيکٌذ پْعتَ اثتذا ثب اعتفبدٍ اص
عشّيغِبي عيغتن پشًّذٍ، پشًّذٍ اخشايي lsسا دس ؽبخَ
هييبثذ. عپظ ثب اعتفبدٍ اص يک فشاخْاى عيغتن /usr/bin
فشايٌذ خذيذ اصمبد کشدٍ دس آى usr/bin/lsسا اخشا هيکٌذ. تفغري
ّ اخشاي فشهبهنبيي کَ دس پبي اّالى عيغتن ّاسد هيگشدد ثَ
ِّذٍ پْعتَ اعت. ثب تْْيل پْعتَ لبلت فشهبهنبيتبى ًيض
دمکي اعت تغيري کٌذ کَ ثشاي فِويذى هيلت ثبيذ ثَ ساٌُوبي
پْعتَ آى عيغتن هشاخَْ کٌيذ. پْعتَاي کَ دس آصهبيؾگبٍ
اص آى اعتفبدٍ هيؽْد ً bashبم داسد.
شمچٌني پْعتَ يک صثبى ثشًبهًَْيغي تفغريي(هؾبثَ پشًّذٍ ُبي
دعتَ اي ( )Batch filesدس )DOSدس اختيبس کبسثش لشاس هيدُذ.
5-2-6 ثشًبهَ ًْيغي
دس عيغتنّبهل linuxهفبُين هتذاّل دس عيغتنّبهل ثَ عبدگي ّ
صيجبيي پيبدٍعبصي ؽذٍ اعت. اهب دس اثتذا دمکي اعت
اعتفبدٍ اص آهنب ثشاي ثشًبهًَْيغبى ّبدي اًذکي ًبهبًْط
ثبؽذ. ثشًبهًَْيغي دس linuxسا هيتْاى ثَ دّ دعتَ کلي صيش
تمغين کشد:
05
ثشًبهَ ًْعي کبسثشدي ()application programming
ثشًبهَ ًْيغي ُغتَ ()kernrl programming
ًُْ اّل ثشًبهًَْيغي ثشاي اصمبد ثشًبهَُبي ّبدي ثکبس هي-
سّد. هؾخقَ افلي چٌني ثشًبهَُبيي ايي اعت کَ هيبثك
ال
هْوبسي linuxکبهً هغتمل اص عختافضاس ُغتٌذ. ُغتَ ثَ ٌّْاى
يک پل استجبىي ثني عختافضاس ّ ثشًبهَُب ايي اعتمالل سا
تؤهني هيکٌذ. ًُْ دّم ثشًبهًَْيغي ثشاي افضايؼ لبثليتِب
ال
عيغتنّبهل اعتفبدٍ هيؽْد. هثً ايٌکَ عيغتن ّبهل ثتْاًذ
اص عختافضاس خذيذي محبيت کٌذ ثبيذ ثشًبهَُبيي اص ايي دعت
سا ثَ آى افضّد.
دس ثشًبهًَْيغي ثشاي linuxصثبى cثيؾرتيي کبسثشد داسد ّ
تمشيجً شببم تْاثْي کَ دس ثشًبهًَْيغي اعتفبدٍ هيؽْد ثَ ب
صثبى ًْ cؽتَ ؽذٍاًذ ثشاي سمًَْ شببم فشاخْاهنبي عيغتن ثَ
فْس تْاثِ صثبى cاصمبد ؽذٍاًذ.
ثَ شمشاٍ linuxکتبخببًَُبي خبًيب صثبى ً cيض ّخْد داسد کَ دس
ثيؾرتي دس اختيبس همبيغَ ثب کتبخببًَُبي هْوْيل اهکبًب
ثشًبهًَْيظ لشاس هي دٌُذ ّ ثشًبهَ ًْيظ هيتْاًذ دس
هْالْي کَ اعتفبدٍ اص فشاخْاهنبي عيغتن هؾکل هيؽْد اص
ايي کتبخببًَُب اعتفبدٍ کٌذ.
5-2-6-1 ( gccهرتخن صثبى )c
پظ اص آًکَ ثشًبهَ خْد سا تْعو يک ّيشايؾگش اصمبد کشديذ
ثبيذ آى سا تْعو ثشًبهَ gccتشمجَ کٌيذ. لبلت کلي ايي
فشهبى ثَ فْس صيش اعت:
$gcc source_filename_o executable_filename
ثَ ٌّْاى هثبل اگش خبْاُين ثشًبهَ myfork.cسا تشمجَ کٌين ّ
ًبم پشًّذٍ لبثل اخشاي آى myfoklثبؽذ عيش صيش سا ّاسد
خْاُين کشد:
1$gcc myfork.c _o myfork
5-2-6-2 اؽکبلضدايي ثب gdb
ثشاي اؽکبلضدايي ثشًبهَُبيتبى دس linuxهيتْاًيذ اص
اؽکبلضداي gdbاعتفبدٍ کٌيذ. ثشاي ايي کبس اثتذا ثشًبهَ
خْد سا ثب گضيٌَ (gهشثْه )gccتشمجَ کٌيذ. عپظ دس اّالى linux
فشهبى gdbسا ثَ شمشاٍ ًبم پشًّذٍ لبثل اخشاي ثشًبهَ ّاسد
کٌيذ. ثب ايي کبس ّاسد حميو gdbؽذٍ ثَ کوک فشهبهنبي ايي
حميو هيتْاًيذ ثَ اؽکبلضدايي ثشًبهَ خْد ثپشداصيذ.
خالفَ اص ايي فشهبىُب ثب تْميسب هشثْه دس ؽکل 2-4 آهذٍ
اعت.
15
شکل کلي فرما تٌضيحا
>#Breakuntil اخشاي ثشًبهَ تب سعيذى ثَ خو
هْسد ًَش
>PrintPrint#Clearsort ّ who|sortدس چيغت؟
8. تفبّ make depend ّ makeسا تْمير دُيذ.
ساٌُوب ثَ ّعيلَ 9. ّولکشد تبثِ getpidسا اص ففسب
دعتْس manثيبثيذ. ثب اعتفبدٍ اص ايي دعتْس دس
پشًّذٍ pid.cثشًبهَاي ثٌْيغيذ کَ مشبسٍ PIDخْد سا
چبپ کٌذ. ايي ثشًبهَ سا ثب اعتفبدٍ اص gccتشمجَ ّ ثَ
دفْب اخشا کٌيذ. چَ ًتيدَاي هيگرييذ؟
35