Saturday, January 5, 2013

Jenis Jenis Penjadualan

Sebelumnya akan saya jelaskan apa tiu penjadualan,
Penjadualan merupakan pengaturan penggunaan waktu prosesor bagi sejumlah proses yang saling berkompetisi ( di eksekusi )

Jenis jenis penjadualan dibagi menjadi 3 jangka yaitu :

  • Penjadualan jangka panjang (long term)
  • Penjadualan jangka menengah (medium term)
  • Penjadualan jangka pendek (short term)
Penjadualan jangka panjang 
Adalah keputusan untuk menambah suatu proses ke kelompok proses yang akan dieksekusi dan terjadi pada saat suatu proses baru diciptakan (lokasinya masih di dalam harddisk)

Penjadualan jangka menengah
Adalah keputusan untuk menambahkan sejumlah proses (sebagian atau seluruhnya) ke dalam main memory dan terjadi pada saat swapping

Penjadualan jangka pendek
Adalah keputusan untuk memilih proses mana yang akan dieksekusi diantara sejumlah proses yang sudah siap dieksekusi , penjadualan yang sering digunakan dan sering juga disebut dispatcher (yang bertugas mengirimkan job)

Algoritma Penempatan pada Partisi Memori Dinamis

kali ini saya akan membahas mengenai algoritma penempatan yang ada pada partisi memori dinamis.. langsung aja,

terdapat 3 algoritma yang dapat digunakan

  1. First Fit
  2. Next Fit
  3. Best Fit
Sesuai dengan urutan 1 sampai 3 dilihat dari tingkat efisien nya

First Fit merupakan algoritma penempatan yang paling bagus karena paling cepat dan paling sederhana. Pencarian blok memori kosong dimulai dari awal dan blok memori yang dipilih adalah blok memori yang pertama kali ditemukan dan ukurannya sesuai

Next Fit kurang efisien dibanding First Fit karena blok memori yang sering ditemukan berada pada ujung akhir memori yang merupakan blok memori yang ukurannya paling besar. Pencarian blok memori kosong dimulai dari lokasi placement terakhir

Best Fit biasanya merupakan performasi yang dapat dikatakan paling buruk dikarenakan proses pencariannya paling lama dan membebani prosesor. Pencarian nya memilih blok memori yang paling sedikit menyisakan ruang memori

Proteksi dan Keamanan Komputer

Proteksi dan Keamanan Komputer
Daerah keamanan computer secara fisik didukung dan dikontrol otomatis secara administrative. Kita memulai dengan memeriksa tipe ancaman yang dihadapi oleh fasilitas computer komunikasi, pendekatan tradisional untuk keamanan computer, termasuk memori dan data.
Untuk memahami tipe threat dari keamanan yang ada, kita membutuhkan definisi persyaratan dari keamanan. Keamanan computer dan jaringan menekankan kepada empat persyaratan :
·      Kerahasiaan: Informasi dalam system computer hanya diakses untuk dibaca oleh pihak berkepentingan. Tipe dari akses ini termasuk pencetakan, penampilan , dan bentuk objek dari pembatasan, termasuk penampakan dari keberadaan objek.
·      Integritas : asset system computer hanya dapat dimodifikasi oleh pihak yang berwenang. Modifikasi termasuk menulis, mengubah, mengganti status, penghapusan dan pembentukan.
·      Ketersediaan : Aset system computer yang tersedia untuk pihak yang berwenang.
·      Autentifikasi : Sistem computer dapat memverifikasi identitas dari user.

Tipe dari Ancaman
Tipe penyerangan dalam keamanan system computer atau jaringan merupakan yang terbaik dikarakterisikkan dengan menampilkan fungsi system computer yang menyediakan informasi secara umum, terdapat alur informasi dari sebuah sumber, seperti sebuah file atau sebuah daerah memori utama, untuk tujuan seperti file lain atau user. Arus normal ini dinyatakan dalam empat kategori penyerangan berikut :
·      Interupsi : Aset dari system yang dihancurkan atau menjadi tidak tersedia. Ini merupakan penyerangan dari ketersediaan. Contoh penghancuran sebuah potongan hardware, seperti sebuah hard disk, potongan dari sebuah baris komunikasi atau ketidakmampuan dari system manajemen file
·      Intersepsi : Pihak yang tidak diberi wewenang mencoba akses untuk sebuah asset. Ini merupakan asset kerahasiaan. Pihak yang tidak diberi wewenang dapat berupa orang, sebuah program, array computer. Contoh termasuk penyadapan telepon untuk mendapatkan data dalam sebuah jaringan dan pengopian file atau program
·      Modifikasi : Pihak yang tidak berwenang yang tidak memiliki akses, namun menggantikan dengan sebuah asset. Ini merupakan penyerangan dari integritas. Contoh termasuk perubahan nilai dalam file data, mengubah program dan memodifikasi isi dari pesan yang sedang ditransmisikan dalam jaringan.
·      Pabrikasi : pihak yang tidak berwenang menyisipkan objek palsu dalam system. Ini termasuk penyerangan autentifikasi. Contoh termasuk penyisipan dari pesan palsu dalam jaringan atau menambahkan record dalam sebuah file.

Proteksi
Pengantar kepada multiprogramming membawa kemampuan untuk men share sumber berikut di antara user. Sharing ini melibatkan tidak hanya prosedur, namun juga :
·      Memori
·      Device I/O seperti printer dan disket
·      Program
·      Data
Kemampuan untuk menshare sumber ini memperkenalkan kebutuhan untuk proteksi yang menunjuk kepada system operasi yang dapat menawarkan proteksi terhadap spectrum berikut :
·      Isolasi : Pendekatan ini berakibat bahwa masing masing proses beroperasi terpisah dari proses lainnya dengan tidak ada sharing dan komunikasi. Masing masing proses memiliki daerah alamatnya sendiri dan objek lainnya
·      Share seluruhnya atau share tidak sama sekali : kepemilikan dari objek (misalnya file atau segmen memori) mendeklarasikan menjadi public atau private (pribadi). Dalam kasus sebelumnya, setiap proses dapat mengakses objek, berikutnya hanya pemilik proses yang dapat mengakses objek.
·      Share melalui kemampuan dinamis : Perluasan dari konsep control akses untuk memungkinkan pembentukan hak sharing untuk objek.
·      Pembatasan penggunaan objek : Bentuk proteksi ini membatasi tidak hanya akses ke sebuah objek nyang akan ditempatkan. Sebagai contoh, seorang user memungknkan untuk menampilkan sebuah dokumen yang sensitive, namun tidak mencetaknya. Contoh lain adalah user diperbolehkan untuk mengakses ke sebuah database yang menurunkan simpulan statis, namun tidak menentukan nilai data secara spesifik.
Item berikut didaftarkan secara kasat dalam urutan meningkatkan untuk kesulitan dalam implementasi, namun juga urutan meningkatkan dari kebaikan proteksi yang mereka sediakan. Sebuah system operasi dapat menyediakan tingkatan yang berbeda dari proteksi untuk objek, user , atau aplikasi yang berbeda.
          Sistem operasi menyeimbangkan kebutuhan untuk sharing yang meningkatkan utilitas dari system computer dengan kebutuhan proteksi dari sumber user individual. Dalam bagian ini kita akan memperhatikan beberapa mekanisme dari system operasi yang mendukung proteksi untuk objek ini.

Proteksi dari memori
Dalam lingkukan multiprogramming, proteksi dari memori utama adalah esensial. Perhatikan tidak hanya keamanan, namun juga fungsi dari berbagai proses yang sedang aktif. Jika satu proses dapat secara acak dituliskan dalam daerah memori proses lainnya, maka proses berikutnya akan tidak dieksekusi dengan benar.
Pembagian daerah memori dari berbagai proses mudah diselesaikan dengan sebuah skema memori virtual. Segmentasi atau paging atau kombinasi keduanya, menyediakan alat yang efektif dari pengaturan memori utama. Jika menyelesaikan isolasi yang dibutuhkan maka system operasi harus memastikan bahwa masing masing segmen atau page diakses hanya oleh proses yang ditujukan. Ini mudah untuk diarahkan dengan menyebutkan bahwa tidak ada entri yang duplikat dalam page atau table segmen.
Jika sharing diperbolehkan, maka segmen yang sama atau page dapat muncul dalam satu atau lebih table. Tiap sharing ini paling mudah untuk diseleksaikan dalam system yang mendukung segmentasi atau kombinasi dari segmentasi dan paging. Dalam kasus ini, struktur segmen adalah visible untuk aplikasi, dan aplikasi dapat mendeklarasikan secara individual untuk di share atau tidak di share. Dalam lingkungan paging murni, menjadi lebih sulit untuk mendiskriminasikan antara dua tipe memori karena struktur memori transparan untuk aplikasi.
Sebagai contoh dari dukungan software disediakan proteksi memori yang terdapat dalam mesin keluarga IBM system 370, OS/390 berjalan berhubungan dengan masing masing page dalam memori utama 7 bit penyimpanan dari control kunci, yang dapat diset oleh system operasi. Dua dari bit mengindikasikan apakah page menempati ini yang telah direferensikan dan diubah; ini digunakan oleh algoritma penggantian page. Bit sisa digunakan untuk mekanisme proteksi; 4 bit kunci akses control dan sebuah proteksi bit fetch. Prosesor mereferensikan ke sebuah memori dan DMA I/O memori harus menggunakan sebauh kunci pemadanan untuk mendapatkan izin mengakses page itu. Bit proteksi fetch mengindikasikan apakah kunci control akses diterapkan untuk ke atau baca dan tulis. Dalam prosesor, terdapat sebuah program status word (PWS), yang mengandung control informasi yang berhubungan dengan proses yang proses mencoba untuk mengakses sebuah page atau untuk mengisi sebuah operasi DMA dalam sebuah page, kunci PSCW dibandingkan dengan kode akses. Sebuah operasi tulis dilakukan hanya jika kode sesuai. Jika bit fetch di set , maka kunci PSW harus memadankan kode akses untuk operasi baca.

Penyusupan
Satu dari dua ancaman yang paling sering dipublikasikan dalam keamanan adalah penyusupan (lainnya adalah virus), yang biasanya direferensikan sebagai hacker atau cracker. Dalam studi awal penyelundupan, Andersen mengidentifikasikan tiga kelas dari penyusupan
·      Penyamaran : Seorang individu yang tidak diberi otoritas untuk menggunakan computer dan yang memasuki control akses system untuk mendapatkan sebauh account user yang legitimasi.
·      Mesfeasor : Seorang user yang diberi legitimasi untuk mengakses data, program atau sumber, untuk akses yang demikian tidak diotorisasi atau diberi otorisasi untuk akses demikian namun menyalah gunakan privasinya
·      User Clandestine : Seorang individu yang merampas control supervisor atas system dan menggunakan control ini untuk menginvasi auditing dan control akses atau untuk meneruskan kolektif audit
Penyamaran sepertinya menjadi bagian lain; penyelundupan biasanya berada di dalam; dan user clandestine dapat menjadi bagian luar dan bagian dalam.
Penyusupan menyerang berkisar dari baik ke serius. Dalam bagian baik akhir dari skala terdapat banyak manusia yang hanya menginginkan untuk memperdalam internet dan melihat apakah yang terjadi di sana. Dala  bagian yang serius secara individual siapa yang mencoba untuk membaca data privasi, melakukan modifikasi yang tidak diotorisasi ke data atau merusak system.

Software Malicious
Mungkin tipe yang paling berbahaya untuk system computer dinyatakan dalam program yang mengeksploitasi kerentanan dalam system komputasi. Dalam konteks ini, kita memerhatikan dengan program aplikasi sebagaimana halnya dengan program utilitas, secara editor dan compiler. Istilah generikan untuk penyerangan demikian adalah software malicious atau malware. Malware merupakan software yang didesain untuk mengakibatkan kerusakan atau untuk menggunakan sampai seluruh sumber diri target computer. Sangat sering untuk dinyatakan dalam penyamaran dari software yang resmi. Dalam beberapa kasus, akan menebarkan dirinya ke dalam computer lainnya melalui email atau floppy disket yang terinfeksi.
Kita memulai bagian ini dengan kilasan dari spectrum penyerangan software. Sisa dari bagian ini ditunjukan untuk virus, pertama dengan melihat dalam keberadaan dan kemudian dalam pengukurannya.



Keamanan Windows 2000
Sebuah contoh yang baik dari konsep control akses yang telah kita bahas adalah fasilitas control akses windows 2000 (W2k) yang mengeksploitasi konsep berorientasi objek untuk menyediakan sebauh kemampuan dari control akses yang fleksibel.
W2K menyediakan fasilitas control akses seragam yang diterapkan untuk proses thread, files, semaphore, windows, dan objek lainnya. Control akses dibatasi oleh dua entitas: sebuah akses token yang diasosiasikan dengan masing masing proses dan sebuah descriptor keamanan yang diasosiasikan dengan masing masing objek untuk akses antarproses yang memungkinkan.
1.    Skema Control Akses
Ketika seorang user masuk ke sebuah system W2K, W2K menggunakan sebuah skema nama / password untuk mengautentifikasi user. Jika log on diterima, sebuah proses dibentuk untuk user dan sebuah akses diasosiasikan dengan proses objek tersebut. Akses token secara rinci dijelaskan kemudian, termasuk ID keamanan (SID), yang mana identifier oleh user ini dikenal untuk system dengan tujuan keamanan. Ketika sebuah tambahan proses yang diperluas oleh user pada awal proses, objek proses yang baru menerima warisan tanda akses yang sama. Akses token bertindak untuk dua tujuan :
a.    Tetap dari seluruh informasi keamanan bersama dengan akses validasi kecepatan. Ketika proses apa pun yang berhubungan dengan akses upaya user, subsistem keamanan dapat membuat penggunaan dari token yang dihubungkan dengan proses untuk menentukan privasi akses user.
b.    Memungkinkan untuk masing masing proses memodifikasi karakteristiknya dalam cara yang terbatas tanpa mempengaruhi lainnya yang sedang berjalan dalam kepentingan dari user lainnya
Hal signifikan utama dari nomor dua adalah privasi yang dapat diasosiasikan dengan seorang user. Akses token yang mengindikasikan pribadi seorang user didapat. Secara umum, token diawali dengan masing masing privasi dalam keadaan nonaktif. Selanjutnya , jika satu dari proses membutuhkannya untuk melakukan operasi privasi, proses dapat memungkinkan untuk privasi yang tepat dan mencoba untuk akses. Akan diminati untuk tetap dalam seluruh dari informasi keamanan untuk seorang user dalam satu system, karena dalam kasus memungkinkan sebuah privasi untuk satu proses memungkinannya untuk semua.
2.    Akses Token
a.    Security ID : Mengidentifikasi seorang user secara unik terhadap seluruh sesi dalam jaringan. Ini umumnya berhubungan dengan sebuah nama log on user.
b.    Group SID : Daftar kelompok pemakai yang menjadi anggota. Sebuah group yang merupakan sekumpulan user ID yang mengidentifikasikan sebagai sebuah grup yang bertujuan untuk control akses. Masing masing grup memiliki grup SID tunggal. Akses untuk sebuah obkel dapat didefinisikandari grup SID, individual SID< atau kombinasi.
c.    Privasi : Daftar dari system layanan security sensitive yang mana user dapat dipanggil. Sebuah contoh adalah pembentukan toke. Contoh lain adalah kumpulan dari backup privasi; user dengan privasi ini diperbolehkan untuk menggunakan sebuah file tool backup yang normalnya mereka tidak dapat dibaca. Kebanyakan user akan kita memiliki privasi
d.    Default ACL : Merupakan daftar inisial proteksi yang diterapkan untuk objek membuat user. User dapat dengan langsung ACL untuk setiap objek yang memiliki atau yang mana grup miliki.
3.    Pendeskripsian keamanan
a.    Flag : Mendefinisikan tipe penjelasan keamanan (security descriptor). Flag mengindikasikan apakah atau tidak SACL dan DACI yang hadir, apakah atau tidak mereka ditempatkan dalam objek dengan sebuah mekanisme default, apakah pointer dalam pendeskripsi menggunakan pengalamatan absolut atau relative. Penjelasan relative dibutuhkan untuk objek yang ditransmisikan melalui sebuah jaringan, seperti informasi yang ditransmisikan dalam RPC.
b.    Pemilik : Pemilik objek secara umum dapat melakukan aksi apa saja dalam penjelasan keamanan, pemilik dapat secara individual atau grup dari SID. Pemilik memiliki otoritas untuk mengubah isi dari DACL.
c.    System Access Control List (SACL) : menyatakan jenis apa dari operasi dalam objek yang seharusnya membangun pesan audit. Sebuah aplikasi harus memiliki privasi yang berhubungan dalam token akses untuk membaca atau menulis dari SACL dari objek mana saja. Ini untuk menghindari aplikasi yang tidak diberi otorisasi dari pembacaan SCAL (lebih lanjut pembelajaran tidak untuk menghindari pembangun audit) atau menuliskan mereka (untuk membangun banyak audit yang mengakibatkan sebuah operasi tertentu tidak diperhatikan).
d.    Discretionaru Access Control List (DACL) : menentukan user dan grup mana yang dapat mengakses objek untuk operasi tertentu. Berisi daftar entri akses control (ACE).
Ketika sebuah objek dibentuk, pembentukan proses dapat menyatan sebagai pemilik dari SID atau kelompok SID itu sendiri dalam akses token. Proses yang dibentuk tidak dapat dinyatakan sebagai pemilik yang tidak berada dalam akses token saat ini. Selanjutnya, setiap proses yang telah diberikan hak dapat melakukan mengubah pemilik dari sebuah objek, namun sekali lagi dengan pembatasan yang sama. Alas an untuk pembatasan adalah untuk menghindarkan seorang user menutupi jalurnya setelah mencoba beberapa aksi yang tidak otorisasi
Yang paling penting 16 bit dari penyamaran mengandung bit yang diperuntukan untuk seluruh tipe dari objek . Lima dari ini dinyatan sebagai tipe akses standar :
·      Sinkronisasi : Memberikan izin untuk sinkronisasi eksekusi dengan beberapa even yang dihubungkan dengan obje. Secara khusus, objek ini dapat digunakan dalam sebuah fungsi tunggu.
·      Write_owner : Memungkinkan program untuk memodifikasi pemilik dari objek. Ini sangat bermanfaat karena pemilik objek dapat selalu berubah dari proteksi dalam objek (Pemilik tidak dapat menolak akses write DAC)
·      Write_DAC : Memungkinkan aplikasi untuk memodifikasi DACL dan proteksi dalam objek.
·      Read_Control : memungkinkan aplikasi untuk meminta query pemilik dan fiel DACL dari penjelasan keamanan objek
·      Delete : Memungkinkan aplikasi untuk menghapus objek.

Sumber : Operating SystemInternal and Design (William Stallings edisi 6) bab 14 (Computer Security
Threats) dan bab 15 (Computer Security Techniques).

Virtual Memori

Sebenernya apasih fungsi virtual memori untuk sistem operasi ? yuk daripadi pusing kita jelaskan disini ..
jadi sistem operasi memindahkan potongan potongan yang akan di eksekusi ke dalam memori yang akan terjadi swap in dan swap out ... loh apa maksudnya ? ya itulah pendahaluannya..
secara garis besar virtual memori itu

  • lokasi yang terdapat di hardisk sebagai memori utama
  • sangat efektif untuk keperluan multiprograming karena programer akan merasa ukuran memori sangat besar
Apa yang dilakukan agar virtual memori dapat terbentuk ?
  • Komputer dilengkapi dengan perangkat keras yang dapat digunakan untuk menangani manajemen memori dengan metode paging atau segmentasi
  • Sistem operasi dapat menangani perpindahan page atau segment dari memori utama ke memori sekunder atau sebaliknya
Apa itu locality ? Program atau data yang akan dieksekusi biasanya terletak pada alamat memori berurutan
Apa itu Trashing ? Kondisi dimana selalu terjadi perpindahan potongan program dari memori ke harddisk dan sebaliknya sesaat sebelum potongan program tersebut dieksekusi
Apa itu Hash ? Fungsi hash itu fungsi yang akan memetakan suatu nilai ke lokasi tertentu di dalam sebuah tabel.

sekian :)

Penyebab Fragmentasi Eksternal dalam Partisi Dinamis

Penyebab Fragmentasi Eksternal dalam Partisi Dinamis ?

Fragmentasi eksternal terjadi apabila sisa ruang memori yang terjadi jika ukuran proses memori lebih kecil dari pada ruang memori yang disediakan (di bebaskan)

lalu apa solusi nya ?

solusinya adalah dilakukan nya compaction sehingga sisa sisa ruang memori terkumpul menjadi satu maka sisa ruang memori menjadi besar

Thursday, January 3, 2013

Manajemen Memori

Manajemen memori dilakukan dengan cara membagi bagi bagi memori untuk mengakomodasi banyak proses.
terdapat 5 requirement manajemen memori, antara lain : Relocation, Protection, Sharing, Logical Organization , dan physical organization.

Requirement manajemen memori pada :

  • Relocation : Programer tidak tahu di bagian mana program akan di taruh pada saat eksekusi , pada saat program dieksekusi , dimungkinkan program tersebut akan di swap ke disk dan kemudian diambil lagi dari disk untuk ditaruh di memori dengan lokasi yang berbeda dengan lokasi sebelumnya (terjadi relocation ). Relocation penting jika suatu program di load ke memori, maka alamat lokasi memori yang akan ditempati harus ditentukan. Alamat absolut pada program akan berubah ubah sebagai akibat adanya swapping dan compaction
  • Protection : Suatu proses tidak boleh mengakses lokasi memori proses yang lain tanpa izin dan lokasi program di memori tidak tentu maka alamat mutlak pada saat di compile tidak diketahui.
  • Sharing : Harus di mungkinkan suatu lokasi memori dapat diakses oleh lebih dari satu proses. Beberapa proses yang memerlukan data yang sama, maka tidak perlu setiap proses meng kopi data dari disk ke memori, cukup sebuah kopi saja.
  • Logical Organization : Main memory dikelompokan secara linear atau berdimensi satu yang berupa ruang alamat yang terdiri dari deretan byte atau work. Sebagian besar program dibentuk dalam sebuah modul maka penempatan di memori tidak linear dan diperlukan pengaturan secara lojik.
  • Physical Organization : Memory dikelompokan menjadi memori utama dan memori sekunder. diperlukan metode yang mengatur aliran data dari memori utama ke memori sekunder dan sebaliknya.
Beberapa teknik manajemen memori yang ada : 
  • Partisi (partisi tetap, partisi dinamis )
  • Paging sederhana
  • Segmentasi sederhana
  • Virtual memory (paging, segmentasi)

Partisi Tetap
terdapat dua model dalam partisi tetap yaitu  partisi berukuran sama dan partisi berukuran tidak sama
partisi berukuran sama :
  • setiap proses yang ukurannya lebih kecil atau sama dengan ukuran partisi dapat menempati partisi tersebut
  • jika semua partisi telah terisi, maka sistem operasi akan melakukan swap terhadap proses yang sudah tidak aktif
  • penggunaan memori tidak efisien, misal : bila ukuran partisi adalah 8MB , maka program berukuran 2MB akan menyisakan ruang memori sebesar 6MB
partisi berukuran tidak sama :
  • lebih baik dari partisi berukuran sama karena : penggunaan memori lebih efisien , tidak perlu overlay
Partisi Dinamis
jumlah partisi yang tidak tetap menggunakan variabel , ukuran partisi sama dengan ukuran proses yang akan menempatinya untuk pertama kali atau sesudah pemadatan (compaction) yang tidak akan terjadi fragmentasi internal

Paging Sederhana
paging sederhana dilakukan dengan cara :

  • membagi bagi memori menjadi bagian bagian kecil yang bersifat tetap dan ukurannya sama dan selanjutnya dinamakan frame
  • membagi bagi proses menjadi bagian bagian kecil yang ukurannya sama dengan bagian bagian memori yang selanjutnya dinamakan page
sistem operasi menggunakan page tabel untuk mencatat alokasi memori

Apa perbedaan partisi tetap dengan paging sederhana ? pada paging sederhana ukuran partisi lebih kecil, program boleh menempati lebih dari satu partisi, dan letak program dalam memori tidak boleh berurutan
dan Apa persamaan partisi tetap dengan paging sederhana ? alamat lojik sama sama merupakan nomor page ditambah offset, satu offset merupakan satu alamat

Apa itu Paging Sederhana ?
Program dan data dibagi-bagi dalam sejumlahsegment• Ukuran setiap segment boleh berbeda-beda• Panjang segment mempunyai batasan maksimum• Format alamat lojik terdiri dari 2 bagian yaitunomor segment dan offset• Segment table terdiri dari nomor segment,panjang segment, dan awal alamat fisik• Segmentasi sederhana identik dengan partisidinamis, karena ukuran segment berbeda-beda