ÇUKUROVA ÜNİVERSİTESİ-TÜRKOLOJİ ARAŞTIRMALARI MERKEZİ |
Anasayfa | Makale Bilgi Sistemi | Konu Dizini | Yazarlar Dizini | Kaynaklar Dizini | Makale-Yazar Listesi | Makale Sayısı-Tarih Listesi | Güncel Türkoloji Kaynakçası |
Atatürk Araştırmaları || Çukurova
Araştırmaları || Halkbilim || Dilbilim || Halk
Edebiyatı || Yeni
Türk Dili || Eski
Türk Dili Yeni Türk Edebiyatı || Eski Türk Edebiyatı || Dil Sorunları || Genel || Tiyatro || Çağdaş Türk Lehçeleri |
ÖZGÜR VE AÇIK KAYNAK KODLU YAZILIMLAR VE BİLGİ MERKEZLERİNE ETKİSİ
Sacit ARSLANTEKİN1
Ankara Üniversitesi Dil ve Tarih-Coğrafya Fakültesi Dergisi 44, 2 (2004) 231-246
Özet
Yazılım sektörü pek çok uygulama alanında kullanıcılarının beklentilerini karşılamaya çalışırken , kullanıcılar bu ek istekleri için bir süre beklemek zorunda kalmaktadırlar. Ek istekler, yazılım içerisinde kişisel bazda değil, genele uyarlanabilecek yapıda çözülmeye çalışılmakta, bu durum oldukça fazla zaman almaktadır. Yazılımların yüksek maliyetler gerektirmesi ve isteklerin artı harcamalar anlamına gelmesi, kullanıcıları korkutmakta ve işlerini yavaşlatmaktadır. Bilgisayar korsanlığı ve davetsiz misafir saldırıları da kullanılan yazılım ve veritabanı yönetim sistemleri için ayrı bir sorun oluşturmaktadır. Bilgi Merkezlerinin de yakından hissettikleri bu sorunlar, tüm dünyada Özgür ve Açık Kaynak Kodlu Yazılımlar tarafından giderilmeye çalışılmaktadır. Bu çalışmalar ile kullanıcılar, paylaşım felsefesi çatısı altında, güvenlik ve maliyet artışı sorunlarını en aza indirgeyerek çözüm aramaktadırlar.
Anahtar Sözcükler: Kaynak kod, özgür yazılım, bilgi merkezleri, işletim sistemi, GNU projesi, Linux, Foss.
Abstract
Software sector has to wait for additional demands of users for a period of time while triying to meet their expectations in many areas of application.. Additional demands has not been met by individiual-based solutions but has
included effort to be applied to a structure allowing to adept to general, it takes long periods. Softwares requiring high cost and high cost value expectations causes user discourage and make works slow down. Computer hackers and unauthorized attacks on systems has been another problematic area for the database management systems along with the software used. Those problems that is also the subject of effort for information centers closely has been tried to solve by free and open source code softwares all around the world. Users who are carrying out this kind of studies underneath sharing philosophy take solutions by decreasing the problems of security and cost increase to the minimum level.
Key words: Resource code, free software, information centers, operating systems, GNU project, Linux, Foss.
Dünyada bilgi ve iletişim teknolojilerinin girmediği hiçbir nokta kalmamış, insanoğlu bilerek ya da bilmeyerek, bu teknoloji ürünlerine bağımlı hale gelmiştir. Bilgi teknolojilerinin gelişimi büyük emek ve harcamalar gerektirmektedir. Bu teknolojiler yazılım ve donanım olarak iki temel yapıdan oluşurlar. Gerçekte yazılım, ilk bilgisayarın ortaya çıkmasından sonra donanımın gelişmesini de tetikleyen itici bir güçtür.
Yazılım iki temel grupta ele alınmaktadır. Bunlar; İşletim Sistemleri ve Uygulama Programlarıdır. Her iki grupta yer alan yazılımlar, dünya üzerinde büyük bir pazar payı oluşturmaktadır. Yazılım şirketleri pazardan pay kapabilmek için kıyasıya rekabet içindedirler. Yazılım sektöründeki artan maliyetler, yazılımları kullanan kişi ya da kuruluşlara yansımakta, özellikle kurum ve kuruluşlar yazılım sektörüne büyük paralar ödemektedir. Yine, bu yazılımların yenilenmesi ve bakımları için de hatırı sayılır ödenekler ayrılmaktadır.
Yazılım, için bu kadar büyük paralar harcanırken, karşılığında sunulan, temel ve genel gereksinimlerin karşılanması şeklindedir. Pek çok yazılım, kurumların kendilerine özgü gereksinimlerini karşılamamaktadır. Zaman içinde bu gereksinimler, ya özel yazılımlarla ya da ek maliyetlerle karşılanmaktadır. Genellikle ticari amaçlı oluşturulan bu yazılımlara müdahale söz konusu değildir.
Pek çok kurum kişisel, kurumsal, mali, güvenlik ve benzeri verilerini bu yazılımlarla işlemekte, söz konusu verileri başka kişi-kişiler ve kuruluşlara bu yazılımlar tarafından desteklenen teknolojiler ile iletmektedir. Peki ama kurumlar, hatta devletler gerek mali açıdan, gerekse güvenlik açısından hayati önem taşıyan verilerini, bir başkasının oluşturduğu ve verileri arkada planda nasıl işlediği tam olarak bilinmeyen yazılımlarla, nasıl güvenle işleyebilir ya da iletebilir? İnternetin günlük hayatımıza bile bu kadar girdiği günümüzde, verilerimizi internet üzerinden nasıl güvenle paylaşabiliriz?
Hazırladığımız web sitelerinin ve veri tabanlarının güvenliğini nasıl sağlayacağız?
Güvenlik duvarları (firewall) üzerine yapılan bir söyleşide yazılımcılar, bilgisayar korsanlarına ve davetsiz misafirlere karşı, verilerin güvenliği tam olarak sağlanmak isteniyorsa, tek bir güvenlik duvarıyla yetinmeyip önüne, bir başka şirket ya da devlet tarafından oluşturulmuş başka bir güvenlik duvarını daha koymayı önermektedirler. Bütün bunları piyasada bulunan ticari yazılımlarla karşılamaya çalışmak, altından kalkılamaz mali yükler getirmektedir.
Bir şirketten alınmış, koduna müdahale edilemeyen bir yazılım kullanıldığında, herhangi bir ek gereksinimimiz karşılanacak mıdır? Karşılanacaksa, ne kadar zaman içinde karşılanacak ve bize maliyeti ne olacaktır?
Dünyada yazılım şirketleri gün geçtikçe büyümekte ve küçük yazılım şirketlerini kendi bünyelerine alarak eritmektedirler. Yakın zamanda dünyada kaç yazılım şirketi kalacaktır? Bütün çalışmalarımız ve verilerimiz, bu şirketlerin yazılımları tekelinde mi olacaktır?
İşte böylesine korkutucu ve düşündürücü bir ortam, uygulamada bulunanları farklı arayışlar içine sokmuştur. Bu noktada tüm dünyadaki çözüm yolunda genel eğilim, özgür ve açık kaynak kodlu yazılımların kullanılması olarak görülmektedir.
I.Özgür ve Açık Kaynak Kodun Gelişimi
Özgür yazılım, ingilizcede karşılık gelen “free software” terimi nedeniyle bazı yanlış anlaşılmalara yol açmaktadır. Burada kullanılan Free terimi ‘bedava’ anlamına gelmemekte, “freedom”, yani “özgürlük kelimesinden gelen anlamı karşılamaktadır. Özgür yazılım beraberindeki açık kaynak koduyla, yazarın adını koruyarak, kaynak kodun üzerinde her türlü değişikliği ve eklemeyi yapma özgürlüğünü vermektedir (Çetin, 2003:30).
27 Eylül 1983’te Richard Stallmann tamamiyle özgür yapıda, Unix işletim sistemine uyumlu bir işletim sistemi yaratmak için başlattığı projenin ilk duyurusunu yapmıştı. Daha sonra bu projeyi GNU olarak adlandırdı. GNU, Unix işletim sistemi ile uyumlu olmakla birlikte, Unix değildi. Stallman’a göre, bu proje sonucunda çıkacak yazılım, özgür bir yazılım olmak durumundaydı.
Arayış içine girilen işletim sisteminin Unix işletim sistemi ile uyumlu olmasının tercih edilmesi nedenlerinin temelinde, Unix’in “çok kullanıcılı” (multi-user), “çok işli” (multi-tasking) çalışma koşullarını sağlayan, çekirdek (kernel) temelli ve tam bellek yönetimi sağlayan bir yapılandırmaya sahip olması yatar.
Unix altında çalışan bir bilgisayarı, birden fazla kullanıcı aynı anda ve birbirlerinden bağımsız olarak kullanabilir. Bu beraber kullanım sırasında bilgisayar kaynakları her kullanıcı arasında bir paylaşıma tabi tutulur. Unix, birlikte kullanımdan doğacak performans sorunlarını en aza indirgeyecek şekilde yapılandırılmıştır. İlk kez 1970 yılında ortaya çıkan Unix ticari bir amaçla hazırlanmıştır. Buna karşılık Unix belli bir marka ve model bilgisayar için tasarlanmamıştır. Donanım modelleri geliştikçe Unix’in yeni gelişmelere uyarlanması da kolaylıkla yapılabilmektedir. Unix işletim sistemi, dünyaca tanınan donanım ve yazılım şirketleri tarafından desteklenen ve geliştirilen bir yapıya sahiptir. Unix, genellikle güçlü bilgisayar sistemlerinde, büyük veri yığınlarıyla uğraşan kullanım tercihi olmuştur. Bütün bunlara rağmen geliştirilmesinin belirli merkezlerce sınırlı olması, ücretli dağıtım gibi nedenler Linux gibi yeni, açık kaynak kodlu ve özgür sistem arayışlarını hızlandırmıştır (Ayfer, 1995:5-8).
Özgür yazılım, Stallman’ın tanımlamasına göre, dört karakteristik özelliğe sahip olmalıydı:
1. Yazılım herhangi bir amaç için özgürce çalıştırılabilmeli
2. Yazılım gereksinimler doğrultusunda değiştirilebilmeli
3. Yazılımın kopyaları bedava ya da ücret karşılığında özgürce dağıtılabilmeli
4. Yazılımın değiştirilmiş sürümleri toplumun gelişmelerden yararlanabilmesi için özgürce dağıtılabilmeli (Free, 2004 :3).
Stallman bu özgürlükleri garanti altına almak için, “copyleft” olarak adlandırdığı Genel Kamu Lisansı’nı (GPL-General Public Licence) ortaya koydu. Daha sonra, Unix işletim sisteminin yerini alacak yeni sistem yaratma çalışmalarına devam ederek, bu konuda alt yapı içinde yer alan editörler, derleyiciler ve yardımcı araçlar geliştirdi (Free, 2004 :4).
1991’de IBM PC ve Microsoft MS-DOS tüm dünyaya yayılmış durumdaydı. Microsoft, Windows 3.0 sürümünü ve Windows NT’nin ilk sürümünü yapmıştı. O sırada, Helsinki Üniversitesi Bilgisayar Bilimleri
2.sınıf öğrencisi olan Linus Torvalds, 386/486 işlemcili kişisel bilgisayarı için DOS işletim sisteminden daha sofistike ve daha yararlı bir sistem aramaktaydı. O günlerde genellikle üniversite çevrelerinde, yoğunlukla e-posta ve haberleşme grupları için kullanılan internetteki bir haber grubuna, 21 Ağustos 1991 tarihinde projesinden bahseden ve yardım isteyen bir duyuruda bulundu. Bu duyuruya gelen yanıtlar ve yapılan ortak çalışmalar sonucu 1991 Eylül’ünde dünyaya Linux işletim sisteminin 0.1 sürümü çıkmıştı (Free, 2004 :5).
Torvalds başlangıçta Stallman’ın GNU projesi için geliştirdiği altyapıdan yararlandı. Onun amacı, bir işletim sisteminin kalbi olan işletim sistemi çekirdeğini (Kernel) oluşturmaktı. Çekirdeğe sahip olunca, GNU araçlarını (tools) buna bağladı. Torvalds, copyleft GNU GPL lisansını Linux işletim sistemi için benimsedi (Free, 2004 :5).
Torvalds GNU GPL ‘nin sadece bir yazılım lisansı olmadığını, aynı zamanda bir yazılım geliştirme yönteminin temeli olduğunu kavramıştı. Çünkü Stallman bu projeyi ortaya attığında, karşılıklı işbirliği ve paylaşım için bir atmosfer yaratacağını ummaktaydı. Böyle bir projeye katılan herkes eşit durumdaydı ve biliyorlardı ki, kimse kendi çıkarları için onları sömürme amacında değildi. Herkes eşit olarak diğerlerinin çalışmalarından yarar sağlayacaktı (Free, 2004 :5).
Bu çalışmalar özgür ve açık kaynak kod yazılımlarının (FOSS-Free and Open Source Software) temelini atmıştır. Günümüzde FOSS, fikirlerin değişimi için birlikte çalışma özgürlüğü olarak kendini göstermektedir. Buna ek olarak, yazılım satıcılarının kilitledikleri yazılımları özgür bırakmak anlayışından da bu felsefe içinde söz edilebilir.
Özgür ve açık kaynak kodlu yazılımlar sadece işletim sistemi değildir. Hatta bu tarzda bir yazılımı kullanmak için aynı tarzdaki işletim sistemi zorunluluğu da olmayabilir. Ancak unutmamak gerekir ki, uygulama yazılımları, üzerinde çalıştıkları işletim sistemi ile bütünlük oluştururlar.
Özgür ve açık kaynak kodlu yazılımlar açısından bakıldığında, işletim sistemi olarak en yaygın olanı ve bilineni GNU Linux olarak görülmektedir. Bu işletim sisteminin Red Hat (http://redhat.com), SUSE (http://www.suse.com), Debian (http://www.debian.org) gibi sıklıkla kullanılan, türetilmiş sürümleri bulunmaktadır (Free, 2004 :8-13).
Linux tek özgür ve açık kaynak kodlu işletim sistemi değildir. Diğer bir özgür ve açık kaynak kodlu işletim sistemi Berkeley Software Distribution (BSD)’dir. Berkeley Üniversitesi aynı zamanda, Unix işletim sisteminin geliştirildiği yerdir (Free,, 2004 :13-15).
Özgür ve açık kaynak kodlu yazılımların gelişiminde internetin rolü büyüktür. İlk FOSS projesinin duyurulması ve gerçekleştirilmesi internet üzerinden olmuştur. Böyle olunca da katılımcılar, üzerinde paylaşımda bulundukları platformu geliştirmek için büyük çaba sarf etmişlerdir. Günümüzde, internetin alt yapısı FOSS’a dayandırılmıştır. Bu bağlamda ortaya çıkan PHP (http://www.php.net), Yahoo gibi en popüler sitelerin web sayfalarını oluşturmakta kullandığı bir yazılım dilidir. FOSS destekli bir diğer yazılım dili Perl ‘dür (http://perl.org). Ancak, bu dilin okunması ve öğrenilmesi PHP kadar kolay görünmemektedir (Free, 2004: 15-16).
Bu işletim sistemleri ve web yazılım dilleri yanında, FOSS veri tabanı yönetim sistemleri de bulunmaktadır. Bunlar arasında MySQL (http://www.mysql.com), PostgreSQL (http://www.postgresql.com) , Firebird (http://firebird.sourceforge.net) sayılabilir. Özellikle MySQL dünyadaki açık kaynak kodlu en popüler veri tabanı yönetim sistemidir (Free, 2004: 20-21).
Bu veri tabanı yönetim sistemlerinin yanı sıra, dünyada lisanslı olarak oldukça büyük pazar payları bulunan, Oracle, Informix, Sybase ve IBM, veri tabanı sistemlerini 1998 yılının ortalarında Linux’a aktardıklarını açıklamışlardır. Bunu altında yatan temel nedenlerden biri, Linux işletim sisteminin donanımı en iyi kullanan işletim sistemi olmasıdır (Çetin, 2003:30).
I.1.Açık Kaynak Kod Kriterleri
Açık kaynak kod terimi yalnızca tam anlamıyla kaynak koda erişim anlamına gelmemektedir. Açık kaynak kod terimi, aşağıdaki kriterlerin yerine getirilmesi anlamına gelmektedir. (Locke, 2004. 469- 470.).
Lisans, çeşitli farklı kaynakları içeren dağıtım yoluyla bir araya gelmiş yazılım koduna ait bileşenlerin herhangi bir parçasının verilmesi ve satılmasını kısıtlamayacaktır. Bir başka deyişle, farklı yerlerden bir araya getirilmiş bir kodun dağıtılabilmesi esastır.
Bir yazılım, kaynak kod içermelidir ve tıpkı derlenmiş biçimdeki (compiled form) bir yazılım gibi, kaynak kodun dağıtılmasına izin vermelidir.
Modifikasyonlar ya da türetilmiş çalışmalar, orijinal yazılımın lisansıymışcasına, aynı terimler altında dağıtıma izin vermelidir.
4. Yazarın kaynak koduyla bütünlük
Lisans, kaynak kodun çeşitli yamalarla (patch) değiştirilmesi durumunda bazı kısıtlamalar ortaya koyabilir. Bunun yanında lisans, kaynak kodun değiştirilmesiyle oluşturulan bir yazılımın dağıtımına açıkça izin vermelidir. Lisans, türetilmiş çalışmaların farklı bir adla anılması ya da farklı bir sürüm numarası taşıması zorunluluğunu ortaya koyabilir.
5.Kişi ya da gruplar arasında ayrım gözetmeme
Lisans, kişi ya da gruplara karşı ayrım yapmamalıdır.
6.Çalışma alanlarına karşı ayrım yapmama
Lisans, spesifik çalışma alanlarında yazılımı kullanacak herhangi bir kişiye kısıtlama getirmemelidir.
7.Lisansın dağıtımı
Yazılıma bağlı haklar, bunu oluşturan lisans sahiplerinin onayına gerek kalmaksızın bütüne uygulanabilmelidir.
8.Lisans bir üretim için özel olmamalıdır.
Yazılıma bağlı haklar, yazılımın özel bir bölümüne bağlı olmamalıdır. Eğer yazılım, lisansının koşulları altında dağıtılarak ya da kullanılarak oluşturulma durumunda ise, yazılımı meydana getiren tüm parçalar, orijinal yazılımın dağıtımında verilmiş haklara sahipmiş gibi, aynı haklarla yeniden dağıtılabilmelidir.
9. Lisans başka bir yazılımla sınırlanmamalı
Lisans bir başka lisanslı yazılımın dağıtımını gerektirerek, doğacak kısıtlamaları üzerinde barındırmamalıdır.
10.Lisans, yanlı bir teknolojiyi desteklememeli
Lisansın hükümleri kişisel bir teknolojiye ya da arabirime dayanmamalıdır.
I.2.Açık Kaynak Kod Lisanslama modelleri:
Açık Kaynak kodlu yazılımların lisans problemi olduğu düşünülmemelidir. Bu noktada
Karşımıza, kaynak lisanslama modelleri olarak üç kategori çıkmaktadır:
• Serbest (Free) ModeF e göre, program serbestçe değiştirilebilir ve yeniden dağıtılabilir.
• Telif Hakkı olmayan (copyleft) model de ise, programı yaratan kişi ya da grup program üzerindeki entelektüel haklarından, özel lisanslama hakkından vazgeçmektedir.
• GPL-Uyumlu Model’de de, lisans yasal olarak GPL lisanslama yapısına bağlı olarak oluşturulur (Wu, Ming-Wei ve Lin, Ying-Dar, 2001:34).
Açık Kaynak lisanslama modellerine ek olarak, program geliştiriciler, kamusal amaçla ortak yaratılan yazılımlardan, tescilli anlaşmalarla oluşturulan hediye yazılımlara kadar, ya da bunların birkaçını bir arada kullanmaktadırlar. Bu modellerden her biri, lisanslama anlaşmaları ve bunları açıklayan terminolojiyi çevreleyen genel karmaşaya katkıda bulunmaktadır. Çünkü, sıradan kullanıcılar yazılım lisanslarını nadiren detaylı olarak okurlar.
Bazı bilinen açık kaynak kodlu yazılım lisans modelleri şunları içerir:
• Genel Kamu Lisansı-GPL (General Public Licence): Bu serbest yazılım lisanslama modeli, telif hakkı olmayan modeli kullanır ve aynı lisans modeli altında türetilmiş herhangi bir çalışmanın dağıtımını garanti eder.
• Lesser GPL: LGPL modelinde kullanıcılar, GPL kütüphanesinde bilinen bir kaynak kodunu tescilli modüllerle genişletir.
• Berkeley Yazılım Dağıtımı (Berkeley Software Distribution): BSD modeli, serbest kod dağıtımını ve gerekli güveni verdikçe, farklı terimler altında türetilmiş çalışmaları kapsamaya izin verir.
• Mozilla Kamu Lisansı (Mozilla Public Licence): MPL altında türetilmiş çalışmalar, patent haklarını dağıtımda kaybederlerken, kişisel lisanslamadan yararlanabilirler.
• Netscape Kamu Lisansı (Netscape Public Licence): MPL uzantısı, programın birine tescilli sürümlerine bile kod eklemeye izin vermektedir.
• Qt Kamu Lisansı (Qt Public Licence): Telif hakkı olmayan bir serbest yazılım lisansıdır. QPL, değiştirilmiş kaynak kodunun dağıtımının yalnızca yama olarak dağıtılabilmesini şart koşar.
• Sanatsal Lisans (Artistic Licence): Hemen hemen GPL modeliyle aynıdır. AL, kurum içi kullanımlarda, türetilmiş çalışmaların aynı
terimler altında dağıtımını şart koşmaz (Wu, Ming-Wei ve Lin, Ying-
Dar, 2001:34-35).
Günümüzde milyonlarca insan internete bağlanmaktadır. Bu kişiler internet üzerinde pek çok işlemlerini gerçekleştirmekte, işlerini yürütmektedirler. Bu bağlamda, gerek doğrudan internet üzerinden gerek yerel ağ üzerinden çalışma yapsın ve gerekse de evinde ya da işyerinde bir masaüstü ve benzeri bilgisayarda çalışsın, eğer kullandığı bilgisayardan çeşitli yollarla bir başka bilgisayara bağlanıyorsa, bazı tehlikelerle karşı karşıya bulunulması kaçınılmazdır. Günümüzde, internet üzerinden haberleşme en yoğun kullanılan iletişim yöntemidir. Bu durumda bir mekandan, kendinden uzak başka bir mekana veri gönderme işi arada pek çok istasyonun varlığı ile gerçekleşebiliyorsa, bu durum da ayrı bir tehlike arz etmektedir. İnternet üzerinden alışverişlerde, bankacılık ve benzeri işlemlerde kişisel ya da kurumsal gizli bilgilerinizi göndermek durumunda iseniz, bu bilgilerin başkaları tarafından yakalanması da söz konusudur. Bütün bu işlemler sırasında, elinizdeki bilgisayarla bir başka bilgisayar arasında bağlantı kurduğunuzda, sizin ya da kötü niyetli kişilerin, bilgileri görme, bunları elde etme, değiştirme ve hatta yok etme gibi olasılığının bulunması kaçınılmazdır. Dünyada yüzde yüz güvenli tabir edilebilecek bir bilgisayar yoktur. O halde, eğer bir veri alışverişinin söz konusu olduğu bilgisayar sistemi kullanılıyorsa, bazı riskler de söz konusudur denilebilir. Bilgisayar korsanları (Hacker) sürekli olarak sistemleri takip etmekte ve içine girmek için bir açık yol aramaktadır. Tam anlamıyla güvenli bir sistem yoksa ve bilgisayar korsanları sisteminize girebilmek için arayış içindeyse, yapılması gereken, bu girişleri olabildiğince zorlaştırmaktır. Özellikle büyük sistemlerde, sistem yöneticileri bu tür saldırıları engellemek için olağandan fazla çaba göstererek, sistemlerini güvenli hale getirmek zorundadırlar. Sistem yöneticileri bu tür tehlikeler altında sistemlerinin güvenliğini hangi derecede yapılandırmaları konusunda karar vermede şu üç faktörü göz önüne almalıdırlar:
Risk: Kullanıcılara bir erişim hakkı tanımak zorunluluğu varsa, bu durum bir risk olarak ortaya çıkmaktadır. Olası davetsiz girişlerin olabildiğince analiz edilmesi gerekmektedir. Davetsiz misafir, dosya sistemi üzerinde okuma ve yazma hakkına sahipse, sisteme ağır hasar verebilir. Sistemdeki veriler bir daha ulaşılamayacak şekilde kaybolabilir.
Erişim: Kullanıcılara sağlanan erişim hakları bütünüyle kontrol altında tutulmalıdır. Verilen erişim hakları tedbirli bir şekilde tanınmalıdır. Yalnızca güvenilir kullanıcılara erişim hakkı verilmelidir. Ek olarak, erişim hakkı kullanıcının gereksinimleri doğrultusunda olmalıdır. Örneğin, bir kullanıcının sistem dosyaları üzerinde değişiklik yapma ve yazma yetkisi bulunmasına gerek yoksa, bu kullanıcıya böyle bir yetki tanınmamalıdır.
Saldırı ve tehlikelere açık olma: Yerel ağ dışından gelecek kullanıcıların yaratabileceği saldırı ve tehlikelere açık olma açısından, sistemin analizinin yapılması gerekmektedir. Kullanıcıların kişisel gizliliği ile oluşturulacak etkili bir güvenlik politikasının uygulanması, verileri koruma ve garanti altına almanın bir yoludur. Oluşturulan güvenlik politikası her kullanıcıyı kapsamalı ve uygulanmasında onları herhangi bir sorunla karşı karşıya bırakmamalıdır. Güvenlik politikası, kullanıcıların sahip olduğu yetkileri anlatarak, onların hangi hizmetlere erişim haklarının bulunduğunu belirtmelidir. Güvenlik politikasının oluşturulması, güncellenmesi ve gerektiği gibi uygulanması sistem yöneticisinin yetkisindedir (Siddiqui, 2002:15).
Davetsiz misafirler, sistemlere sürekli olarak saldırılar düzenlemektedir. Saldırıların hedefinde sunucular, çevirmeli bağlantı hesapları ve web siteleri bulunmaktadır. Saldırganlar sistem üzerinde amaçlarını gerçekleştirmek için bir güvenlik açığı ararlar. En bilinen güvenlik açıklarından birisi, sistemde emniyetli olmayan hesaplardır. Eğer saldırgan sisteme emniyetli olmayan bir hesap yoluyla girerse ve sistem bir ağa bağlıysa, diğer sunuculara da saldırılarda bulunabilir.
III.Bir açık kaynak kodlu yazılımı geliştirme adımları
Bir açık kaynak kodun geliştirilmesi ilk bakışta zor gibi görünse de, bu felsefede hareket eden kişi ve kurumlar açısından bakıldığında, paylaşım esasına dayanan, gelişim ve yayılım son derece hızlıdır. Aşağıda bir özgür ve açık kaynak kodlu yazılımın geliştirilmesinde izlenecek adımlar verilmiştir (Wu, Ming-Wei ve Lin, Ying-Dar, 2001:34).
Özel Gereksinim
Benzer projeler arama | |||
Hayır (Proje Yok) | |||
Bir proje başlatma |
Bulunan projeye katılma | ||
. |
. , |
. | |
Duyuru ve hataları izleme için e-posta grupları kullanma | |||
C | |||
CVS sürüm kontrolü | |||
(Birleştirilecek sürümler arasındaki farklar ve bu farklılıkların giderilmesi) | |||
- |
- | ||
J |
I | ||
Dokümanları ve kullanım kitaplarını hazırlama | |||
Küçük dokümanlar hazırlama | |||
, |
. |
. | |
Lisans modeline karar verme İli Bir lisans modeline katılma | |||
, |
. . |
. | |
Yama ve değişiklikleri benimseme (Yetkili mercii ve katılımcı olarak) | |||
1 . |
. | ||
Geleceğe yönelik öngörülerde resini sürümleri duyurma |
Açık kaynak kod yazılımları istenilen bilgisayara kurulabilir. Konuyla ilgilenen bir programcı, kaynak kodu indirerek, yazılım üzerinde değişiklikler yapabilir ve yapılan değişiklikleri başkalarına sunabilir. Bunun yanında bir yayımcı , hiçbir telif hakkı ödemeden, kaynak kodun bulunduğu yazılımları kullanarak ürettiği çalışmaları satabilir (Column, 2004).
i
IV.Dünyada ve Ülkemizde Açık Kaynak Kodlu Yazılımlara Eğilim:
Dünyada gelişmekte olan pek çok ülke, tescilli yazılımların kullanımlarındaki yüksek maliyet, güvenlik ve çabuk geliştirilebilirlik gibi nedenlerle, gerek kamu, gerekse özel sektör bazında yazılım yatırımlarını açık kaynak kod üzerine yönlendirmektedir. Açık kaynak kod felsefesinin geçmişi son 20 yılda olsa da, gelişimi son derece hızlı olmaktadır. Açık kaynak koda yönelmede pek çok neden sayılabilir ve tartışılabilir.
Günümüzde bu konuda tüm dünya üzerinde pek çok araştırma ve eğilim yoklaması yapılmaktadır.
Örneğin Arjantin’de, 2004 yılı sonunda yapılan bir araştırma sonuçları doğrultusunda, Trends Consulting isimli danışmanlık firmasının yöneticisi Raúl Bauer “uluslar arası danışmanlık firması IDC’in istatistiklerine göre, Latin Amerika’da bir yılda % 60 gelişerek nüfuz eden Linux İşletim Sistemi, dünyanın en hızlı gelişen işletim sistemidir” demektedir. Yine aynı araştırma, 2004 yılının ilk altı ayında araştırma yapılan 115 şirketin % 4,5’luk kısmının tüm uygulamalarını Linux’a geçirdiğini, % 16’sının yeni uygulamalarını Linux üzerinde yapılandırmak için çalıştığını ve geri kalan % 79,5’luk bölümün ise, her uygulamasını bu bağlamda analiz etmekte ve duruma göre karar vermekte olduğunu belirtmektedir (Consultancy: More, 2004).
Amerika Birleşik Devletlerinde bulunan Peerstone Research isimli danışmanlık firmasının verilerine göre, Amerika’daki firmaların % 15’i 2007 yılında kaynak yönetimi girişimlerini Linux üzerinde çalıştırmak için plan yapmışlardır. Çalışmada aynı zamanda, kritik önem taşıyan uygulamaların halen % 2’sinin açık kaynak kod yazılımları ile çalıştığı, üç yıl içinde 7000 Amerikan şirketinin Linux’a geçeceği belirtilmektedir (Consultancy: More,
2004).
Yayınlanan bir yazıya göre, Amerikan yazılım devi olarak görülen Microsoft, 2004 yılı sonunda, dünyada yazılım pazarında oldukça önemli bir yeri olan Hindistan’da açık kaynak kod karşısında önemli bir avantaj elde etmiştir. Hindistan’ın Karnataka eyaletinde e-devlet uygulamaları için Microsoft ürünlerinin kullanılacağı açıklanmıştır. Bill Gates’in bu ülkeye yaptığı 2002 yılındaki ziyaretinde, ürünlerinde büyük indirim yapacağını açıkladığı belirtilmektedir. Bu proje için açık kaynak kodlu yazılım önerenler, bu indirime şüpheyle bakmakta ve bunun, kontrol altına alamadığı bir kesimi bu yolla kontrol altına almak için uzun vadeli bir taktik olduğunu söylemektedirler (Microsoft gets, 2004).
Ülkemizde de bu konudaki gelişmeler hiç de yabana atılacak seviyede değildir. Özellikle lisans ücretlerinin yüksekliği ve güvenlik nedenleriyle pek çok çalışma Linux tabanlı hale getirilmektedir. Bu durum, dünyanın en yaygın kullanıma sahip işletim sisteminin sahibi durumundaki Microsoft’un da bazı önlemler almasını zorunlu kılmıştır. Bu önlemler arasında bir örnek de bizim ülkemizde yaşanmıştır. Microsoft firmasının sahibi Bill Gates’in ülkemize gelerek, özellikle e-devlet uygulamalarına tam destek vermesi ve bu konuda yapılacak atılımlarda işletim sistemi konusunda ücretsiz ya da çok düşük fiyatlar ileri sürmesi düşündürücüdür. Yine, öğretmenlere bilgisayar okur yazarlığı kazandırılması konusundaki kampanyaya destek veren Microsoft, kampanya dahilindeki bilgisayarlara işletim sistemini bağış olarak vermektedir.
Gerek ülkemizdeki, gerekse bütün dünyadaki bu gelişmeler yeterli görülmeyince Microsoft kendi işletim sistemini açık kaynak kod yapısında piyasaya sunma girişimlerini başlatmıştır.
PC-Time dergisindeki bir yazıda, Linux International Yönetim Kurulu Üyesi Siyami Kahyaoğlu’nun GPL’in 20’inci yılı toplantısında, Microsoft’un tek çaresinin kaynak kodlarını açmak veya Microsoft Linux üretmek olduğunu söylediği belirtilmektedir. Aynı toplantıda Kahyaoğulu’nun, 2008’de dünyada iki işletim sistemi kalacağına ve birisinin Linux olacağına dikkati çekerek, Microsoft’un bu alanda var olabilmek için ya kaynak kodlarını açmak ya da Linux dağıtımını pazara sürmek zorunda olduğunu, Türkiye bir ambargo altında kalırsa, yurtdışında geliştirilmiş olan yazılım ürünlerini kullanabilecek mi? sorularını kendine sormaktan alıkoyamadığı konularına değindiği belirtilmektedir (Microsoft, Linux’a,
2005).
“Microsoft’un Windows işletim sistemi ile Linux arasında yapılan araştırmalar Linux’a geçişi işaret etmektedir” şeklindeki bir yargı da ne kadar doğru olabilir? PC-Time dergisinde çıkan diğer bir yazı da, Yankee Group tarafından gerçekleştirilen Linux-Windows Toplam Sahip Olma Maliyeti Karşılaştırma Anketinin (The Linux-Windows 2005 TCO Comparison Survey) Windows ve Linux kurulumlarının, kurulum, muhtemel göçmeler, personel maliyeti, dış güvenlik saldırıları gibi kriterlerle toplam maliyetini ve yatırımın geri dönüş hızını karşılaştırdığını belirtmektedir. Bu araştırmanın en dikkati çeken yanlarından birisinin, parasının Microsoft tarafından ödenmemiş olduğu da yazıda vurgulanmaktadır. Bu araştırmanın, KOBİ ve Kurumsal kullanıcıların büyük çoğunluğunun Windows Server 2003’ün kalitesi, performansı ve güvenilirliğinin Linux’la eşit veya daha iyi bulduğunu ortaya çıkardığı belirtilmektedir (Microsoft Linux’la, 2005).
Araştırmada, katılımcıların üstünde en çok durdukları noktanın her iki işletim sisteminin güvenliği olduğu, Linux ve Windows’un güvenlik özelliklerini neredeyse eşit olarak değerlendirdikleri, kullanıcıların güvenlik için 10 üzerinden yaptıkları puanlamada Linux’un güvenlik seviyesinin 8.3, Windows’un güvenlik seviyesinin ise 7.6 olarak ortaya çıktığı, geçtiğimiz yıl aynı puanlamada Windows’un güvenlik puanının neredeyse bunun yarısı kadar olduğu belirtilmektedir. Yine aynı araştırmada Linux tercih eden katılımcıların işletim sisteminin ücretsiz olmasının çok önemli olmadığını belirttikleri, güvenlik ve Windows tekelini kırmak için Linux’u tercih ettikleri ortaya konmuştur. (Microsoft, Linux’a, 2005)
Dünyada bu eğilim ve gelişmeler yaşanırken bilgi merkezlerinin de kendilerini yaşananlardan soyutlaması söz konusu değildir. Yazılım kullanılan her sektörde olduğu gibi bilgi merkezleri de kullandıkları yazılımları özgür ve açık kaynak kod girişimleri ile değerlendirmek durumunda kamlılardır.
V.Bilgi Merkezleri ve Özgür ve Açık Kaynak Kodlu Yazılımlar:
Bugün kullanılmakta olan kütüphane otomasyon yazılımlarına baktığımızda, her birinin diğerine göre bazı avantaj ve dezavantajlara sahip olduğu görülmektedir. Durum, hayatımızda diğer alanlarda karşılaşabileceğimiz yazılımlardan farklı bir görüntü ortaya koymamaktadır. Bunun yanında, kütüphane yazılımlarını basit birer takip yazılımı olarak görmek de işi çok basite indirger. Unutmamak gerekir ki, bilgi merkezleri söz konusu olduğunda ele alınması gereken, belgelerin ve bilginin yönetimidir. Bu kavram, bilgi merkezinde derme oluşturma ve geliştirme, bilgilerin kayıt altına alınarak kolay erişebilir hale getirilmesi ve ilişkilendirilmesi, duyurulması ve yayılması, gereksinimler doğrultusunda içerik hazırlanması ve hazır içeriğin kontrol altına alınması gibi bir çok işlemi ve hizmeti içinde barındıran bir fenomendir. Durum böyle olunca, bilgi merkezleri de, kaynaklar, hizmet verdiği kullanıcı grubu, türü ve benzeri gibi özellikleri doğrultusunda farklı işlem ve hizmetler üretebilmek için farklı gereksinimler ile karşı karşıya kalmaktadırlar. Bir tek yazılımın farklı bilgi merkezlerindeki bütün gereksinimleri karşılaması çok olanaklı görünmemektedir. Bu gereksinimlerin bilgi merkezlerine özgü olabileceği de göz önüne alındığında, beklenen ne olmalıdır? Yazılım firmalarının her bilgi merkezinin bireysel isteklerini karşılamaya çalışması, kurumlara özgü, birbirinden farklı yazılım sürümlerinin ortaya çıkmasına yol açmaktadır. Böylesi bir durumun engellenmesinde açık kaynak kod çözüm olarak karşımıza çıkmaktadır. Böylelikle, bazı özel gereksinimler ya “yama” olarak adlandırılan ufak program eklemeleri tarafından giderilebilecek, ya da yazılımı edinen bilgi merkezi gereksinimleri doğrultusunda açık kaynak kod üzerinde değişiklikler yaparak, kendisi için yeni bir yazılım türetebilecektir. Açık kaynak kod uygulamalarında bu yamaların edinilmesi ya da sipariş edilmesi de, paylaşım ve e-posta grupları kullanılarak son derece hızlı gerçekleşebilir.
Bilgi merkezlerinin gerek dermeleri, gerek kullanıcıları ve gerekse diğer işlem ve hizmetleri için ellerinde tuttukları veriler hacim, işlem yoğunluğu ve karmaşıklık açısından hiç de küçümsenecek durumda değildir. Durum böyle olunca, verilerin güvenliği de büyük önem taşımaktadır. Bilgi merkezinin kullanmakta olduğu yazılımın üzerine yerleştirildiği işletim sisteminin açık kaynak kodlu olması, bu verilere ulaşım ve virüs uygulamaları açısından daha güvenli görünmektedir. Uygulama yazılımının da açık kaynak kodlu yapılandırılması ve her bilgi merkezinin kaynak kod üzerinde yaptığı deşiklikler programın güvenliğini de arttırmaktadır. Günümüzde, Linux üzerinde etkili olabilen virüs sayısının birkaç taneyi geçmediği, Windows gibi kapalı kod sistemlerindeki virüslerin ise kontrol altına alınamayacak kadar çok sayıda olduğu bilinmektedir. Üstelik, her geçen gün bu virüslere yenisi eklenmektedir.
Bütün bunların yanı sıra, kişisel bilgisayarlar üzerinde Linux uygulamalarının yeterli seviyeye geldiği söylenemez. Her ne kadar Windows işletim sistemi üzerinde çalışmakta olan ofis programlarına karşılık gelecek bir açık ofis (Open Office) seti varsa da, profesyonel çalışmalar için yetersiz kaldığı, bir çok uygulamacı tarafından belirtilmektedir.
Açık kaynak kodlu işletim sistemlerinden Linux’un, Unix işletim sisteminin bir türevi olduğu da göz önüne alındığında, bu sistemin daha çok üzerinde bir veri tabanını barındırmaya yönelik ya da web sunucu olarak yapılandırıldığı görülmektedir. Bir başka deyişle, kişisel kullanımdan çok, çoklu kullanıcılı ağ yapısı altında çalıştıkları görülmektedir. Bu işletim sistemi üzerinde kullanılabilen ücretsiz ve açık kaynak kodlu veri tabanı yönetim sistemlerinin bulunduğunu da belirtmek gerekir.
Özellikle Linux işletim sistemi üzerinde yapılan değişiklikler ve türetmeler, günümüzde farklı Linux yapılarının ortaya çıkmasına neden olmuştur. Bu türetmelerin her biri, farklı yazılım ve veri tabanı yönetim şekline göre değişmektedir. Bu durum, üretilecek uygulama yazılımının mimari yapısı ve felsefesinin, işin başında çok detaylı olarak düşünülmesi ve planlanması gereğini ortaya koymaktadır.
Kullanılan kaynak kod üzerinde yapılacak değişiklikler ve yamalarda da, kabul edilen kaynak kodu lisanslaması doğrultusunda yapılması gereği de farklı bir dezavantaj olarak görülebilir.
Dünya üzerinde açık kaynak kodlu kütüphane programı yazılımlarının bulunduğu bilinmektedir. Ancak, bu yazılımların bireysel anlamda geliştirilip bilgi merkezine uyarlanması çok da kolay değildir. Üstelik, bu yazılımların her birinin her konuya yöneldiği de söylenemez. Örneğin, Jake (Jointly Administered Knowledge Environment) olarak adlandırılan açık kaynak kod projesi, süreli yayınlar hakkındaki bilgileri güncel referans kaynaklarından bulmak üzere geliştirilmiştir. Yine bu kaynak kod yazılımı, Simon Frasier Üniversite Kütüphanesi tarafından değiştirilmiş ve SFUjake olarak bilinen, kendilerine ait jake sürümü geliştirilmiştir. Bu sürüm, yapılan değişikliklerle jake verilerinden bibliyografik Marc verilerini yaratmaktadır. Bu işlemi gerçekleştiren aracın adı jake2marc olarak anılmaktadır. Bununla beraber konu üzerinde otorite kabul edilen ILS (Integrated Library System) de henüz süreli yayınların sağlama, kataloglama, izleme ve ciltleme ile ilgili bir yazılımını henüz tam olarak geliştirememiştir. Kullanımda olan açık kaynak kodlu yazılımlar arasında en bilinenlerinden OpenBiblio ve Koha isimli yazlımlar, temelde sağlama ve kataloglama işlevleri üzerine yoğunlaşmaktadırlar. Buna rağmen, örneğin veri girişlerinde ISBN bilgisini girebilmeye olanak tanırlarken, ISSN bilgisini girmek için herhangi bir veri alanı içermemektedirler (Oberg, 2003:37-38).
Yukarıdaki örnekler de göstermektedir ki, bilgi merkezleri bir açık kaynak kod projesi tarafından üretilen yazılımı kullanmaya kalkışırlarsa bazı eksiklikler ile karşılaşabilirler. Yapılması gereken, böyle bir projenin bizzat bir parçası olmaktır. Şüphesiz, bir kaynak kod incelemek, inceleme sonucunda çıkarımlarda bulunmak, var olan kaynak kod üzerinde değişiklikler yapmak ve hatta yeni bir sürüm oluşturmak kolay değildir. Bir proje olarak ele alınan açık kaynak kodlu bir yazılımdan yeni bir sürüm türetmek ya da var olan sürüme yama oluşturmak için bilgi merkezleri, işletim sistemleri üzerinde ve kod yazımında uzman personeli barındırmak durumunda kalabilir. Acaba, bilgi uzmanları bu konularda yeterli derecede eğitilmeli midir?
KAYNAKÇA
(2004) “Consultancy: More than 40% of companies use open source” , Business CustomWire, Dec 09, 2004
(2004) “COLUMN: Open Source software on the rise” , Business CustomWire, Dec 29, 2004
(2004) Free and Open Source Software: A field guide. London: ITRG
(2004) “Microsoft gets one over open source” , Business CustomWire, Dec 22, 2004
(2005) “Microsoft, Linux’a geçer mi?” PC-Time Elektronik adres: http://www.pctime.com .tr/detay. asp? ContentID=547
(2005) “Microsoft Linux'la kafa kafaya”, BT Dünyası. Elektronik adres: http://www.btdunyasi.net/index.php?module=news&news id=990&cat id=5
AYFER, Can Uğur. (1995). Kim korkar Unix’ten? İstanbul: Pusula Yayınevi.
ÇETİN, Görkem. (2003). Linux işletim sistemi. Ankara: Seçkin Yayınevi.
LOCKE, John. (2004). Open Source Solutions for Small Business Problems. Herndon: Charles River Media,
OBERG, Steve. (2003). “Open Source Software: An Introduction from a Serialist’s Perspective” Serials Review 2003; 29:36-39.
SlDDlQUl, Shadap. (2002). Linux security. Ohio: Course Technology.
WU, Ming-Wei - Lin, Ying-Dar .(2001). Open Source Software Development: An Overview. Computing Practise. June 2001 33-38.
Yrd.Doç.Dr., Ankara Üniversitesi Dil ve Tarih-Coğrafya Fakültesi, Bilgi ve Belge Yönetimi Bölümü.