470 likes | 635 Views
Sistem Operasi 10. “File system, I/O, Security”. Konsep File. File adalah kumpulan informasi yang berhubungan dan tersimpan dalam secondary storage Tipe: Data (character, numeric, binary) Program Direktori Device Sifat: persistance, big size, dan sharability. File.
E N D
Sistem Operasi 10 “File system, I/O, Security”
Konsep File • File adalah kumpulan informasi yang berhubungan dan tersimpan dalam secondary storage • Tipe: • Data (character, numeric, binary) • Program • Direktori • Device • Sifat: persistance, big size, dan sharability
File • Simple record structure • Baris • Fixed length • Variable length • Complex Structures • Formatted document • Yang mengatur: • Operating system • Program
Atribut File • Name – disimpan dalam human readable name • Identifier – unique tag (number) dalam file system • Type – dibutuhkan oleh sistem (ex: .txt) • Location – pointer to file location di harddisk • Size – current file size • Protection – controls siapa yang reading, writing, executing • Time, date, and user identification – data untuk protection, security, and usage monitoring • Information about files are kept in the directory structure, which is maintained on the disk
Operasi File • Create: menciptakan file, size=0 • Write: menulis file dari posisi tertentu • Read: baca file dari posisi tertentu • Delete: hapus file • Truncate: menghapus isi, mempertahankan atribut, kec file length, size=0, space released • Seek • Open(Fi) – mencari directory structure pada disk untuk file Fi, dan memindahkan contentnya ke memory • Close (Fi) – memindahkan content Fi dalam memory ke directory structure pada disk
Open Files • Ketika terjadi open file, data yang harus dimaintenance: • File pointer: pointer ke lokasi read/write terakhir, per process yang membuka file • File-open count: counter dari berapa kali sebuah file dibuka – untuk membuang data dari tabel open-file ketika proses terakhir menutup nya. • Misal: 1 jika dibuka, 0 jika ditutup • Lokasi disk tempat penyimpanan file: berisi cache dari informasi akses data. • Access rights: hak akses per proses file
Open File Locking • Dilakukan oleh OS dan program • Terjadi ketika ada akses ke file • Ada 2 kemungkinan: • Mandatory – access is denied ketika ada perintah/request • Advisory – processes dapat menemukan status of locks dan memutuskan yang dilakukannya sendiri.
Access Methods • Sequential Access read next write next reset no read after last write (rewrite) • Direct Access read posisi n write posisi n set position to n read next write next rewrite n n = relative block number
Direct Access • Sangat berguna untuk pengaksesan langsung informasi dalam jumlah besar. • Contoh : database • File dilihat sebagai sederetan blok yang berindeks • Relative block number digunakan oleh sistem operasi untuk memutuskan dimana suatu file dapat ditempatkan, • dan mencegah user untuk mengakses sebagian dari sistem file yang bukan merupakan bagian dari file miliknya
Directory Structure • Kumpulan node yang berisi informasi tentang semua file Directory Files F 1 F 2 F 3 F 4 F n directory structure dan file-file berada dalam disk
Disk Structure Disk can be subdivided into partitions Disks or partitions can be RAIDprotected against failure Disk or partition can be used raw– without a file system, or formattedwith a file system Partitions also known as minidisks, slices Entity containing file system known as a volume Each volume containing file system also tracks that file system’s info in device directory or volume table of contents As well as general-purpose file systems there are many special-purpose file systems, frequently all within the same operating system or computer
Direktori • Operasi terhadap direktori: • Search for a file • Create a file • Delete a file • List a directory • Rename a file • Traverse the file system • Struktur Direktori • Single-Level Directory • Two-Level Directory • Tree-Structured Directory
Single Level Directory • Two Level Directory: • Membuat direktori yang terpisah untuk tiap user • Terdapat User File Directory (UFD) dan Master File Directory (MFD) • Bila beberapa user ingin mengerjakan tugas secara bersama dan ingin mengakses file user lain Single Level Directory: • Semua file terdapat dalam direktori yang sama • Tiap file memiliki nama yang unik
Single-Level Directory • A single directory for all users - Naming problem - Grouping problem
Two-Level Directory • Separate directory for each user • Path name • Can have the same file name for different user • Efficient searching • No grouping capability
Tree structured directory • Tiap direktori dapat mengandung file dan subdirektori • Path (absolut path) adalah urutan direktori yang berasal dari MFD (master file directory) • Working dir. (relative path) adalah path yang berasal dari current directory • Current directory adalah direktori yang baru-baru ini digunakan • Contoh absolut path : /C/C/C/C
Tree-Structured Directories (Cont) • Menciptakan sebuah file bisa dilakukan pada current directory • Delete a file rm <file-name> • Creating a new subdirectory is done in current directory mkdir <dir-name> Example: if in current directory /mail mkdir count mail prog copy prt exp count Deleting “mail” deleting the entire subtree rooted by “mail”
File System Mounting • Sebuah sistem berkas sebelum dapat digunakan harus di-mount terlebih dahulu. • Mounting: proses paling awal sebelum membuka sebuah direktori, yaitu dengan membuat sebuah direktori baru yang menjadi sub-tree dari tempat file system tsb diletakkan • Mount point: direktori kosong tempat file system yang akan di-mount diletakkan.
Partisi dan Mounting • Root partition di-mount pada saat boot time • Partisi yang lain di-mount secara otomatis atau manual (tergantung sistem operasi) • Windows • setiap partisi yang di-mount ditandai dengan huruf dan colon dan back slash • UNIX • file system dapat di-mount di semua direktori
File Sharing • File sharing mendukung sebuah sistem operasi yang user-oriented. • Berhubungan dengan permission. • Multiple user bisa mengakses file yang sama. • On distributed systems, files may be shared across a network • Pada Multiple users: • Owner ID: user yang bisa mengganti atribut, membuka akses, dan mengontrol sebuah file atau direktori. • Group ID: sekelompok user yang men-share akses sebuah file. • Tiap user memiliki user ID masing-masing yang unik.
File Sharing – Remote File Systems • Menggunakan jaringan untuk mengakses file system • Manually via programs like FTP • Automatically, seamlessly using distributed file systems • File sharing di Windows • Semi automatically via theworld wide web • Client-server model memungkinkan clients untuk mount remote file systems dari server • Server dapat melayani multiple clients • Client dan user-on-client identification biasanya insecure • NFS adalah standard UNIX client-server file sharing protocol • Standard operating system file calls ditranslasikan kedalam remote calls • Distributed Information Systems (distributed naming services) such as LDAP, DNS, NIS, Active Directory digunakan untuk remote computing
Protection • File owner/creator harus dikontrol: • Apa yang dilakukan, • Oleh siapa • Types of access: • Read • Write • Execute • Append • Delete • List
Protection • Klasifikasi users dalam mengakses suatu file: • Owner: User yang menciptakan file tsb. • Group: Sekelompok users yang saling berbagi file dan tergabung dalam sebuah kelompok kerja. • Universe: Semua users yang saling terhubung dalam sistem.
Access Lists and Groups • Mode of access: r=read, w=write, x=execute (masing2 3bit) • Three classes of users RWX a) owner access 7 1 1 1 RWX b) group access 6 1 1 0 RWX c) public access 1 0 0 1 • Ask manager to create a group (unique name), say G, and add some users to the group. • For a particular file (say game) or subdirectory, define an appropriate access. owner group public chmod 761 game Attach a group to a file chgrp G game
Contoh Directory di Linux • "/“ direktori root • /bin perintah binari esensial • /boot file –file konfigurasi boot loader • /dev device files • /etc konfigurasi sistem host-specific • /lib shared libraries essential dan modul kernel • /mnt mount point untuk me-mount suatu file system sementara • /opt tambahan paket aplikasi piranti lunak • /sbin sistem binari esensial • /tmp tempat file sementara • /usr secondary hierarchy of system • /var data variabel
Security • Security terhadap external environment dari system, dan melindungi system resources • Intruders (crackers) berusaha merusak security • Threat adalah acaman terhadap security • Attack adalah berusaha membobol security • Attack dapat bersifat accidental atau malicious • Lebih mudah menghadapi accidental daripada malicious
Security Violations Categories • Breach of confidentiality: • This type of violation involves unauthorized reading of data (or theft of information). Capturing secret data from a system, such as credit-card information, identity theft. • Breach of integrity: • This violation involves unauthorized modification of data. Such as modification of the source code of an important commercial application • Breach of availability • This violation involved unauthorized destruction of data. Website defacement is a common example of this type • Theft of service • This violation involves unauthorized use of resource • Denial of service (DOS) • This violation involves preventing legitimate use of the system.
Security • Methods • Masquerading: one participant in a communication pretends to be someone else. By masquerading, attackers breach authentication, the correctness of identification • Replay attack • Message modification • Man-in-the-middle attack • Session hijacking / Attackers
Program Threats (Cont.) • Viruses • Sisipan kode yang menempel pada program korban • Sangat spesifik terhadap CPU architecture, operating system, applications • Bisa dikirim lewat via email atau sebuah macro • Visual Basic Macro to reformat hard drive Sub AutoOpen() Dim oFS Set oFS = CreateObject(’’Scripting.FileSystemObject’’) vs = Shell(’’c:command.com /k format c:’’,vbHide) End Sub
System and Network Threats • Worms – menggunakan spawn mechanism; standalone program • ADMw0rm: Worm yang dapat melakukan ekspolitasi terhadap layanan jaringan Berkeley Internet Name Domain (BIND), dengan melakukan buffer-overflow. • Code Red: Worm yang dapat melakukan eksploitasi terhadap layanan Internet Information Services (IIS) versi 4 dan versi 5, dengan melakukan serangan buffer-overflow. • LoveLetter: Worm yang menyebar dengan cara mengirimkan dirinya melalui e-mail kepada semua akun yang terdaftar dalam Address Book Microsoft Outlook Express/daftar kontak dalam Microsoft Outlook dengan cara menggunakan kode Visual Basic Script (VBScript). • Nimda • SQL-Slammer • Port scanning • Berusaha secara otomatis untuk konek ke sebuah range ports dalam suatu range IP addresses • Denial of Service • Membuat target komputer menjadi overload • Distributed denial-of-service (DDOS) datang dari mana-mana pada suatu saat tertentu bersamaan.
Menjaga Masalah Security • Memasang firewall • Melakukan enkripsi (kriptografi) • Memasang anti virus, anti spyware
NEXT • Presentasi Program • Bagi yang mau??