Welcome to Scribd, the world's digital library. Read, publish, and share books and documents. See more
Download
Standard view
Full view
of .
Save to My Library
Look up keyword
Like this
1Activity
0 of .
Results for:
No results containing your search query
P. 1
Unix Linux

Unix Linux

Ratings: (0)|Views: 577|Likes:
Published by butimarr
yazılım sistemleri hakkında bilgilendirici döküman.
yazılım sistemleri hakkında bilgilendirici döküman.

More info:

Published by: butimarr on Aug 24, 2009
Copyright:Attribution Non-commercial

Availability:

Read on Scribd mobile: iPhone, iPad and Android.
download as PDF, TXT or read online from Scribd
See more
See less

08/24/2009

pdf

text

original

 
 Unix/LinuxSistem ProgramlamaDersNotlar
ı
 CSD 2002
 Bu notlar C ve Sistem Programc
ı
lar 
ı
Derne
 ğ 
i'nin düzenledi
 ğ 
i, Kaan Aslan taraf 
ı
ndan aç
ı
lm
ış
 olan Unix/Linux Sistem Programlama kursunda derste tutulan notlardan derlenerek haz
ı
rlanm
ış
ı
r.
C ve Sistem Programc
ı
lar Derne
ğ
iAdres: 2.Ta
ş
oca
ğı
Cad. O
ğ
uz Sok. No:5 Mecidiyeköy / 
İ
stanbulTelefon: (212) 288 35 20
 
C ve Sistem Programc
ı
lar
ı
Derne
ğ
i
2
18-07-02
UNIX Grubu
İş
letim Sistemlerinin Tarihsel Geli
ş
imi
UNIX i
ş
letim sisteminin tarihi 1968-69 senelerine dayan
ı
r. C programlama dili UNIX i
ş
letimsisteminin geli
ş
tirilmesi süresinde tasarlanm
ış
t
ı
r. 1968 y
ı
l
ı
nda AT&T’den K.Thombson,D.Ritchie ve B.Kernighan Multics isimli bir i
ş
letim sistemi projesine ba
ş
lad
ı
lar. Multicsprojesi MIT gibi üniversitelerle ortak olarak yürütülüyordu. Ancak Multics projesinin çe
ş
itliproblemlerinden dolay
ı
1969 y
ı
l
ı
nda AT&T projeden ayr
ı
lma karar
ı
vermi
ş
tir. 1969 y
ı
l
ı
ndaekip yeni bir i
ş
letim sistemi yazma projesine ba
ş
lam
ış
t
ı
r. 1970 y
ı
l
ı
nda B.Kernighan bu yenii
ş
letim sistemini Multics’ten kelime oyunu yaparak UNIX ismini vermi
ş
tir.UNIX i
ş
letim sistemi 1970 y
ı
l
ı
nda DEC’in PDP-7 makinelerinde yaz
ı
lm
ış
t
ı
r. UNIX’in bu ilkversiyonu tamamen sembolik makine dilinde yaz
ı
lm
ış
t
ı
r. Yaln
ı
zca i
ş
letim sisteminin çekirdekk
ı
sm
ı
de
ğ
il, tüm yard
ı
mc
ı
programlar da sembolik makine dilinde yaz
ı
lm
ış
lard
ı
r.K.Thombson bu yeni i
ş
letim sistemi için önceleri Fortran derleyicisi yazmaya niyetlendiysede daha sonra tamamen yeni bir aray
ış
a geçmi
ş
tir. K.Thombson BCPL dilinden esinlenerekalçak seviyeli i
ş
lemlerde kullan
ı
labilecek B programlama dilini tasarlam
ış
ve derleyicisiniyazm
ış
t
ı
r. B her yönü ile tan
ı
mlanm
ış
bir programlama dili de
ğ
ildir. Ancak çal
ış
ma ekibinisembolik makine dilinden kurtarm
ış
t
ı
r. D.Ritchie bu süreç içerisinde B programlama dilinigeli
ş
tirerek bugün kulland
ığı
m
ı
z C programlama dilini tasarlam
ış
ve derleyicisini yazm
ış
t
ı
r(1971).1973 y
ı
l
ı
nda ekip DEC’in PDP-11 makineleri için UNIX i
ş
letim sistemini tamamen Cprogramlama dilini kullanarak yeniden yazm
ış
t
ı
r. Bu özelli
ğ
i ile UNIX sembolik makinedilinde yaz
ı
lmayan ilk i
ş
letim sistemi olmu
ş
tur. Bu durum i
ş
letim sisteminin kaynakkodlar
ı
n
ı
n ta
şı
nabilmesini sa
ğ
lam
ış
ve UNIX i
ş
letim sisteminin DEC makinelerinin d
ışı
ndada çal
ış
abilmesine ön ayak olmu
ş
tur.UNIX i
ş
letim sisteminin kaynak kodlar
ı
pek çok ara
ş
t
ı
rma gurubuna önceleri ücret talepedilmeden verilmi
ş
tir. Bunun sonucu olarak bu ürünün geli
ş
tirilip pek çok farkl
ı
UNIXi
ş
letim sistemlerinin olu
ş
mas
ı
na neden olmu
ş
tur. Bunlar
ı
n en ünlüsü Berkeley taraf 
ı
ndangeli
ş
tirilmi
ş
olan BSD versiyonlar
ı
d
ı
r (Berkeley Software Distribution). BSDversiyonlar
ı
ndan üçü serbest olarak da
ğı
t
ı
lm
ış
t
ı
r (Free BSD, Net BSD, Open BSD). ZamanlaAT&T’nin orijinal UNIX sistemleri ile Berkeley’in sistemlerinde rekabet olu
ş
mu
ş
sa daAT&T’nin sistemleri üstünlük kazanm
ış
t
ı
r. AT&T, UNIX sistemlerine bir versiyon numaras
ı
 vermi
ş
tir. Ayr
ı
ca bu sistemler önce System3 daha sonra da System5 biçimindeisimlendirilmi
ş
tir. UNIX grubu sistemlerin temel referans
ı
System5’tir.AT&T 80’li y
ı
llarda UNIX sistemlerine telif uygulama karar
ı
alm
ış
t
ı
r. Bu durumüniversitelileri tedirgin etmi
ş
tir, çünkü üniversitelerde bilgisayar ara
ş
t
ı
rmalar
ı
nda hepUNIX’in kaynak kodlar
ı
kullan
ı
l
ı
yordu. Bunun üzerine Hollandal
ı
bir profesör olan AndrewTanenbaum kendi derslerinde kullanabilece
ğ
i küçük bir UNIX sistemi yazm
ış
t
ı
r. Bu i
ş
letimsistemi Minix diye isimlendirilmi
ş
tir.1984 y
ı
l
ı
nda Richard Stallman serbest yaz
ı
l
ı
m fikrini ortaya atarak FSF (Free SoftwareFoundation) diye bilinen birli
ğ
i kurmu
ş
tur. Amac
ı
tamamen serbest ve bedava olacak bir çe
ş
itUNIX sistemi yazmakt
ı
 (www.fsf.org www.gnu.org). GNU projesi kapsam
ı
nda pek çokyard
ı
mc
ı
yaz
ı
l
ı
m geli
ş
tirilmi
ş
tir. Örne
ğ
in bu gün Linux sistemlerinde kullan
ı
lan gccderleyicisi ve imacs editörü bu proje kapsam
ı
nda geli
ş
tirilmi
ş
tir. Ancak Richard Stallman ve
 
C ve Sistem Programc
ı
lar
ı
Derne
ğ
i
3
FSF kurumu yard
ı
mc
ı
araçlar
ı
geli
ş
tirdiyse de i
ş
letim sisteminin kendisini tamamen geli
ş
tiripbitirememi
ş
tir. Serbest yaz
ı
l
ı
m (Free Software) bedava yaz
ı
l
ı
mdan ziyade ba
ş
kas
ı
n
ı
nolu
ş
turdu
ğ
u bir yaz
ı
l
ı
m
ı
hiç izin almadan geli
ş
tirmek anlam
ı
ndad
ı
r. Bu kavramda ki
ş
iprogram
ı
n
ı
satabilir, ama kaynak kodu üzerinde bir hakka sahip olamaz, yani onusahiplenemez. Bunun için GNU Public License geli
ş
tirilmi
ş
tir.1991 senesine gelindi
ğ
inde GNU projesine ili
ş
kin pek çok
ş
ey yaz
ı
lm
ış
t
ı
r. Ama i
ş
letimsisteminin çekirde
ğ
i yaz
ı
lmam
ış
t
ı
r.
İş
te Linus Torwalds, ismine Linux dedi
ğ
i bir çekirdekyazarak GNU projesini tamamlam
ış
t
ı
r. Bugün Linux’un pek çok sürümü vard
ı
r, fakat busürümlerin hepsi ayn
ı
çekirde
ğ
i kullanmaktad
ı
r. GNU/Linux sistemleri Intel makinelerinind
ışı
nda ba
ş
ka donan
ı
mlara da aktar
ı
lm
ış
t
ı
r.1980 y
ı
llar
ı
n sonlar
ı
na do
ğ
ru UNIX sistemleri kendi aralar
ı
nda ta
şı
nabilir yap
ı
lmayaçal
ışı
lm
ış
t
ı
r. Böylelikle bir UNIX sistemi için yaz
ı
lm
ış
kaynak kodun ba
ş
ka bir UNIXsisteminde de problemsiz derlenerek çal
ış
t
ı
r
ı
labilece
ğ
i
ş
ünülmü
ş
tür. Böyle birstandardizasyon Richard Stallman taraf 
ı
ndan önerilmi
ş
tir. Standartla
ş
ma ile IEEE ilgilenmi
ş
 ve 1003 numaral
ı
standardizasyon ekipleri kurulmu
ş
tur. Bu standartlar POSIX (PortableOperating System Interface for UNIX) biçiminde isimlendirilmi
ş
tir. Örne
ğ
in 1003.1 ya daPOSIX.1 UNIX sistemlerindeki sistem fonksiyonlar
ı
n
ı
n neler olmas
ı
gerekti
ğ
ini belirler.Di
ğ
er alt gruplar ba
ş
ka i
ş
levsel özellikler konusunda belirlemeler olu
ş
turmu
ş
tur. Bu günkullan
ı
lan UNIX ve Linux sistemlerinin hemen hepsi burada belirtilen POSIX standartlar
ı
nauygundur. POSIX asl
ı
nda IEEE taraf 
ı
ndan yaln
ı
zca UNIX sistemlerine özgü bir standartolarak ele al
ı
nmam
ış
t
ı
r. UNIX gurubu d
ışı
ndaki i
ş
letim sistemleri de isterlerse POSIXstandartlar
ı
na uyum sa
ğ
layabilirler. Örne
ğ
in NT gurubu sistemlerin POSIX alt yap
ı
s
ı
vard
ı
rve POSIX’i desteklemektedirler.
UNIX Sistemine Giri
ş
ve Temel Kavramlar
Temel olarak UNIX/Linux sistemleri monolitik bir yap
ı
ya sahiptir. Monolitik sistemlerdei
ş
letim sisteminin çekirdek k
ı
sm
ı
büyüktür ve neredeyse tek parça halindedir. Bu türsistemlerde sisteme ekleme yapmak zordur ve tüm çekirde
ğ
in yeniden derlenmesinigerektirmektedir. Monolitik yap
ı
n
ı
n tersi mikro kernel teknolojisidir. Mikro kernelsistemlerde i
ş
letim sisteminin çekirde
ğ
i küçük tutulur.
İş
letim sisteminin pek çok fonksiyonugerekti
ğ
inde sonradan yüklenilebilen modüller halinde tasarlan
ı
r. Bu tür sistemlerde i
ş
letimsisteminin geni
ş
letilmesi ba
ş
kalar
ı
taraf 
ı
ndan daha kolay yap
ı
l
ı
r, ancak tasar
ı
mlar
ı
ayr
ı
nt
ı
l
ı
vezordur. Win32 sistemleri tipik olarak mikro kernel sistemi ile tasarlanm
ış
t
ı
r.UNIX sistemleri yüklendi
ğ
inde çekirdek taraf 
ı
ndan olu
ş
turulmu
ş
bir process login program
ı
n
ı
 çal
ış
t
ı
r
ı
r. Böylece sisteme girecek ki
ş
i bir login ekran
ı
yla kar
şı
la
şı
r. Login ekran
ı
ilekar
şı
la
şı
ld
ığı
nda i
ş
letim sistemi yüklenmi
ş
tir ve o anda login program
ı
çal
ış
maktad
ı
r. loginprogram
ı
kullan
ı
c
ı
dan bir kullan
ı
c
ı
ismi ve password ister ve bunun do
ğ
rulu
ğ
unu kontrol ederve daha önce belirlenen bir program
ı
o kullan
ı
c
ı
için çal
ış
t
ı
r
ı
r. Sisteme girdikten sonrakullan
ı
c
ı
için çal
ış
t
ı
r
ı
lacak program genellikle bir komut yorumlay
ı
c
ı
programd
ı
r. Böylecesisteme girildikten sonra kullan
ı
c
ı
bir komut yorumlay
ı
c
ı
ile kar
şı
la
şı
l
ı
r. UNIX sistemlerindekomut yorumlay
ı
c
ı
lar (command interpreter / shell) bir tane de
ğ
ildir. Bir kullan
ı
c
ı
sistemegirdi
ğ
inde hangi komut yorumlay
ı
c
ı
n
ı
n çal
ış
t
ı
r
ı
laca
ğı
ve kullan
ı
c
ı
ya ili
ş
kin di
ğ
er bilgiler,kullan
ı
c
ı
yarat
ı
l
ı
rken belirlenir ve korunmu
ş
olan baz
ı
dosyalar
ı
n içerisinde saklan
ı
r. UNIXsistemleri bir süper kullan
ı
c
ı
n
ı
n her türlü i
ş
lemi yapabilece
ğ
i bir sistemdir. Süper kullan
ı
c
ı
n
ı
n

You're Reading a Free Preview

Download
/*********** DO NOT ALTER ANYTHING BELOW THIS LINE ! ************/ var s_code=s.t();if(s_code)document.write(s_code)//-->