SANAL DOSYA SİSTEMİ. Fatih YILDIRIM

Ebat: px
Şu sayfadan göstermeyi başlat:

Download "SANAL DOSYA SİSTEMİ. Fatih YILDIRIM"

Transkript

1 SANAL DOSYA SİSTEMİ Fatih YILDIRIM [V : 1] Özet: Bu makalede Sanal Dosya Sistemi nin genel mimarisi incelenmektedir. Sanal Dosya Sistemi nin genel fikirleri verildikten sonra Linux taki mimarisi kullanılan yapılar üzerinde açıklamalar yapılarak anatılmaktadır. Son bölümde ise CSD İşletim Sistemi Geliştirme Projesi kapsamında tasarlanan Sanal Dosya Sistemi mimarisi anlatılmaktadır. 1. GİRİŞ İşletim sistemlerinin en temel ve önemli konularından bir tanesi de dosya sistemidir. Dosyaların nasıl bir yapı içerisinde yer alacağı, nasıl isimlendirileceği, nasıl korunacağı ve dosyalara nasıl erişileceği gibi konular dosya sisteminin içeriğini oluşturmaktadır. Geçmiş dönemlerde ve günümüzde kullanılan bazı dosya sistemlerine ve bunları kullanan işletim sistemlerine aşağıdaki örnekler verilebilir. MFS (Macintosh File System) & HFS (Hierarchial File System): Apple Macintosh sistemlerinde kullanılan temel dosya sistemleridir. NTFS: MS Windows NT işletim sisteminin temel dosya sistemidir. MS Windows 2000/XP sistemlerinde de kullanılmaktadır. FAT32: MS Windows 95 OSR2/98/ME işletim sistemlerinin temel dosya sistemidir. VFAT: MS Windows 95 işletim sisteminin temel dosya sistemidir. FAT (File Allocation Table): MS-DOS işletim sisteminin temel dosya sistemidir. UFS (Unix File System): Unix işletim sisteminin ana dosya sistemidir. Pekçok Unix benzeri işletim sistemi tarafından (Digital UNIX, FreeBSD, HP-UX, Solaris, Sun-OS gibi) desteklenmektedir. Extfs, Ext2fs, Ext3fs (Extended File System): Linux sistemlerinde kullanılan dosya sistemleridir. NFS (Network File System): AIX, AmigaOS, BeOS, BSDi, Digital UNIX, FreeBSD, HP-UX, IRIX, Linux gibi pek çok Unix benzeri işletim sistemi tarafından desteklenen bir dosya sistemidir. HPFS (High Performance File System): IBM in geliştirdiği OS/2 işletim sisteminin temel dosya sistemidir. FFS (Fast File System): AmigaOS işletim sisteminin temel dosya sistemidir. (Berkeley sistemlerinde de FFS isimli bir dosya sistemi vardır. İki dosya sistemi biribirinden farklıdır.) EFS & XFS: SGI firmasının geliştirdiği IRIX işletim sisteminin temel dosya sistemleridir.

2 JFS (Journaled File System): AIX işletim sisteminin temel dosya sistemidir. BeFS: BeOS işletim sisteminin 64 bitlik temel dosya sistemidir. 2. SANAL DOSYA SİSTEMİ Yukarıdaki örneklerde de görüldüğü gibi hemen hemen her işletim sistemi kendine özgü ayrı bir dosya sistemi içermektedir. Peki birçok dosya sistemini destekleyebilecek bir dosya sistemi oluşturulabilir mi? İşte Sanal Dosya Sistemi bu ihtiyacı karşılamak amacıyla düşünülmüş bir sistemdir. Sanal Dosya Sistemi nin özünde nesne yönelimli teknik yer almaktadır. Yani Sanal Dosya Sistemi nesneler üzerinde işlemlerini nesnelerin sahip olduğu fonksiyonları kullanarak yapar. Örneğin, Sanal Dosya Sistemi ne FAT dosya sistemini eklemek isteyelim. Bu durumda yapılması gereken gerekli nesnelerin ve bu nesneler üzerinde işlem yapacak fonksiyonların belirlenmesi ve hepsinin birlikte Sanal Dosya Sistemine eklenmesidir. Aslında burada sözü edilen nesne kavramının C dilindeki karşılığı yapıdır ve bu yapı yine kendisi üzerinde işlemler yapan fonksiyon göstericilerini barındıran bir yapı daha içermektedir. Örneğin, bir dosyayı temsil eden yapı file yapısı olsun. file yapısını kullanarak işlemler yapan fonksiyonlar da file_operations yapısında yer alsın. FAT dosya sistemini Sanal Dosya Sistemi ne dahil etmek için file ve file_operations yapılarının da aralarında bulunduğu bazı yapıların FAT dosya sistemine özgü olacak şekilde oluşturulması ve hepsinin birlikte dahil edilmesi gerekir. Özetle Sanal Dosya Sistemi, desteklenecek her dosya sistemi için nesnelerin ve bu nesneler kullanılarak işlemler yapan fonksiyonların bulunduğu nesne yönelimli bir sistemdir. Linux ve CSDOS işletim sistemlerindeki Sanal Dosya Sistemi mimarisinin inceleneceği sonraki bölümlerde konu daha pratik bir biçimde ele alınacaktır. 3. LINUX SANAL DOSYA SİSTEMİ MİMARİSİ Linux Sanal Dosya Sistemi nde kullanılan yapılar şunlardır: struct file_system_type struct vfsmount struct super_block struct super_operations struct file struct file_operations struct dentry struct dentry_operations struct inode struct inode_operations

3 3.1 Mount İşlemi Yukarıda belirtilen yapıların incelenmesine geçmeden önce kısaca mount işlemi hakkında bilgi verilmesi faydalı olacaktır. Linux ta Sanal Dosya Sistemi nin desteklediği bir dosya sistemini kullanabilmek için mount işleminin yapılması gerekir. Mount işlemi ilgili dosya sisteminin boş bir dizin altına yerleştirilmesi işlemidir. Örneğin bir sabit diskin FAT32 dosya sistemine sahip bir bölmesini (partition) Linux altında kullanabilmek için bu bölmeyi boş bir dizin altına mount işlemi ile yerleştirmek gerekir. Mount işleminden sonra artık ilgili dizine geçmek artık FAT32 dosya sistemine sahip bölmeye geçmek anlamındadır. 3.2 struct file_system_type Sanal Dosya Sistemi nin desteklediği her dosya sistemi file_system_type isimli o dosya sistemine özgü bilgileri içeren bir yapı ile temsil edilmektedir. Desteklenen dosya sistemleri bir bağlı liste şeklinde saklanmaktadır. Örneğin yeni bir dosya sistemini Sanal Dosya Sistemi ne eklemek için yapılması gereken ilk işlem ilgili dosya sistemine ilişkin file_system_type yapısının oluşturulması ve bu yapının ilgili bağlı listeye eklenmesidir struct file_system_type { const char *name; struct super_block *(*read_super)(struct super_block *, void *, int); struct file_system_type *next; file_system_type yapısının name elemanı ilgili dosya sisteminin ismini belirtmektedir. Her dosya sisteminin ismi farklı olmalıdır. Yapının read_super isimli elemanı mount işlemi sırasında super_block türünden bir yapının içerisini dolduracak olan fonksiyonun adresini tutmaktadır. Yapının next elemanı ise Sanal Dosya Sistemi nin desteklediği dosya sistemlerine ilişkin bağlı listedeki bir sonraki elemanı göstermektedir. 3.3 struct vfsmount Mount işlemi ile Linux sistemine bağlanan her dosya sisteminin mount işlemi ile ilgili bilgileri vfsmount isimli yapıda tutulmaktadır. vfsmount yapıları da file_system_type yapılarında olduğu gibi bağlı liste biçiminde saklanmaktadır. struct vfsmount { char *mnt_dirname; struct super_block *mnt_sb; struct vfsmount *mnt_next;

4 vfsmount yapısının mnt_dirname elemanı ilgili dosya sisteminin mount işlemi sonucunda hangi dizine bağlandığı bilgisini, mnt_sb elemanı mount işlemi sonucunda ilgili dosya sistemi için oluşturulan super_block türünden bir yapının adresini tumaktadır. Yapının mnt_next elemanı ise bağlı listedeki bir sonraki elemanı göstermektedir. 3.4 struct super_block ve struct super_operations Mount işlemi sırasında dosya sistemi için super_block isimli bir yapı oluşturulur ve yapının elemanları ilgili dosya sistemine ilişkin bilgiler ile doldurulur. Bu işlemi file_system_type yapısının read_super elemanının gösterdiği fonksiyon yapmaktadır. super_block yapısının başındaki elemanlar Sanal Dosya Sistemi nin desteklediği dosya sistemleri için ortak olan bilgileri tutan elemanlardır. Dosya sistemlerinin kendilerine özgü bilgileri ise ayrı yapılarda tutulmaktadır. Bu yapılar super_block yapısının içerisinde bulunan bir birlik (union) içerisinde bulunurlar. Dolayısıyla mount işlemi sırasında oluşturulacak olan super_block yapısının bu birlik elemanı aslında ilgili dosya sistemine özgü bilgileri içeren yapıyı temsil edecektir. struct super_block { struct file_system_type *s_type; struct super_operations *s_op; union { struct minix_sb_info minix_sb; struct ext2_sb_info ext2_sb; struct ext3_sb_info ext3_sb; struct msdos_sb_info msdos_sb; struct sysv_sb_info sysv_sb; struct ufs_sb_info ufs_sb; void *generic_sbp; } u; super_block yapısının s_type elemanı ilgili dosya sistemine ilişkin file_system_type yapısının adresini tutmaktadır. s_op elemanı super-block işlemleri olarak da isimlendirilen super_operations türünden bir yapının adresini tutmaktadır. Görüldüğü gibi yapının u elemanı bir birliktir ve farklı türden yapıları içermektedir. İşte bu yapılar dosya sistemine özgü bilgileri tutarlar. Örneğin msdos_sb_info yapısı MS-DOS işletim sisteminin dosya sistemine (FAT) özgü bilgileri tutmaktadır. Bu bilgiler FAT dosya sisteminin BPB (BIOS Parameter Block) yapısından elde edilerek yapının elemanlarında tutulmaktadırlar. Super block işlemlerini temsil eden super_operations yapısı super_block yapısını kullanarak işlemler yapan fonksiyonların adreslerini içeren bir yapıdır. struct super_operations { void (*read_inode) (struct inode *); void (*write_inode) (struct inode *);

5 void (*delete_inode) (struct inode *); void (*write_super) (struct super_block *); super_operations yapısının read_inode, write_inode ve delete_inode elemanları sonraki bölümlerde incelenecek olan inode elemanları üzerinde okuma, yazma ve silme işlemleri yapan fonksiyonların adreslerini tutan elemanlardır. Yapının write_super elemanı ise super_block yapısının diske yazılması gereken durumlarda kullanılan fonksiyonun adresini tutar. 3.5 struct file ve struct file_operations Sanal Dosya Sistemi nde açılan her dosya struct file yapısıyla temsil edilmektedir. Örneğin dosya üzerinde okuma, yazma gibi işlemleri yapabilmek için bu yapıya ihtiyaç duyulur. struct file { struct dentry *f_dentry; struct vfsmount *f_vfsmount; struct file_operations *f_op; mode_t f_mode; loff_t f_pos; struct file yapısının f_dentry elemanı bir sonraki konuda ele alınacak olan struct dentry yapısı türünden bir göstericidir ve bu türden bir yapıyı göstermktedir. f_vfsmount elemanı ilgili dosya sisteminin mount işlemi ile ilgili bilgilerini tutan struct vfsmount yapısının adresini tutar. f_op elemanı dosya işlemleri olarak da isimlendirilen struct file_operations yapısının adresini tutmaktadır. Yapının f_mode (file pointer) elmanı ilgili dosyanın açılış modunu, f_pos elemanı ise dosya pozisyon göstericisini temsil etmektedir. struct file_operations { loff_t (*llseek) (struct file *, loff_t, int); ssize_t (*read) (struct file *, char *, size_t, loff_t *); ssize_t (*write) (struct file *, const char *, size_t, loff_t *); struct file_operations yapısı dosya üzerinde işlemler yapan fonksiyonların adreslerini tutan yapıdır. llseek elemanı dosyanın dosya pozisyon göstericisini konumlandıran fonksiyonun adresini tutmaktadır. Yapının read ve write elemanları ise sırasıyla dosyadan okuma yapan ve dosyaya yazma yapan fonksiyonların adreslerini tutmaktadır.

6 3.6 struct dentry ve struct dentry_operations Sanal Dosya Sistemi nde dizin girişleri kullanılmadan önce dcache olarak isimlendirilen bir önbelleğe alınırlar ve buradan kullanılırlar. Bu önbellekte herbir dizin girişi struct dentry yapısıyla temsil edilmektedir. Veri yapısı olarak hash tablosu kullanılmaktadır. struct dentry { struct inode *d_inode; struct dentry *d_parent; struct qstr d_name; struct dentry_operations *d_op; struct super_block *d_sb; Yapının d_inode elemanı ilgili dizin girişinin ilişkin olduğu inode elemanının adresini, d_parent elemanı üst dizin girişine ilişkin dentry yapısının adresini, d_op elemanı dentry yapısıyla ilgili işlemler yapan fonksiyonların adreslerini tutan dentry_operations yapısının adresini ve d_sb elemanı ilgili dosya sisteminin super_block yapısının adresini tutar. Yapının d_name elemanı ise dizin girişinin ismi ve hash değeri gibi bilgileri tutan qstr isimli bir yapı türündendir. qstr yapısı aşağıdaki gibidir. struct qstr { const unsigned char * name; unsigned int len; unsigned int hash; struct dentry_operations { int (*d_compare) (struct dentry *, struct qstr *, struct qstr *); void (*d_delete)(struct dentry *); dentry_operations yapısı dentry yapısıyla ilgili işlemler yapan fonksiyonların adreslerini tutan elemanlar içerir. Örneğin, d_compare elemanı iki qstr yapısını karşılaştıran fonksiyonun adresini tutmaktadır. d_delete elemanı ise dentry yapısının referans sayısı 0 olduğu zaman çağrılan fonksiyonun adresini tutmaktadır. 3.7 struct inode ve struct inode_operations Sanal Dosya Sistem inde mount işlemi ile bağlanan dosya sistemlerindeki herbir dizin ve dosya için bir inode yapısı bulunmaktadır. inode yapısında dizin veya dosyanın bilgileri tutulur. Örneğin inode numarası, zaman bilgileri, uzunluğu, dosyanın diskteki fiziksel konumu gibi. Yapının başındaki elemanlar super_block yapısında olduğu gibi dosya

7 sistemleri için ortak olan bilgileri tutarlar. Dosya sistemlerinin kendilerine özgü bilgileri ise ayrı yapılarda tutulmaktadır. Yine bu yapılar inode yapısının içerisinde bulunan bir birlik içerisinde bulunurlar. dcache olarak isimlendirilen dentry önbelleği gibi inode yapıları için de bir önbellek kullanılmaktadır. Kullanılmak istenen dosyaya ilişkin inode önce bu önbellekte aranır. Eğer bulunursa kullanılır, bulunamazsa önbellekte yeni bir inode yapısı oluşturulur ve ilgili dosyanın bilgileriyle doldurulur. dentry önbelleğindeki her dentry yapısının bir elemanı ilgili dosyanın inode yapısını göstermektedir. Dolayısıyla inode yapılarına erişmek için iki yöntem vardır. Birinci yöntem dentry yapısındaki inode yapısını gösteren gösterici ile erişmektir. İkinci yöntem ise inode hash tablosunu kullanarak erişmektir. struct inode { unsigned long i_ino; struct inode_operations *i_op; struct file_operations *i_fop struct super_block *i_sb; union { struct ext2_inode_info ext2_i; struct msdos_inode_info msdos_i; } u; Yapının i_ino elemanı inode numarasını tutmaktadır ve bu değer mount işlemi sonucunda bağlanan dosya sistemi genelinde tektir, yani aynı inode numarasaın sahip birden fazla inode olamaz. Yapının i_op, i_fop ve i_sb elemanları sırasıyla inode_operations, file_operations ve super_block yapılarının adreslerini tutmaktadır. u isimli birlikte ise ilgili dosya sistemine özgü bilgiler tutulmaktadır. struct inode_operations { int (*mkdir) (struct inode *,struct dentry *,int); int (*rmdir) (struct inode *,struct dentry *); inode_operations yapısı inode elemanlarıyla ilgili işlemler yapan fonksiyonların adreslerini tutan elemanlar içermektedir. Örneğin mkdir ve rmdir elemanlarının gösterdiği fonksiyonlar sırasıyla dizin oluşturur ve dizin siler. 3.8 İşlemlerin Yapılış Sırası Bir dosya sisteminin Sanal Dosya Sistemi nde kullanılabilmesi için öncelikle dosya sisteminin file_system_type yapısı oluşturulur ve register_filesystem fonksiyonuyla file_system_type yapılarından oluşan bağlı listeye eklenir.

8 int register_filesystem(struct file_system_type *fs); Daha sonra mount işlemi sırasında struct vfsmount yapısı oluşturulur. file_system_type yapısının read_super elemanının gösterdiği fonksiyon kullanılarak ilgili dosya sisteminin super_block yapısı oluşturulur. mount işlemi sonucunda dosya sisteminin bağlandığı dizin artık ilgili dosya sisteminin kök dizini olarak kabul edilebilir. Bundan sonra dosya sistemindeki dizinler ve dosyalar üzerindeki işlemler inode, dentry ve file yapıları kullanılarak yapılacaktır. Dosya sisteminin file_system_type yapılarından oluşan bağlı listeden silinmesi için unregister_filesystem fonksiyonu kullanılır. int unregister_filesystem(struct file_system_type * fs); Bir process in, dosya sistemiyle etkileşimi şekildeki gibidir.

9 4. CSDOS İÇİN SANAL DOSYA SİSTEMİ NİN KURULMASI CSDOS işletim sistemi de Sanal Dosya Sistemi kullanacaktır. Dolayısıyla birçok işletim sisteminde kullanılan yapılara benzer CSDOS için tasarlanmış dosya sistemi yapıları kullanılacaktır. Buradaki yapılar yalnızca birer iskelet olarak verilmektedir. Geliştirme sırasında yapılar üzerinde değişiklikler yapılabilir. Yapılarda belirtilen türler proje genelinde kullanılacak olan general.h ve fs.h başlık dosyalarında bildirilmiştir. 4.1 FILE_SYSTEM_TYPE Sanal dosya sisteminin desteklediği dosya sistemlerinin her biri dosya sisteminin tipini tutan FILE_SYSTEM_TYPE yapısı ile temsil edilmektedir. Bu yapı Linux işletim sistemindeki file_system_type yapısıyla eşdeğerdir. typedef struct tagfile_system_type { SLIST_NODE slink; PCSTR szname; DWORD dwflags; PSUPER_BLOCK (*ReadSuperBlock) (PSUPER_BLOCK, PVOID, DWORD); } FILE_SYSTEM_TYPE, *PFILE_SYSTEM_TYPE; Sanal Dosya Sistemi nin desteklediği dosya sistemleri bağlı liste olarak tutulmaktadır. Yapının slink elemanı yapıyı bu bağlı listeye eklemek için kullanılmaktadır. szname elemanı dosya sisteminin ismini tutar. Yapının ReadSuperBlock isimli elemanı ise mount işlemi sırasında ilgili dosya sisteminin SUPER_BLOCK yapısını dolduracak olan fonksiyonun adresini tutar. Mount işlemi ile bağlanan dosya sistemlerinin her biri MOUNTED_FILE_SYSTEMS yapısıyla temsil edilmektedir. typedef struct tagmounted_file_systems { SLIST_NODE slink; DEV dev; PSTR szdevname; PSTR szmountpoint; PSUPER_BLOCK psuperblock; } MOUNTED_FILE_SYSTEMS, *PMOUNTED_FILE_SYSTEMS; Mount işlemi ile bağlanan dosya sistemleri de bir bağlı listede tutulmaktadır. Yapının slink elemanı yapıyı bu bağlı listeye eklemek için kullanılmaktadır. Yapının dev ve szdevname elemanları sırasıyla aygıt numarasını ve aygıt ismini tutmaktadır. psuperblock ise SUPER_BLOCK yapısının adresini tutmaktadır.

10 4.2 SUPER_BLOCK & SUPER_BLOCK_OPERATIONS Mount işlemi ile bağlanan her dosya sistemi için bir SUPER_BLOCK yapısı oluşturulmaktadır. Bu yapı FILE_SYSTEM_TYPE yapısının ReadSuperBlock elemanı kullanılarak doldurulmaktadır. SUPER_BLOCK yapısının başındaki elemanalar dosya sistemlerinde ortak olarak bulunan bilgileri tutmaktadır. Dosya sistemlerinin kendilerine özgü bilgileri ise ayrı yapılarda tutlmaktadır. SUPER_BLOCK yapısının u elemanı bu yapılarıdan oluşan bir birliktir. Dolayısıyla bu birlikte ilgili dosya sistemine özgü bilgileri içeren yapı bulunmaktadır. typedef struct tagsuper_block { DLIST_NODE dlink; DEV dev; DWORD dwblocksize; BYTE nblocksizebit; struct FILE_SYSTEMYPE *psystype; SUPER_BLOCK_OPERATIONS *poperations; DWORD dwsignature; union FILE_SYSTEM_SPECIFICS { MSDOS_SUPER_BLOCK sbmsdos; } u; } SUPER_BLOCK, *PSUPER_BLOCK; SUPER_BLOCK yapısı FILE_SYSTEM_TYPE yapısının adresini tutan ve BLOCK_OPERATIONS yapısının adresini tutan psystype ve poperations elemanlarına sahiptir. SUPER_BLOCK_OPERATIONS yapısı SUPER_BLOCK yapısını kullanarak işlemler yapan fonksiyonların adreslerini içeren bir yapıdır typedef struct tagsuper_block_operations { } SUPER_BLOCK_OPERATIONS, *PSUPER_BLOCK_OPERATIONS; 4.3 FILEOBJ ve FILE_OPERATIONS CSDOS Sanal Dosya Sistemi nde açılan her dosya FILEOBJ yapısıyla temsil edilmektedir. Bu yapı kullanılarak işlem yapan fonksiyonların adresleri ise FILE_OPERATIONS yapısında tutulmaktadır. typedef struct tagfileobj { DLIST_NODE dlink; DWORD dwcount; PDIR_ENTRY pdirentry; PFILE_OPERATIONS poperations; MODE mode; DWORD dwpos; DWORD dwopenflags; } FILEOBJ, *PFILEOBJ;

11 Yapının pdirentry ve poperations elemanları sırasıyla DIR_ENTRY ve FILE_OPERATIONS yapılarının adreslerini tutmaktadır. typedef struct tagfile_operations { } FILE_OPERATIONS, *PFILE_OPERATIONS; 4.4 DIR_ENTRY ve DIR_ENTRY_OPERATIONS CSDOS Sanal Dosya Sistemi nde de dizin girişleri için bir önbellek kullanılmaktadır. Önbellekteki dizin girişleri bir hash tablosu kullanılarak saklanırlar ve herbir dizin girişi bir DIR_ENTRY yapısıyla ifade edilmektedir. typedef struct tagdir_entry { DWORD dwcount; PINODE pinode; struct tagdir_entry *pparentdir; struct tagdir_entry *pmountdir; PDIR_ENTRY_OPERATIONS poperations; DLIST_NODE nextsibling; DLIST_HEADER subdir; } DIR_ENTRY, *PDIR_ENTRY; DIR_ENTRY yapısında ilgili dizin girişinin inode elemanını gösteren pinode isimli bir eleman vardır. Yapının pparendir elemanı üst dizin girişinin adresini tutan bir göstericidir. Yapının nextsibling elemanı ilgili dizinle aynı seviyedeki bir sonraki dizin girişinin adresini tutmaktadır. subdir elemanı ise ilgili dizinin varsa altdizinlerinden oluşan bağlı listenin başlangıcını tutmaktadır. typedef struct tagdir_entry_operatoins { } DIR_ENTRY_OPERATIONS, *PDIR_ENTRY_OPERATIONS; DIR_ENTRY_OPERATIONS yapısı DIR_ENTRY yapısıyla ilgili işlemler yapan fonksiyonların adreslerini tutan elemanlar içerir. 4.5 INODE ve INODE_OPERATIONS CSDOS Sanal Dosya Sistem inde mount işlemi ile bağlanan dosya sistemlerindeki dizin ve dosyalar için birer INODE yapısı bulunmaktadır. INODE yapısında dizin veya dosyanın bilgileri tutulmaktadır. Yapının başındaki elemanlar dosya sistemleri için ortak olan bilgileri tutarlar. Dosya sistemlerinin kendilerine özgü bilgileri ise ayrı yapılarda tutulmaktadır. Bu yapılar INODE yapısının içerisinde bulunan bir birlik içerisinde bulunurlar. INODE yapıları için de bir önbellek kullanılmaktadır. Önbellekte INODE elemanları bir hash tablosu biçiminde saklanmaktadır. Kullanılmak istenen dosyaya ilişkin INODE yapısı önce bu önbellekte aranır. Eğer bulunursa kullanılır, bulunamazsa önbellekte yeni bir INODE yapısı oluşturulur ve ilgili dosyanın bilgileriyle doldurulur.

12 typedef struct taginode { DWORD dwcount; struct tagdir_entry *pdirentry; PINODE_OPERATIONS poperations; DWORD ino; DEV dev; UID uid; GID gid; union INODE_SPECIFICS { MSDOS_INODE inomsdos; } u; } INODE, *PINODE; Yapının ino elemanı INODE numarasını tutar ve bu değer dosya sistemi genelinde tektir. Yapının pdirentry ve poperations elemanları sırasıyla DIR_ENTRY ve INODE_OPERATIONS yapılarının adreslerini tutmaktadır. u isimli birlikte ise ilgili dosya sistemine özgü bilgiler tutulmaktadır. typedef struct taginode_operations { } INODE_OPERATIONS, *PINODE_OPERATIONS; INODE_OPERATIONS yapısı ise INODE elemanlarıyla ilgili işlemler yapan fonksiyonların adreslerini tutan bir yapıdır. 4.6 İşlemlerin Yapılış Sırası Bir dosya sisteminin CSDOS Sanal Dosya Sistemi nde kullanılabilmesi için öncelikle dosya sisteminin FILE_SYSTEM yapısı oluşturulur ve RegisterFileSystem fonksiyonuyla FILE_SYSTEM_TYPE yapılarından oluşan bağlı listeye eklenir. BOOL RegisterFileSystem(PFILE_SYSTEM_TYPE pfstype); Daha sonra mount işlemi sırasında MOUNTED_FILE_SYSTEMS yapısı oluşturulur. FILE_SYSTEM_TYPE yapısının ReadSuperBlock fonksiyonu kullanılarak ilgili dosya sisteminin SUPER_BLOCK yapısı oluşturulur. Bundan sonra dosya sistemindeki dizinler ve dosyalar üzerindeki işlemler INODE, DIR_ENTRY ve FILEOBJ yapıları kullanılarak yapılacaktır. Dosya sisteminin FILE_SYSTEM_TYPE yapılarından oluşan bağlı listeden silinmesi için UnregisterFileSystem fonksiyonu kullanılır. BOOL UnregisterFileSystem(PFILE_SYSTEM_TYPE pfstype);

13 Kaynaklar 1. Understanding the Linux Kernel, Bovet Daniel P., Cesati Marco, O Reilly, Linux Kernel Internals (Second Edition), Beck Michael, Böhme Harald, Dziadzka Mirko, Knuitz Ulrich, Magnus Robert, Verworner Dirk-Addison Wesley The Linux Kernel v0.8-3, Rusling David A., Linux Kernel 2.4 Internals, Aivazian Tigran, The Linux Virtual File System Layer v1.6, Brown Neil, The Virtual File System in Linux, Rubini Alessandro, 1997

CSD İŞLETİM SİSTEMİNİN SANAL DOSYA SİSTEMİNE İLİŞKİN TEMEL VERİ YAPILARI

CSD İŞLETİM SİSTEMİNİN SANAL DOSYA SİSTEMİNE İLİŞKİN TEMEL VERİ YAPILARI CSD İŞLETİM SİSTEMİNİN SANAL DOSYA SİSTEMİNE İLİŞKİN TEMEL VERİ YAPILARI Kaan Aslan 06/01/2004 Özet: Bu makale CSD İşletim Sisteminin sanal dosya sistemi üzerinde çalışacak yeni grup üyelerini desteklemek

Detaylı

Dosya, disk üzerinde depolanmış verilerin bütününe verilen isimdir. İşletim sistemi genel olarak iki çeşit dosya içerir.

Dosya, disk üzerinde depolanmış verilerin bütününe verilen isimdir. İşletim sistemi genel olarak iki çeşit dosya içerir. 2 Dosya Nedir? Dosya, disk üzerinde depolanmış verilerin bütününe verilen isimdir. İşletim sistemi genel olarak iki çeşit dosya içerir. Birincisi, bir sistem görevi yerine getirirken yada bir uygulama

Detaylı

DOSYA NEDİR? Verilerin HDD de saklanması. Verilerin HDD de saklanması DOSYA SİSTEMİ NEDİR?

DOSYA NEDİR? Verilerin HDD de saklanması. Verilerin HDD de saklanması DOSYA SİSTEMİ NEDİR? DOSYA NEDİR? Dosya;disk üzerinde depolanmış verilerin bütününe verilen isimlendirmedir. İşletim sistemi tipik olarak iki çeşit dosya içerir. Birincisi; bir sistem görevi yerine getirirken yada bir uygulama

Detaylı

Linux işletim sistemlerinde dosya hiyerarşisinde en üstte bulunan dizindir. Diğer bütün dizinler kök dizinin altında bulunur.

Linux işletim sistemlerinde dosya hiyerarşisinde en üstte bulunan dizindir. Diğer bütün dizinler kök dizinin altında bulunur. Dosya Sistemi ve Çalışma Mantığı Dosya Sistemi Disk üzerindeki dosyaların düzenlenmesini ve bir işletim sisteminde dosyaların izlerinin bulunmasını sağlayan yapıya Dosya Sistemi (File System) denir. Linux

Detaylı

Master boot record (MBR)

Master boot record (MBR) DİSK ve FAT Cluster büyüklükleri fat yapısına ve disk büyüklüğüne bağlıdır. Aşağıdaki tabloda FAT16 dosya sistemi için disk size larına göre cluster büyüklükleri verilmiştir. Disk size (partition büyüklüğü)

Detaylı

HEAP SİSTEMİ. Oğuz Karan

HEAP SİSTEMİ. Oğuz Karan HEAP SİSTEMİ Oğuz Karan Özet: Bu makalede heap sistemi hakkında bilgiler verilmiş ve çeşitli sistemlerde heap sisteminin aşağı seviyeli çalışması anlatılmıştır. Ayrıca son bölümde CSD işletim sisteminin

Detaylı

ALGORİTMA VE PROGRAMLAMA II

ALGORİTMA VE PROGRAMLAMA II ALGORİTMA VE PROGRAMLAMA II Yrd. Doç. Dr. Deniz KILINÇ deniz.kilinc@cbu.edu.tr YZM 1102 Celal Bayar Üniversitesi Hasan Ferdi Turgutlu Teknoloji Fakültesi Genel Bakış 2 Dosya İşlemleri (Rastgele Erişim)

Detaylı

İşletim Sistemi. BTEP205 - İşletim Sistemleri

İşletim Sistemi. BTEP205 - İşletim Sistemleri İşletim Sistemi 2 İşletim sistemi (Operating System-OS), bilgisayar kullanıcısı ile bilgisayarı oluşturan donanım arasındaki iletişimi sağlayan ve uygulama programlarını çalıştırmaktan sorumlu olan sistem

Detaylı

ELN1002 BİLGİSAYAR PROGRAMLAMA 2

ELN1002 BİLGİSAYAR PROGRAMLAMA 2 ELN1002 BİLGİSAYAR PROGRAMLAMA 2 DOSYALAMA Sunu Planı Veri Hiyerarşisi Dosyalar ve Akımlar(streams) Sıralı Erişim (Sequential Access) dosyalarının oluşturulması Sıralı Erişim Dosyalarından Veri Okuma Rasgele

Detaylı

Dosyaların Özellikleri (Attribute) Dosya İşlemleri. İki Seviyeli Katalog Sistemleri. Tek Seviyeli Katalog Sistemleri. Hiyerarşik Katalog Sistemleri

Dosyaların Özellikleri (Attribute) Dosya İşlemleri. İki Seviyeli Katalog Sistemleri. Tek Seviyeli Katalog Sistemleri. Hiyerarşik Katalog Sistemleri Bilgilerin Uzun Vadeli Saklanması 8 DOSYA SİSTEMS STEMİ saklanacak veriler çok fazla olabilir veriler proses sonlandıktan sonra da kaybolmamalı bilgiye prosesler ortak olarak ulaşabilmeli 424 Dosya Sistemi

Detaylı

Temel Bilgisayar Programlama

Temel Bilgisayar Programlama BÖLÜM 11: : Birçok programda, bazı verilerin disk üzerinde saklanmasına gerek duyulur. Bütün programlama dillerinde, sabit disk sürücüsü (Hard Disk Drive, HDD) üzerindeki verileri okumak veya diske veri

Detaylı

BTP 205 İŞLETİM SİSTEMLERİ

BTP 205 İŞLETİM SİSTEMLERİ BTP 205 İŞLETİM SİSTEMLERİ DOSYA SİSTEMİ Dr. Önder EYECİOĞLU 2012 DOSYA SİSTEMİ 1. Dosya Kavramı: 1. Dosya Özellikleri 2. Dosya Türleri 3. Dosya Operasyonları 4. Dosya Yapısı 5. Dahili Dosya Yapısı 2.

Detaylı

DİSK DEPOLAMA ALANLARI

DİSK DEPOLAMA ALANLARI DİSK DEPOLAMA ALANLARI 1. Giriş İşlemci hızı ve hafıza kapasitesinin disk hızından çok daha hızlı bir gelişim içinde bulunduğu göz önüne alınırsa, disk kullanımında teorik ilgi ve uygulamanın önemliliği

Detaylı

UFS SNAPSHOT. Hazırlayan: Asiye Yigit Agustos

UFS SNAPSHOT. Hazırlayan: Asiye Yigit Agustos UFS SNAPSHOT Hazırlayan: Asiye Yigit Agustos 2011 UFS SNAPSHOT - AMAÇ UFS SNAPSHOT oluşturulması SNAPSHOT alanın yedeğinin alınması UFS SNAPSHOT OLUŞTURULMASI UFS COPY ON WRITE SNAPSHOT sayesinde ufs dosya

Detaylı

İşletim Sistemlerine Giriş

İşletim Sistemlerine Giriş İşletim Sistemlerine Giriş Bellek Yönetimi (Memory Management) İşletim Sistemlerine Giriş - Ders09 1 SANAL BELLEK(Virtual Memory) Yıllar önce insanlar kullanılabilir olan belleğe sığmayan programlar ile

Detaylı

Algoritma Geliştirme ve Veri Yapıları 3 Veri Yapıları. Mustafa Kemal Üniversitesi

Algoritma Geliştirme ve Veri Yapıları 3 Veri Yapıları. Mustafa Kemal Üniversitesi Algoritma Geliştirme ve Veri Yapıları 3 Veri Yapıları Veri yapısı, bilginin anlamlı sırada bellekte veya disk, çubuk bellek gibi saklama birimlerinde tutulması veya saklanması şeklini gösterir. Bilgisayar

Detaylı

BİLGİ İŞLEM DERS 1. Yrd Doç Dr. Ferhat ÖZOK MSGSU FİZİK BÖLÜMÜ MSGSU FİZİK BÖLÜMÜ

BİLGİ İŞLEM DERS 1. Yrd Doç Dr. Ferhat ÖZOK MSGSU FİZİK BÖLÜMÜ MSGSU FİZİK BÖLÜMÜ BİLGİ İŞLEM MSGSU FİZİK BÖLÜMÜ DERS 1 Yrd Doç Dr. Ferhat ÖZOK MSGSU FİZİK BÖLÜMÜ İŞLETİM SİSTEMİ OS(Operating System) İşletim sistemi temel olarak, belli girdileri alıp derleyen ve sonuçları üreten program

Detaylı

Dosya sistemi (File system), dosyaların hard disk üzerinde nasıl yerleşeceğini ayarlayan bir sistemdir. Diğer bir tanıma göre dosya sistemi, bir

Dosya sistemi (File system), dosyaların hard disk üzerinde nasıl yerleşeceğini ayarlayan bir sistemdir. Diğer bir tanıma göre dosya sistemi, bir Dosya Sistemleri DOSYA NEDİR? Dosya;disk üzerinde depolanmışverilerin bütününe verilen isimlendirmedir. İşletim sistemi tipik olarak iki çeşit dosya içerir. Birincisi; bir sistem görevi yerine getirirken

Detaylı

ELN1002 BİLGİSAYAR PROGRAMLAMA 2

ELN1002 BİLGİSAYAR PROGRAMLAMA 2 ELN1002 BİLGİSAYAR PROGRAMLAMA 2 VERİ YAPILARI Sunu Planı Kendini-gösteren Yapılar Dinamik Bellek Tahsisi Bağlı Listeler Yığınlar Kuyruklar Ağaçlar 1 Veri Yapıları Şu ana kadar, diziler, matrisler ve yapılar

Detaylı

LİNUX. Dosyalar ve dizinler

LİNUX. Dosyalar ve dizinler LİNUX Dosyalar ve dizinler Dosya sistemi Linux işletim sisteminde de dosya ve dizinler diğer Unix türevi işletim sistemlerinde olduğu gibi hiyerarşik yapıya sahiptir. En üst düzeyde olan kök dizini olarak

Detaylı

Yrd. Doç. Dr. Caner ÖZCAN

Yrd. Doç. Dr. Caner ÖZCAN Yrd. Doç. Dr. Caner ÖZCAN Diziler ile Pointer Arası İlişki Bir dizi adı sabit bir pointer gibi düşünülebilir. Diziler ile pointer lar yakından ilişkilidir. Pointer lar değişkenleri gösterdikleri gibi,

Detaylı

Algoritma Geliştirme ve Veri Yapıları 9 Ağaç Veri Modeli ve Uygulaması. Mustafa Kemal Üniversitesi

Algoritma Geliştirme ve Veri Yapıları 9 Ağaç Veri Modeli ve Uygulaması. Mustafa Kemal Üniversitesi Algoritma Geliştirme ve Veri Yapıları 9 Ağaç Veri Modeli ve Uygulaması Ağaç, verilerin birbirine sanki bir ağaç yapısı oluşturuyormuş gibi sanal olarak bağlanmasıyla elde edilen hiyararşik yapıya sahip

Detaylı

FreeBSD Erişim Kontrol Listeleri

FreeBSD Erişim Kontrol Listeleri FreeBSD Erişim Kontrol Listeleri Unix dosya izinleri çok esnek ve nerdeyse bütün erişim problemlerini çözebiliyorlar.peki ya çözemedikleri?her dosyayı başka bir kullanıcı ile paylaşmak için yeni bir grup

Detaylı

enum bolumler{elektronik, insaat, bilgisayar, makine, gida};

enum bolumler{elektronik, insaat, bilgisayar, makine, gida}; BÖLÜM 12: Giriş C programlama dilinde programcı kendi veri tipini tanımlayabilir. enum Deyimi (Enumeration Constants) Bu tip, değişkenin alabileceği değerlerin belli (sabit) olduğu durumlarda programı

Detaylı

B-Tree Dosya Sistemi (BTRFS)

B-Tree Dosya Sistemi (BTRFS) B-Tree Dosya Sistemi (BTRFS) Alev Erzurumlu Kasım, 2014 İçindekiler 1 Giriş.................................................... 2 2 Peki nedir bu dosya sistemi?....................................... 3

Detaylı

Eln 1002 Bilgisayar Programlama II

Eln 1002 Bilgisayar Programlama II Eln 1002 Bilgisayar Programlama II C»de Dosya ğşleme : S¹ral¹ EriŞim Ne ÖĆreneceĆiz? Dosyalar ve Streamler Sequential (sıralı) erişim dosyaların yaratılması Sıralı Erişim Dosyalarından Veri Okuma Sıralı

Detaylı

Linux Dosya ve Dizin Yapısı

Linux Dosya ve Dizin Yapısı Linux Dosya ve Dizin Yapısı Dosya ve Dizin Sistemi Linux te kök dizin (/) sembolü ile ifade edilir. Windowsta kök dizin C: ise Linux ta / sembolüdür. 1 Kök dizini (/) İşletim Sisteminin çalışabilmesi için

Detaylı

Temel Dosya İşlemleri. Kütük Organizasyonu 1

Temel Dosya İşlemleri. Kütük Organizasyonu 1 Temel Dosya İşlemleri Kütük Organizasyonu 1 Dosyaların Temel İşlemleri Bilgiler dosyada belirli bir düzen içerisinde yer alırlar Örn: ALAN THARP 100 100 100 JOHN BISHOP 70 80 75 PAUL AUSTER Bir satırda

Detaylı

Linux taki Temel Dosya Sistemleri: ext2,ext3,ext4,jfs & xfs

Linux taki Temel Dosya Sistemleri: ext2,ext3,ext4,jfs & xfs Linux taki Temel Dosya Sistemleri: ext2,ext3,ext4,jfs & xfs Alev Erzurumlu Haziran, 2014 İçindekiler 1 Ext Dosya Sistemi............................................. 2 2 Ext2 Dosya Sistemi............................................

Detaylı

İşletim Sistemleri ve FreeBSD. 22 Nisan 2005 Halil DEMİREZEN halil@enderunix.org EnderUNIX Geliştirici Takım Üyesi

İşletim Sistemleri ve FreeBSD. 22 Nisan 2005 Halil DEMİREZEN halil@enderunix.org EnderUNIX Geliştirici Takım Üyesi İşletim Sistemleri ve FreeBSD İşletim Sistemi Çekirdeği 22 Nisan 2005 Halil DEMİREZEN halil@enderunix.org EnderUNIX Geliştirici Takım Üyesi İşletim Sistemleri İşletim Sistemi Nedir? İşletim Sistemi Çeşitleri

Detaylı

Programlama Dilleri. C Dili. Programlama Dilleri-ders08/ 1

Programlama Dilleri. C Dili. Programlama Dilleri-ders08/ 1 Programlama Dilleri C Dili Programlama Dilleri-ders08/ 1 Yapısal Veri Tipleri C dili genişletilebilen bir dildir. Var olan veri tipleri kullanılarak yeni veri tipleri tanımlanıp kullanılabilir. Programlama

Detaylı

man komut man ls (ls komutu hakkında bilgi verir.) man pwd (pwd komutu hakkında bilgi verir.)

man komut man ls (ls komutu hakkında bilgi verir.) man pwd (pwd komutu hakkında bilgi verir.) Yardım Komutları man komut Parametre olarak aldığı komut hakkında bilgiyi ekranda gösterir. man ls (ls komutu hakkında bilgi verir.) man pwd (pwd komutu hakkında bilgi verir.) Komut çalıştırıldığında uzun

Detaylı

YAPILAR BİRLİKLER SAYMA SABİTLERİ/KÜMELERİ. 3. Hafta

YAPILAR BİRLİKLER SAYMA SABİTLERİ/KÜMELERİ. 3. Hafta YAPILAR BİRLİKLER SAYMA SABİTLERİ/KÜMELERİ 3. Hafta YAPILAR Farklı veri tipindeki bilgilerin bir araya gelerek oluşturdukları topluluklara yapı (structure) denir. Yani yapılar, birbiriyle ilişkili değişkenlerin

Detaylı

Harddisk Disk Sabit diskler üstüste yerleştirilmiş plakalardan (platter) oluşmaktadır. Plakaların her iki yüzeyinde okuma/yazma için okuma yazma kafaları (read-write heads) monte edilmiştir. R/W kafaları

Detaylı

Yrd. Doç. Dr. Caner ÖZCAN

Yrd. Doç. Dr. Caner ÖZCAN Yrd. Doç. Dr. Caner ÖZCAN Fonksiyonu Referans ile Çağırma (Call by Reference) Bir fonksiyona gönderilen parametrenin normalde değeri değişmez. Fonksiyon içinde yapılan işlemlerin hiçbiri argüman değişkeni

Detaylı

İşletim Sistemleri. Hazırlayan: M. Ali Akcayol Gazi Üniversitesi Bilgisayar Mühendisliği Bölümü

İşletim Sistemleri. Hazırlayan: M. Ali Akcayol Gazi Üniversitesi Bilgisayar Mühendisliği Bölümü İşletim Sistemleri Hazırlayan: M. Ali Akcayol Gazi Üniversitesi Bilgisayar Mühendisliği Bölümü Bu dersin sunumları, Abraham Silberschatz, Greg Gagne, Peter B. Galvin, Operating System Concepts 9/e, Wiley,

Detaylı

Bilgilerin Uzun Vadeli Saklanması

Bilgilerin Uzun Vadeli Saklanması 8 DOSYA SİSTEMS STEMİ Bilgilerin Uzun Vadeli Saklanması saklanacak veriler çok fazla olabilir veriler proses sonlandıktan sonra da kaybolmamalı bilgiye prosesler ortak olarak ulaşabilmeli 424 Dosya Sistemi

Detaylı

Teknikleri. Önsöz. iskender atasoy

Teknikleri. Önsöz. iskender atasoy Linux Altı nda Grafik Programlama Teknikleri Önsöz Linux atında yazılım geliştirmeyi düşünüyorsunuz veya geliştiriyorsunuz.artık programlarınızı görsel bileşenler ile süslemek istiyorsanız bu doküman sizlere

Detaylı

Sistem Programlama. (*)Dersimizin amaçları Kullanılan programlama dili: C. Giriş/Cıkış( I/O) Sürücülerinin programlaması

Sistem Programlama. (*)Dersimizin amaçları Kullanılan programlama dili: C. Giriş/Cıkış( I/O) Sürücülerinin programlaması Sistem Programlama Sistem programlama bilgisayar mühendisliğinin bir alanı olup karmaşık sistemlerin ve bu sistemlerin parçalarının ile ilgilenir. İşletim Sistemlerinin Programlaması Giriş/Cıkış( I/O)

Detaylı

DOSYA İŞLEMLERİ Programlama dilleri hafta -

DOSYA İŞLEMLERİ Programlama dilleri hafta - BİLECİK ŞEYH EDEBALİ ÜNİVERSİTESİ MÜHENDİSLİK FAKÜLTESİ BİLGİSAYAR MÜHENDİSLİĞİ BÖLÜMÜ DOSYA İŞLEMLERİ Programlama dilleri 1-10. hafta - Araş. Gör. Nesibe YALÇIN Dosya İşlemleri Programın çalışma esnasında

Detaylı

İşletim Sistemleri. Discovering Computers Living in a Digital World

İşletim Sistemleri. Discovering Computers Living in a Digital World İşletim Sistemleri Discovering Computers 2010 Living in a Digital World Sistem Yazılımı Sistem yazılımı, bilgisayar ve aygıtlarının çalışmasını kontrol eden ve sürdüren programlardan oluşur. İşle;m sistemleri

Detaylı

YRD. DOÇ. DR. AGÂH TUĞRUL KORUCU Kernel çeşitleri

YRD. DOÇ. DR. AGÂH TUĞRUL KORUCU Kernel çeşitleri YRD. DOÇ. DR. AGÂH TUĞRUL KORUCU agah.korucu@gmail.com Kernel çeşitleri Tek Parçalı Çekirdek (Monolithic Kernel) Mikro Çekirdek (Microkernel) Melez Çekirdek (Hybrid Kernel) Dış Çekirdek (Excokernel) Tek

Detaylı

Algoritma Geliştirme ve Veri Yapıları 2 Veri Modelleri. Mustafa Kemal Üniversitesi

Algoritma Geliştirme ve Veri Yapıları 2 Veri Modelleri. Mustafa Kemal Üniversitesi Algoritma Geliştirme ve Veri Yapıları 2 Veri Modelleri Veri modelleri, veriler arasında ilişkisel ve sırasal düzeni gösteren kavramsal tanımlardır. Her program en azından bir veri modeline dayanır. Uygun

Detaylı

Göstericiler (Pointers)

Göstericiler (Pointers) C PROGRAMLAMA Göstericiler (Pointers) C programlama dilinin en güçlü özelliklerinden biridir. Göstericiler, işaretçiler yada pointer adı da verilmektedir. Gösterici (pointer); içerisinde bellek adresi

Detaylı

File System Object. Elbistan Meslek Yüksek Okulu Güz Yarıyılı. Öğr. Gör. Murat KEÇECĠOĞLU

File System Object. Elbistan Meslek Yüksek Okulu Güz Yarıyılı. Öğr. Gör. Murat KEÇECĠOĞLU File System Object Elbistan Meslek Yüksek Okulu 2015 2016 Güz Yarıyılı Öğr. Gör. Murat KEÇECĠOĞLU Bugüne kadar Web tekniği olarak Browser da bir sayfayı görüntüleyebileceğimizi sanıyorduk. FileSystemObject

Detaylı

Özyineleme (Recursion)

Özyineleme (Recursion) C PROGRAMLAMA Özyineleme (Recursion) Bir fonksiyonun kendisini çağırarak çözüme gitmesine özyineleme (recursion), böyle çalışan fonksiyonlara da özyinelemeli (recursive) fonksiyonlar denilir. Özyineleme,

Detaylı

Struct VE GÖSTERİCİLER FONKSİYONLARDA STRUCT KULLANIMI Programlama dilleri hafta -

Struct VE GÖSTERİCİLER FONKSİYONLARDA STRUCT KULLANIMI Programlama dilleri hafta - BİLECİK ŞEYH EDEBALİ ÜNİVERSİTESİ MÜHENDİSLİK FAKÜLTESİ BİLGİSAYAR MÜHENDİSLİĞİ BÖLÜMÜ Struct VE GÖSTERİCİLER FONKSİYONLARDA STRUCT KULLANIMI Programlama dilleri 1-14. hafta - Araş. Gör. Nesibe YALÇIN

Detaylı

Linux 2.6 Çekirdeği Stoned Beaver. Murat Koç Manager & IT Consultant murat.koc@frontsite.com.tr

Linux 2.6 Çekirdeği Stoned Beaver. Murat Koç Manager & IT Consultant murat.koc@frontsite.com.tr Linux 2.6 Çekirdeği Stoned Beaver Murat Koç Manager & IT Consultant murat.koc@frontsite.com.tr Başlıklar Tarihçe Bir Bakışta 2.4 ve 2.6 Geliştirme Süreçi Akışı Çekirdek Bileşenleri Yapılandırma Araçları

Detaylı

ALGORİTMA VE PROGRAMLAMA II

ALGORİTMA VE PROGRAMLAMA II ALGORİTMA VE PROGRAMLAMA II Yrd. Doç. Dr. Deniz KILINÇ deniz.kilinc@cbu.edu.tr YZM 1102 Celal Bayar Üniversitesi Hasan Ferdi Turgutlu Teknoloji Fakültesi Genel Bakış 2 Veri Hiyerarşisi Dosyalara Giriş

Detaylı

VERİ YAPILARI LİSTELER. Yrd. Doç. Dr. Murat GÖK Bilgisayar Mühendisliği Bölümü YALOVA ÜNİVERSİTESİ

VERİ YAPILARI LİSTELER. Yrd. Doç. Dr. Murat GÖK Bilgisayar Mühendisliği Bölümü YALOVA ÜNİVERSİTESİ VERİ YAPILARI LİSTELER Yrd. Doç. Dr. Murat GÖK Bilgisayar Mühendisliği Bölümü YALOVA ÜNİVERSİTESİ Bağlı Listeler Aynı kümeye ait veri parçalarının birbirlerine bellek üzerinde, sanal olarak bağlanmasıyla

Detaylı

ELN1002 BİLGİSAYAR PROGRAMLAMA 2

ELN1002 BİLGİSAYAR PROGRAMLAMA 2 ELN1002 BİLGİSAYAR PROGRAMLAMA 2 DOSYALAMA Sunu Planı Rasgele Erişim (Random Access) Dosyaları Rasgele Erişim Dosyalarına Veri Yazma Rasgele Erişim Dosyalarından Veri Okuma 1 Sıralı Erişim Dosyası Bir

Detaylı

mod ile açılacak olan dosyanın ne amaçla açılacağı belirlenir. Bunlar:

mod ile açılacak olan dosyanın ne amaçla açılacağı belirlenir. Bunlar: Dosyalama Çoğu programda, bazı verilerin disk üzerinde saklanmasına gerek duyulur. C programlama dilinde, disk dosyasına erişme (okuma ve yazma için) iki farklı yöntemle yapılır. Bunlar üst düzey ve alt

Detaylı

Dizgiler. C dilinde karakter m şeklinde tek tırnak içerisinde yazılan ifadelerdir. Bu karakterlerin her biri aslında bir tamsayı ile ifade edilir.

Dizgiler. C dilinde karakter m şeklinde tek tırnak içerisinde yazılan ifadelerdir. Bu karakterlerin her biri aslında bir tamsayı ile ifade edilir. DİZGİLER (STRINGS) Dizgiler char tipli karakterlerin gruplanmş haline dizgi(string) denilir. Bazen katar ismide kullanılabilir. C dilinde karakter m şeklinde tek tırnak içerisinde yazılan ifadelerdir.

Detaylı

Bilgisayar Mühendisliğine Giriş. Yrd.Doç.Dr.Hacer KARACAN

Bilgisayar Mühendisliğine Giriş. Yrd.Doç.Dr.Hacer KARACAN Bilgisayar Mühendisliğine Giriş Yrd.Doç.Dr.Hacer KARACAN İŞLETİM SİSTEMLERİ Bilinen İşletim Sistemleri İşletim Sistemlerinin Görevleri İşletim Sistemlerinin Gelişim Evresi İşletim Sistemi Türleri İşletim

Detaylı

Bilgi ve İletişim Teknolojileri (JFM 102) Ders 7. LINUX OS (Sistem Yapısı) BİLGİ & İLETİŞİM TEKNOLOJİLERİ. LINUX Yapısı

Bilgi ve İletişim Teknolojileri (JFM 102) Ders 7. LINUX OS (Sistem Yapısı) BİLGİ & İLETİŞİM TEKNOLOJİLERİ. LINUX Yapısı Ders 7 LINUX OS (Sistem Yapısı) BİLGİ & İLETİŞİM TEKNOLOJİLERİ 1 LINUX Yapısı LINUX işletim sisteminin diğer işletim sistemleri gibi kendine özgü bir yapısı vardır. LINUX yapısı ve bileşenleri aşağıdaki

Detaylı

Widows un çalışmasında birinci sırada önem taşıyan dosyalardan biriside Registry olarak bilinen kayıt veri tabanıdır.

Widows un çalışmasında birinci sırada önem taşıyan dosyalardan biriside Registry olarak bilinen kayıt veri tabanıdır. Registry: Windows un bütün ayarlarının tutulduğu bir veri tabanıdır. Widows un çalışmasında birinci sırada önem taşıyan dosyalardan biriside Registry olarak bilinen kayıt veri tabanıdır. Win.3x sistemlerinde

Detaylı

Fstab Rehberi. Ceren Çalıcı. Nisan, 2012

Fstab Rehberi. Ceren Çalıcı. Nisan, 2012 Fstab Rehberi Ceren Çalıcı Nisan, 2012 İçindekiler 1 Giriş.................................................... 2 2 Fstab a Giriş................................................ 3 3 Fstab Dosyası Nasıl

Detaylı

Veri Yapıları. Amaçlar: Temel Veri Yapılarını Tanımlamalı Veri Yapılarını Veri Modeli ve Türlerini Öğreneceksiniz. İçindekiler:

Veri Yapıları. Amaçlar: Temel Veri Yapılarını Tanımlamalı Veri Yapılarını Veri Modeli ve Türlerini Öğreneceksiniz. İçindekiler: Veri Yapıları Amaçlar: Temel Veri Yapılarını Tanımlamalı Veri Yapılarını Veri Modeli ve Türlerini Öğreneceksiniz İçindekiler: Giriş Temel Veri Yapıları Tanımlamalı Veri Yapıları Veri Modeli ve Türleri

Detaylı

EYLÜL 2012 İŞLETİM SİSTEMLERİ. Enformatik Bölümü

EYLÜL 2012 İŞLETİM SİSTEMLERİ. Enformatik Bölümü EYLÜL 2012 İŞLETİM SİSTEMLERİ İÇERİK 2 2 Yazılım nedir? Yazılım türleri nelerdir? İşletim sistemi nedir? İşletim sisteminin özellikleri İşletim sistemleri Unix Linux Windows Mac OS Android Yazılım Yazılım(Software),

Detaylı

Yaptığımız web sitelerinin daha kullanışlı olması için veritabanı sistemleri ile bağlantı kurup ihtiyaca göre verileri okuyup yazmasını isteriz.

Yaptığımız web sitelerinin daha kullanışlı olması için veritabanı sistemleri ile bağlantı kurup ihtiyaca göre verileri okuyup yazmasını isteriz. 1 PHP ile Veritabanı İşlemleri Yaptığımız web sitelerinin daha kullanışlı olması için veritabanı sistemleri ile bağlantı kurup ihtiyaca göre verileri okuyup yazmasını isteriz. 1.1 Veritabanı Nedir? Veritabanı

Detaylı

Önyükleyiciler. Ercan Ersoy

Önyükleyiciler. Ercan Ersoy Önyükleyiciler Ercan Ersoy vi Önyükleyiciler İçindekiler İçindekiler Bölüm 1: Temel Bilgiler 1 İşletim Sistemi 2 Saklama Birimlerinin Bölümlendirilmesi 4 Dosya Sistemleri 6 Kalıp Dosyaları 7 Bellenim 8

Detaylı

BİT in Temel Bileşenleri (Yazılım-1)

BİT in Temel Bileşenleri (Yazılım-1) Ders 4 BİT in Temel Bileşenleri (Yazılım-1) BİLGİ & İLETİŞİM TEKNOLOJİLERİ 1 Yazılım, değişik ve çeşitli görevler yapma amaçlı tasarlanmış elektronik araçların, birbirleriyle haberleşebilmesini ve uyumunu

Detaylı

BLM 112- Programlama Dilleri II. Hafta 5 İşaretçiler (Pointers)

BLM 112- Programlama Dilleri II. Hafta 5 İşaretçiler (Pointers) 1 BLM 112- Programlama Dilleri II Hafta 5 İşaretçiler (Pointers) Dr. Öğr. Üyesi Caner Özcan Hiç hata yapmayan insan, hiçbir şey yapmayan insandır. Ve hayatta en büyük hata, kendini hatasız sanmaktır. ~Y.

Detaylı

Değişkenler tanımlanırken onlara ne tür veriler atanabileceği de belirtilir. Temel veri türleri oldukça azdır:

Değişkenler tanımlanırken onlara ne tür veriler atanabileceği de belirtilir. Temel veri türleri oldukça azdır: C VERİ TÜRLERİ BASİT VERİ TÜRLERİ Değişkenler, program içinde üzerinde işlem yapılan, veri saklanan ve durumlarına göre programın akışı sağlanan nesnelerdir. C de bir değişken kullanılmadan önce tanımlanmalıdır.

Detaylı

Internet Programming II. Elbistan Meslek Yüksek Okulu Bahar Yarıyılı

Internet Programming II. Elbistan Meslek Yüksek Okulu Bahar Yarıyılı Internet Programming II Elbistan Meslek Yüksek Okulu 2015 2016 Bahar Yarıyılı Öğr. Gör. Murat KEÇECĠOĞLU 23 May. 2016 PHP Dosya İşlemleri Form yolu ile kullanıcıdan alınan bilgilerin veri tabanı yerine

Detaylı

LOGO DESTEK DOKÜMANI

LOGO DESTEK DOKÜMANI 1) IKWeb Kurulumu IKWeb programının çalıştırılabilmesi için kurulum işleminin gerçekleştirileceği makinede IIS (Internet Information Services) ve.net Framework 2.0 kurulu olmalıdır. IKWeb kurulumu için

Detaylı

Dosya Sistemi Nesnesi File System Object

Dosya Sistemi Nesnesi File System Object Internet Programming I Hafta VIII Dosya Sistemi Nesnesi File System Object Elbistan Meslek Yüksek Okulu 2016 2017 Güz Yarıyılı Öğr. Gör. Murat KEÇECĠOĞLU File System Object Şimdiye kadar Web tekniği olarak

Detaylı

Bilgisayarlarda Kullanılan Dosya Sistemleri

Bilgisayarlarda Kullanılan Dosya Sistemleri Bilgisayarlarda Kullanılan Dosya Sistemleri Akış Dosya sistemleri nelerdir? Dosyalar İsimlendirme, türler, yapılar, erişim, nitelikler, işlemler. Dizinler Tek, iki ve hiyerarşik seviyeli sistemler İşlemler

Detaylı

Temel Linux Eğitimi 1., 2. ve 3. Bölümler

Temel Linux Eğitimi 1., 2. ve 3. Bölümler Süha TUNA Bilişim Enstitüsü UHeM Yaz Çalıştayı - 11.06.2012 İçerik 1. Linux, Kavramlar ve Dizin Yapısı 2. Temel Linux Komutları 3. Sunucuya Uzaktan Bağlanma 1. Linux, Kavramlar ve Dizin Yapısı Linux Linux,

Detaylı

Disklerin Organizasyonu...

Disklerin Organizasyonu... Linux ve Dosya Sistemleri Disklerin Organizasyonu... Disklerin Organizasyonu... Silindirler.. Sabit Sektör Açısı Metodu Sektörler.. Disklerin Organizasyonu... 1 2 12 3 1 2 11 8 3 4 Quantum Fireball LCT

Detaylı

Linux ta komutlar hakkında yardım almak için aşağıdaki komutlar kullanılır : - man - info - whatis - apropos

Linux ta komutlar hakkında yardım almak için aşağıdaki komutlar kullanılır : - man - info - whatis - apropos Yardım Komutları Linux ta komutlar hakkında yardım almak için aşağıdaki komutlar kullanılır : - man - info - whatis - apropos Yardım Komutları man komut Parametre olarak aldığı komut hakkında bilgiyi ekranda

Detaylı

Yazılım Mühendisliğine Giriş 2018 GÜZ

Yazılım Mühendisliğine Giriş 2018 GÜZ Yazılım Mühendisliğine Giriş 2018 GÜZ 1 İşletim Sistemi (Operating System) 2 Unix İşletim Sistemi Unix AT&T çalışanları tarafından Bell Laboratuvarlarında 1969 yılında geliştirilmiştir. Farklı platformlar

Detaylı

C++ Giriş Ders 1 MSGSU Fizik Bölümü Ferhat ÖZOK Kullanılacak kaynak: Published by Juan Soulié

C++ Giriş Ders 1 MSGSU Fizik Bölümü Ferhat ÖZOK Kullanılacak kaynak:  Published by Juan Soulié Kullanılacak kaynak: http://www.cplusplus.com/doc/tutorial/ Published by Juan Soulié C++ Nedir? Arttırılmış C demektir ve C dilinin geliştirilmiş halini yansıtır. C++ öğrenmeden önce herhangi bir programlama

Detaylı

void main() { int a[] = {1, 2, 3, 4, 5, 6}; int *p=&a[2]; int **pp=&p; printf("%d", **pp+2); }

void main() { int a[] = {1, 2, 3, 4, 5, 6}; int *p=&a[2]; int **pp=&p; printf(%d, **pp+2); } Adı Soyadı Öğrenci No 1 (25p) 2 (25p) +10p 3 (25p) 4 (25p) Toplam (100p) Açıklamalar: Öğrenciler yanlarında hatırlatma amacıyla sadece bir yüzüne C fonksiyonlarını açıkladıkları, kullanımlarını örnekledikleri

Detaylı

Linux Dosya Yapısı. Eren BAŞTÜRK.

Linux Dosya Yapısı. Eren BAŞTÜRK. Linux Dosya Yapısı Eren BAŞTÜRK basturkeren@gmail.com Giriş Kernel Derleme Ramdisk oluşturma /dev/shm Aygıtı Kabuk Programlama Dosya Türlerinin Sisteme Yüklenmesi Linux Dosya Yapısı Giriş Kernel Derleme

Detaylı

Özgür Yazılım Nedir?GPL, GNU...

Özgür Yazılım Nedir?GPL, GNU... Özgür Yazılım Nedir?GPL, GNU... İlk defa Richard Stallman tarafından ortaya atılmıştır. Oluşturulan bir yazılımın herkese ait ve özgür olmasını, ancak yazılımı yazan ilk programcının haklarının saklı tutulması

Detaylı

Jval tipi. Genel veri yapılarını kullanacağımız zaman Jval den faydalanırız.önemli olanlar aşağıda mevcuttur:

Jval tipi. Genel veri yapılarını kullanacağımız zaman Jval den faydalanırız.önemli olanlar aşağıda mevcuttur: Jval tipi /blugreen/homes/plank/cs360/include/jval.h içerisinde bir Jval tipi tanımlanmıştır.büyük bir union yapısı aşağıdadır: typedef union { int i; long l; double d; void *v; char *s; char c; unsigned

Detaylı

Veri Tabanı-I 5.Hafta

Veri Tabanı-I 5.Hafta Veri Tabanı-I 5.Hafta DataBase Oluşturma 1 DATABASE Kolon,özellik,alanColumn,attributes,fields) Sunucu Tablo numarası adı soyadı 0913109001 Ali Can 0913109002 Nuri Koç Database 0913109003 Fatma Kara Satır,Kayıt

Detaylı

Windows XP: Simple Sharing, Security ve ForceGuest Perşembe, 07 Eylül :02 - Son Güncelleme Cumartesi, 12 Eylül :36

Windows XP: Simple Sharing, Security ve ForceGuest Perşembe, 07 Eylül :02 - Son Güncelleme Cumartesi, 12 Eylül :36 Bu son derece ilgi ÇEKİCİ :) konuya bir göz atalım. The " Microsoft Windows XP Professional : Resource Kit Documentation " Part II, chapter 6 bakın neler diyor: Simple Sharing ve ForceGuest Domain'e üye

Detaylı

BLG 312 Bilgisayar İşletim Sistemleri 2006 BLG 312. Bilgilerin Uzun Vadeli Saklanması. Dosya Sistemi Görevleri. Dosya Sistemi Özellikleri

BLG 312 Bilgisayar İşletim Sistemleri 2006 BLG 312. Bilgilerin Uzun Vadeli Saklanması. Dosya Sistemi Görevleri. Dosya Sistemi Özellikleri Bilgilerin Uzun Vadeli Saklanması Bilgisayar İşletim Sistemleri BLG 312 Dosya Sistemi saklanacak veriler çok fazla olabilir veriler proses sonlandıktan sonra da kaybolmamalı bilgiye prosesler ortak olarak

Detaylı

İŞLETİM SİSTEMLERİ. İŞLETİM SİSTEMİ Kavramı. Klasör ve Dosya Mantığı. Klasör ve Dosya Mantığı

İŞLETİM SİSTEMLERİ. İŞLETİM SİSTEMİ Kavramı. Klasör ve Dosya Mantığı. Klasör ve Dosya Mantığı İŞLETİM SİSTEMİ Kavramı İŞLETİM SİSTEMLERİ İşletim sistemini, bir bilgisayar sisteminde kullanıcı ile iletişim kurarak, donanım ve yazılım nitelikli kaynakların kullanıcılar arasında adil bir biçimde paylaştırılmasını

Detaylı

Windows Eski Sürümleri Bellek Yapısı

Windows Eski Sürümleri Bellek Yapısı Windows Eski Sürümleri Bellek Yapısı -Intel 8086/8088 mimarili işlemciler//640k RAM -Segment Modeli(Segmented Model) -Her segment 64K uzunluğunda -Intel 80286,640K dan daha fazla RAM i destekledi -Windows

Detaylı

şeklinde tanımlanmıştır. O halde, dosyaları daha önceki bilgilerimizi kullanarak FILE *Dosya1, *Dosya2;

şeklinde tanımlanmıştır. O halde, dosyaları daha önceki bilgilerimizi kullanarak FILE *Dosya1, *Dosya2; Dosya İşlemleri Nedir? Programlarınızı girdi (input) olarak aldığı verileri bir text dosyasında yada word dosyasında vb. saklamasıdır. Artık C programınızın yaratıp içine veriler koyacağı text dosyasını

Detaylı

BLM-112 PROGRAMLAMA DİLLERİ II. Ders-3 İşaretçiler (Pointer) (Kısım-2)

BLM-112 PROGRAMLAMA DİLLERİ II. Ders-3 İşaretçiler (Pointer) (Kısım-2) BLM-112 PROGRAMLAMA DİLLERİ II Ders-3 İşaretçiler (Pointer) (Kısım-2) Yrd. Doç. Dr. Ümit ATİLA umitatila@karabuk.edu.tr http://web.karabuk.edu.tr/umitatilla/ Dinamik Bellek Yönetimi Bir program çalıştırıldığında

Detaylı

Yrd. Doç. Dr. A. Burak İNNER

Yrd. Doç. Dr. A. Burak İNNER Yrd. Doç. Dr. A. Burak İNNER Kocaeli Üniversitesi Bilgisayar Mühendisliği Yapay Zeka ve Benzetim Sistemleri Ar-Ge Lab. http://yapbenzet.kocaeli.edu.tr Windows ta, Her disk bölümü kendi dosyalama ağacına

Detaylı

Sun Solaris Jumpstart Sistemi

Sun Solaris Jumpstart Sistemi Sun Solaris Jumpstart Sistemi Ömer Faruk Şen EnderUNIX Yazılım Geliştirme Takımı Üyesi ofsen at enderunix nokta org 4 Aralık 2007 Bu makalenin son halini http://www.enderunix.org/docs/solaris-jumpstart.pdf

Detaylı

YAZILIM İŞLETİM SİSTEMLERİ

YAZILIM İŞLETİM SİSTEMLERİ YAZILIM Donanıma işlerlik kazandıran ve bilgisayara bir iş yaptıran (program denilen) komutlar dizisine yazılım denir. Yazılım, fiziksel aygıtların yönlendirilebilmesi için yazılan programlardır. Eğer

Detaylı

Linux altında komut satırında...

Linux altında komut satırında... -Kabuk (Shell) Unix ve benzeri işletim sistemlerinde kullanıcının komut yazmasını sağlayan, bu komutları yorumlayarak gerekli işlemleri yapan programlara kabuk (shell) adı verilir. Linux da bir kullanıcı

Detaylı

Değişkenler. Geçerli değişken isimleri : baslamazamani, ad_soyad, x5 Geçersiz değişken isimleri : 3x, while

Değişkenler. Geçerli değişken isimleri : baslamazamani, ad_soyad, x5 Geçersiz değişken isimleri : 3x, while Değişkenler Değişkenler bir bilginin bellekteki konumunu temsil eden sembolik isimlerdir. Bilgisayarda hemen hemen tüm işlemler bellekte yapılır. Program çalıştırıldığında değişken ve bu değişkenin türüne

Detaylı

İŞLETİM SİSTEMİ KATMANLARI (Çekirdek, kabuk ve diğer temel kavramlar) Bir işletim sisteminin yazılım tasarımında ele alınması gereken iki önemli konu

İŞLETİM SİSTEMİ KATMANLARI (Çekirdek, kabuk ve diğer temel kavramlar) Bir işletim sisteminin yazılım tasarımında ele alınması gereken iki önemli konu İŞLETİM SİSTEMİ KATMANLARI (Çekirdek, kabuk ve diğer temel kavramlar) Bir işletim sisteminin yazılım tasarımında ele alınması gereken iki önemli konu bulunmaktadır; 1. Performans: İşletim sistemi, makine

Detaylı

PROGRAMLAMAYA GİRİŞ DERS 2

PROGRAMLAMAYA GİRİŞ DERS 2 PROGRAMLAMAYA GİRİŞ DERS 2 Program editörde oluşturulur ve diske kaydedilir Tipik Bir C Programı Geliştirme Ortamının Temelleri 1. Edit 2. Preprocess 3. Compile 4. Link 5. Load 6. Execute Önişlemci programı

Detaylı

Sanal Ortamda Nesnelerin Haptic Kol ile Manipülasyonu. Sevcan AYTEKİN Alpaslan DUYSAK

Sanal Ortamda Nesnelerin Haptic Kol ile Manipülasyonu. Sevcan AYTEKİN Alpaslan DUYSAK Sanal Ortamda Nesnelerin Haptic Kol ile Manipülasyonu Sevcan AYTEKİN Alpaslan DUYSAK İÇERİK Amaç Sanal Ortam Sanal Ortam Aygıtları Uygulama Alanları Üç Boyutlu Modelleme (3B) OpenGL, 3Dmax Sanal Ortamın

Detaylı

Oluşturmak istediğimiz OU ye bir isim veriyoruz. Name kısmına ISTANBUL yazıyoruz,

Oluşturmak istediğimiz OU ye bir isim veriyoruz. Name kısmına ISTANBUL yazıyoruz, ORGANİZATİONAL UNİT (OU) OrganizationUnit(OU): Türkçe Yapısal Birim olarak adlandırılan ve merkezi yönetimimizi kolaylaştıran bir objedir. Organizational Unit domain içerisindeki kullanıcı, group ve bilgisayarları

Detaylı

YZM 2116 Veri Yapıları

YZM 2116 Veri Yapıları YZM 2116 Veri Yapıları Yrd. Doç. Dr. Deniz KILINÇ Celal Bayar Üniversitesi Hasan Ferdi Turgutlu Teknoloji Fakültesi Yazılım Mühendisliği Bu bölümde, BÖLÜM - 3 Motivasyon: Neden Listeye İhtiyaç Var? Bağlı

Detaylı

Bilgi güvenliği konusunda farkındalık yaratmak. Mobil cihazlardaki riskleri anlatmak. Mobil uygulamaların bilgi güvenliği açısından incelemek 2

Bilgi güvenliği konusunda farkındalık yaratmak. Mobil cihazlardaki riskleri anlatmak. Mobil uygulamaların bilgi güvenliği açısından incelemek 2 1 Bu çalışmanın amacı; Bilgi güvenliği konusunda farkındalık yaratmak Mobil cihazlardaki riskleri anlatmak Mobil uygulamaların bilgi güvenliği açısından incelemek 2 Giriş - Mobil Cihazlar Mobil İşletim

Detaylı

Algoritma Geliştirme ve Veri Yapıları 7 Liste ve Bağlantılı Liste. Mustafa Kemal Üniversitesi

Algoritma Geliştirme ve Veri Yapıları 7 Liste ve Bağlantılı Liste. Mustafa Kemal Üniversitesi Algoritma Geliştirme ve Veri Yapıları 7 Liste ve Bağlantılı Liste Liste birbiriyle ilişkili verileri içeren bir kümedir, programlama açısından liste en basitinden bir dizi üzerinde tutulur. Dizi elemanları

Detaylı

İşletim Sistemleri; İÇERİK. Yazılım BİLGİ TEKNOLOJİLERİ VE UYGULAMALARI 19.10.2015. 3 Yazılım Türleri

İşletim Sistemleri; İÇERİK. Yazılım BİLGİ TEKNOLOJİLERİ VE UYGULAMALARI 19.10.2015. 3 Yazılım Türleri İÇERİK 2 BİLGİ TEKNOLOJİLERİ VE UYGULAMALARI İşletim Sistemleri ÖĞR. GÖR. HASAN ALİ AKYÜREK Yazılım nedir? Yazılım türleri nelerdir? İşletim sistemi nedir? İşletim sisteminin özellikleri İşletim sistemleri

Detaylı

Adli Analiz İşlemlerine Başlamak

Adli Analiz İşlemlerine Başlamak Adli Analiz İşlemlerine Başlamak Bu belge Harun ŞEKER tarafından adli analiz işlemlerine hazırlık konusunda yazılmıştır. Yazarın ismine sadık kalınmak şartı ile izinsiz olarak kopyalanabilir veya yayımlanabilir

Detaylı

JAVA DA GİRİŞ/ÇIKIŞ İŞLEMLERİ. Altuğ B. Altıntaş 2003 Java ve Yazılım Tasarımı - Bölüm 9 1

JAVA DA GİRİŞ/ÇIKIŞ İŞLEMLERİ. Altuğ B. Altıntaş 2003 Java ve Yazılım Tasarımı - Bölüm 9 1 JAVA DA GİRİŞ/ÇIKIŞ İŞLEMLERİ Altuğ B. Altıntaş 2003 Java ve Yazılım Tasarımı - Bölüm 9 1 G/Ç işlemleriyle uygulamalara neler yaptırabiliriz... Dosya işlemleri Dosyadan okuma Dosyaya yazma Verilerin Aktarılması

Detaylı

Değerlerinizi Koruyun!

Değerlerinizi Koruyun! İnternet ve Bilgi Teknolojileri Değerlerinizi Koruyun! NetKilit ; Sizin dışınızdaki kullanıcıların internet ve dosya erişimlerini kolayca sınırlandırmanızı sağlayan, donanım korumalı (NetKilit Anahtarı)

Detaylı