MAKALAH PENGERTIAN KOMPUTER & TI B DISUSUN OLEH : 1EB10 Fakultas Ekonomi Program Akuntansi 2016 UNIVERSITAS GUNADARMA 1 Daftar isi : KelompoK 1…………………………………………….3 – 16 KelompoK 2…………………………………………….17 – 19 KelompoK 3…………………………………………….20 – 40 KelompoK 4…………………………………………….41 – 61 KelompoK 5…………………………………………….62 – 64 KelompoK 6…………………………………………….65 – 73 KelompoK 7…………………………………………….74 – 80 KelompoK 8…………………………………………….81 – 101 KelompoK 9…………………………………………….82 - 113 2 KELOMPOK 1 1. LINUX PENGERTIAN LINUX Linux adalah software sistem operasi open source yang gratis untuk disebarluaskan di bawah lisensi GNU. Linux merupakan turunan dari unix dan dapat bekerja pada berbagai macam perangkat keras koputer mulai dari inter x86 sampai dengan RISC. Dengan lisensi GNU (Gnu Not Unix) Anda dapat memperoleh program, lengkap dengan kode sumbernya (source code). Tidak hanya itu, Anda diberikan hak untuk mengkopi sebanyak Anda mau, atau bahkan mengubah kode sumbernya.Dan itu semua legal dibawah lisensi. Meskipun gratis, lisensi GNU memperbolehkan pihak yang ingin menarik biaya untuk penggandaan maupun pengiriman program. SEJARAH LINUX Linux pada awalnya dibuat oleh seorang mahasiswa Finlandia yang bernama Linus Torvalds. Dulunya Linux merupakan proyek hobi yang diinspirasikan dari Minix, yaitu sistem UNIX kecil yang dikembangkan oleh Andrew Tanenbaum. Linux versi 0.01 dikerjakan sekitar bulan Agustus 1991. Kemudian pada tanggal 5 Oktober 1991, Linus mengumumkan versi resmi Linux, yaitu versi 0.02 yang hanya dapat menjalankan shell bash (GNU Bourne Again Shell) dan gcc (GNU C Compiler). Saat ini Linux adalah sistem UNIX yang sangat lengkap, bisa digunakan untuk jaringan, pengembangan software dan bahkan untuk pekerjaan sehari-hari. Linux sekarang merupakan alternatif sistem operasi yang jauh lebih murah jika dibandingkan dengan sistem operasi komersial (misalnya Windows 9.x/NT/2000/ME). Linux mempunyai perkembangan yang sangat cepat. Hal ini dapat dimungkinkan karena Linux dikembangkan oleh beragam kelompok orang. Keragaman ini termasuk tingkat pengetahuan, pengalaman serta geografis. Agar kelompok ini dapat berkomunikasi dengan cepat dan efisien, internet menjadi pilihan yang sangat tepat. 3 KELEBIHAN DAN KEKURANGAN LINUX A. Kelebihan Bersifat open source, bebas dan terbuka. sehingga tidak perlu biaya untuk mendapatkannya. LISENSI FREE dan boleh di utak atik semaunya. Linux sekarang sudah mudah di operasikan. kalo dulu pengguna linux identik dengan para hacker, tapi sekarang orang awam pun sudah banyak yang menggunakannya. Hampir semua aplikasi yang biasa dijalankan di windows, sudah ada aplikasi linuxnya yang dikembangkan oleh komunitas linux atau bisa juga menggunakan software emulator. Memiliki pengamanan yang lebih unggul karena di desain multiuser sehingga apabila virus menyerang user tertentu, akan sangat sulit menyebar ke user lainnya. Cocok untuk PC yang memiliki spesifikasi minimum karena linux membutuhkan resource yang lebih kecil dibandingkan Windows. Linux dapat berjalan di dua mode. Jarang crash atau nge-hang yang mengharuskan kita untuk merestart komputer karena linux lebih stabil. Memiliki komunitas di berbagai penjuru dunia. Terdapat beragam pilihan seperti Ubuntu, Fedora, Debian, Centos, RedHat, Opensuse, Mandriva, dan sebagainya. B. Kekurangan Banyak user yang belum terbiasa menggunakan linux. Dukungan hardware dari vendor-vendor tertentu yang tidak terlalu baik pada linux. Proses instalasinya tidak semudah windows. Aplikasi di linux belum seampuh aplikasi windows. Bagi administrator sistem yang belum terbiasa dengan Unix-like, maka mau gak mau harus belajar dulu. Struktur direktori dan hak akses yang membingungkan bagi user yang terbiasa menggunakan windows. 4 2. UNIX PENGERTIAN SISTEM OPERASI UNIX UNIX adalah sistem operasi yang digunakan sebagai sistem operasi baku pada berbagai jenis komputer, terutama komputer mini baik sebagai workstation atau server (sistem yang menyediakan pelayanan pada jaringan). Karena dengan unix sebagai server, berpindah kerja dari satu jenis komputer ke komputer lainnya menjadi mudah. Unix didesain sebagai sistem operasi yang portable, multi-tasking, multi-user, sistem berkas hierarkis dan utilitas. Keuntungan yang diperoleh dengan menggunakan sistem UNIX yang terkoneksi kesebuah sistem jaringan ialah: A. Berbagi sumber daya komputer Sumber daya komputer yang dibagi bersama mencakup : CPU dan alokasi memori, CPU / memori yang sedang diam (tidak terpakai) dapat digunakan oleh sistem lain yang sedang sibuk. Penyimpanan data / disk, Disk yang semula tersebar di semua komputer dengan utilitas yang sama kini dapat digabungkan menjadi unit disk yang besar dan dibagi bersama. Pencetak/ printer dan program/ utilitas Pencetakan/ printing dapat diklasifikasikan berdasarkan prioritas (segera, tidak segera) ataupun mutu cetak (laser printer, LQ printer, line printer). B. Peningkatan kehandalan. Komputer dalam sebuah jaringan lebih handal dibandingkan komputer yang berdiri sendiri. Jika ada komputer yang tidak berfungsi, peranannya digantikan oleh komputer yang lain. Sistem dapat diatur / dikendalikan hingga pemakai tidak mengetahui bahwa komputer yang biasa digunakan sedang digantikan oleh komputer lain. Sistem penyimpanan disk dapat diatur derajat keamanannya. Seperti halnya CPU, sistem disk yang tidak berfungsi digantikan oleh sistem yang lain tanpa diketahui oleh pemakai. C. Penghematan. Peningkatan kehandalan serta pemakaian sumberdaya secara bersama menghasilkan penghematan biaya operasi. Harga 10 komputer 10 MIPS jauh lebih murah dibandingkan 1 komputer 100 MIPS. Namun, kemampuan kesepuluh komputer 10 MIPS tersebut dapat hampir menyamai kemampuan komputer 100 5 MIPS jika dilakukan utilisasi yang tinggi. Penghematan lain didapatkan dari penggunaan printer server dan file server (1 sistem data atau disk untuk banyak komputer). SEJARAH Unix adalah sebuah sistem operasi komputer yang dikembangkan oleh AT&T Bell Labs pada tahun 1960 dan 1970-an. Pada tahun 1960, Massachusetts Institute of Technology, AT&T Bell Labs, and General Electric bekerja dalam sebuah sistem operasi eksprimental yang disebut Multics (Multiplexed Information and Computing Service). Di Indonesia Unix digunakan sebagai Server aplikasi, produk yang beredar di pasaran antara lain IBM AIX, HP UX, Sun Solaris. Masing-masing produk ini umumnya memiliki pasar tersendiri seperti Sun Solaris yang digunakan pada operator telekomunikasi selular, HP UX pada manufaktur dan distribusi. Fungsi Unix sebagai workstation kurang populer mengingat harganya yang mahal. JENIS-JENIS UNIX UNIX adalah sebuah sistem operasi yang dikembangkan oleh banyak pihak. Setiap pihak yang mengembangkan UNIX, menambahkan teknologi miliknya ke dalam UNIX, yang meskipun hal itu di luar standar, mampu menjadikan sistem operasi UNIX lebih kuat atau lebih andal. Jenis - jenis Unix antara lain : 1. A/UX 2. Domain/X 3. Darwin 4. CTIX 5. Distrix 6. UniCOS 7. DG/UX 8. Digital UNIX 9. Ultrix 10. CLIX 6 JENSI JARINGAN BERBASIS UNIX A. UUCP Unix to Unix CoPy UUCP merupakan jenis jaringan pertama kali muncul pada sistem UNIX. Pada awalnya, UUCP dikembangkan dengan hanya memanfaatkan saluran serial atau terminal dari sebuah komputer. Kini, UUCP bekerja pada setiap versi UNIX bahkan sistem non-UNIX seperti VMS dan DOS. Layanan yang disediakan UUCP diantaranya: Alih berkas (file transfer) dan surat elektronis (e-mail) Penyampaian berkas melalui UUCP dilakukan secara beranting. Jika seseorang di Indonesia hendak mengirim surat elektronis kepada rekannya di Amerika, cukup disimpan/ dikerjakan dikomputer secara lokal. Komputer akan secara otomatis menyampaikan surat tersebut ke sebuah simpul di Amerika Serikat yaitu UUNET (Arlington, Va.). Secara beranting, surat tersebut akan diteruskan kesimpul berikut hingga sampai tujuan. Terminal jarak jauh (remote terminal) dan eksekusi perintah jarak jauh (remote execution) Jaringan UUCP secera internasional menghubungkan lebih dari seratus ribu komputer. Secara total, berjuta-juta byte beralih setiap harinya antara komputer sedunia. Sebagian besar peralihan tersebut terjadi di Amerika Serikat karena murahnya biaya komunikasi. Sebagian besar data berupa USENET NEWS, forum diskusi elektronis terbesar didunia. B. TCP atau IP (Transmission Control Protocol / Internet Protokol) TCP merupakan protokol yang mengatur transportasi data antar sistem. TCP dapat diumpamakan sebagai "sekretaris perusahaan" yang mengelola pengiriman berkas antar alamat. TCP biasanya memanfaatkan jasa IP sebagai media pengantar. Seperti halnya sekretaris, TCP bertanggung jawab atas kehilangan pengiriman paket berikut tindak lanjutnya (mengirim ulang paket). TCP dimanfaatkan oleh aplikasi-aplikasi lain sebagai pengiriman data yang handal yaitu mencakup: Login jarak jauh: TELNET (umum) dab rlogin (khusus UNIX) Eksekusi jarak jauh: rsh (khusus UNIX) Alih berkas : FTP (File Transfer Protocol) Surat elektronis: SMTP (Simple Mail Transfer Protocol) Program aplikasi lokal (buatan sendiri) dapat memanfaatkan fasilitas TCP/IP untuk saling berkomunikasi. 7 C. NFS (Network File System) dan RPC (Remote Procedure Call) NFS pada mulanya dikembangkan oleh Sun Microsystem (1984). Kini, NFS yang menggunakan RPC diterapkan pada lebih dari 100 jenis komputer dan diperkirakan dioperasikan pada lebih dari 100.000 komputer. NFS memungkinkan sebuah kompuer mengakses sistem berkas komputer lain, dan memperlakukan sistem berkas tersebut seperti bagiannya sendiri. D. NCS -- Network Computing System Beban antara CPU dalam jaringan biasanya tidak sama pada saat yang sama. Beberapa penelitian telah mengarah pada pemanfaatan CPU yang sedang diam (idle). Hingga kini, setiap pembuat komputer masih mengembangkan protokolnya secara terpisah serta tidak cocok satu dengan lainnya. Namun, usaha menuju pembakuan sedang dirintis dan diharapkan akan disepakati dalam kurun waktu yang tidak lama lagi. 3. Disk operating system (DOS) Penjelasan tentang DOS Disk Operating System atau DOS adalah suatu sistem operasi komputer yang memakai interface command – line dan sering digunakan oleh pengguna komputer pada tahun 1980-an. DOS merupakan suatu sistem operasi yang dipakai untuk mengelola semua sumber daya yang ada pada komputer. Para penggunanya berinteraksi dengan DOS, dengan cara memberikan perintahperintah menggunkan keyboard komputer. Penggunanya harus mengetikan perintah dengan keyboard, lalu perintah yang diberikan akan diterjemaahkan oleh sistem DOS sesuai dengan fungsi perintah tersebut. Perintah yang ada pada DOS misalnya seperti nama file program yang ber-extension atau berakhiran .bat, .exe, dan lain-lain. Selain mengetikan nama-nama file dari program perintah, DOS juga biasanya digabungkan dengan berbagai macam prameter yang dimana penulisan prameter tersebut setelah nama file program. Jadi dapat disimpulkan bawha DOS merupakan suatu sisitem operasi yang berguna untuk mengelola sistem komputer. Beberapa fungsi DOS Adapun beberapa fungsi dari DOS yang diantaranya adalah sebagai berikut ini: 8 a. b. c. d. Untuk mengendalikan atau men-organisasikan kegiatan komputer. Untuk mengatur proses-proses input dan output data pada komputer. Untuk mengatur memori komputer. Untuk management file dan juga directory. Dan masih banyak lagi fungsi dari DOS yang masih digunakan sampai saat ini, salah satunya dalam menyelesaikan beberapa troubleshooting pada perangkat keras komputer. Kelas-kelas DOS Adapun keluarga dari DOS, yang diantaranya terbagi menjadi beberapa macam kelas: a. Microsoft Disk Operating System atau di singkat dengan MS-DOS, yang diantaranya Compaq DOS, Tandy DOS, Quick and Dirty Operating System (Q-DOS) dan lain-lain yang termasuk dalam sistem operasi MS-DOS, dijual kepada para pembuat sistem komputer IBM PC/Compatible. b. IBM PC-DOS atau International Business Machine Personal Computer Disk Operating System, meskipun masih buatan Microsoft, tapi telah diubah sedikit supaya bisa digunakan oleh komputer buatan IBM. c. Digital Research Disk Operating System atau disingkat dengan DR-DOS, dibuat oleh yang membuat sistem operasi CP/M yaitu Gary Kildall. d. Novell Personal Netware, yaitu versi DR-DOS (Digital Research Disk Operating System) yang dijual kepada Novell, sebab perusahaan yang menaungi CP/M gulung tikar atau mengalami kebangkrutan. Jadi Novell men-akuisisi Digital Research Incorporated. e. Caldera DOS, yaitu versi dari Novell Personal Netwere yang dijual kepada Caldera Corporation. f. FreeDOS, dikembangkan oleh komunitas open source. Versi dari DOS ini dibangun berasal dari sisa-sisa perkembangan Caldera DOS. 4. Microsoft Windows SISTEM OPERASI MICROSOFT WINDOWS Pengertian Sistem Operasi Windows adalah Sistem Operasi yang dikembangkan oleh Microsoft Corporation yang menggunakan antarmuka dengan berbasikan GUI (Graphical User Interface) atau tampilan antarmuka bergrafis.pada umum nya system oeprasi ini banyak sekali di gunakan oleh masyarakat, dari kalangan menengah ke atas hingga ke bawah. Sistem operasi Windows telah berevolusi dari MS-DOS, sebuah sistem operasi yang berbasis modus teks dan command-line. Windows versi pertama, Windows 9 Graphic Environment 1.0 pertama kali diperkenalkan pada 10 November 1983, tetapi baru keluar pasar pada bulan November tahun 1985 yang dibuat untuk memenuhi kebutuhan komputer dengan tampilan bergambar. Windows 1.0 merupakan perangkat lunak 16-bit tambahan (bukan merupakan sistem operasi) yang berjalan di atas MS-DOS (dan beberapa varian dari MS-DOS), sehingga ia tidak akan dapat berjalan tanpa adanya sistem operasi DOS. Versi 2.x, versi 3.x juga sama. Beberapa versi terakhir dari Windows (dimulai dari versi 4.0 dan Windows NT 3.1) merupakan sistem operasi mandiri yang tidak lagi bergantung kepada sistem operasi MSDOS. Berikut sejarah windows dari versi awal hingga saat ini : 1. Microsoft Windows 1 2. Microsoft Windows 2 3. Microsoft Windows 3 4. Microsoft Windows 3.1 5. Microsoft Windows 3.11 Workgroup 6. Microsoft Windows 95 7. Microsoft Windows 98 8. Microsoft Windows 2000 9. Microsoft Windows Me (Millenium) 10. Microsoft Windows NT (Next Technology) 11. Microsoft Windows XP (Experience) 12. Windows Server 2003 13. Windows Fundamentals for Legacy PCs sebagai platform thin client 14. Windows Vista 15. Windows Home Server 16. Windows Server 2008 17. Windows 7 18. Windows 8 Pengertian Sistem Operasi & Sistem Operasi Windows Pengertian Sistem Operasi, Operating system (OS) atau yang sering di sebut sistem operasi adalah sekumpulan perintah dasar yang berperan untuk menjalankan dan mengoperasikan komputer . Pengertian Sistem Operasi Windows, Microsoft Windows atau lebih dikenal dengan sebutan Windows adalah keluarga sistem operasi komputer pribadi yang 10 dikembangkan oleh Microsoft yang menggunakan antarmuka dengan pengguna berbasis grafik (graphical user interface). Sistem operasi Windows telah berevolusi dari MS-DOS, sebuah sistem operasi yang berbasis modus teks dan command-line. Windows versi pertama, Windows Graphic Environment 1.0 pertama kali diperkenalkan pada 10 November 1983, tetapi baru keluar pasar pada bulan November tahun 1985 yang dibuat untuk memenuhi kebutuhan komputer dengan tampilan bergambar. Windows 1.0 merupakan perangkat lunak 16-bit tambahan (bukan merupakan sistem operasi) yang berjalan di atas MS-DOS (dan beberapa varian dari MS-DOS), sehingga ia tidak akan dapat berjalan tanpa adanya sistem operasi DOS. Versi 2.x, versi 3.x juga sama. Beberapa versi terakhir dari Windows (dimulai dari versi 4.0 dan Windows NT 3.1) merupakan sistem operasi mandiri yang tidak lagi bergantung kepada sistem operasi MS-DOS. Microsoft Windows kemudian bisa berkembang dan dapat menguasai penggunaan sistem operasi hingga mencapai 90%. Awal perkembangan windows Microsoft Windows atau lebih dikenal dengan sebutan Windows adalah keluarga sistem operasi komputer pribadi yang dikembangkan oleh Microsoft yang menggunakan antarmuka dengan pengguna berbasis grafik (graphical user interface). Sistem operasi Windows telah berevolusi dari MS-DOS, sebuah sistem operasi yang berbasis modus teks dan command-line. Windows versi pertama, Windows Graphic Environment 1.0 pertama kali diperkenalkan pada 10 November 1983, tetapi baru keluar pasar pada bulan November tahun 1985 yang dibuat untuk memenuhi kebutuhan komputer dengan tampilan bergambar. Windows 1.0 merupakan perangkat lunak 16-bit tambahan (bukan merupakan sistem operasi) yang berjalan di atas MS-DOS (dan beberapa varian dari MS-DOS), sehingga ia tidak akan dapat berjalan tanpa adanya sistem operasi DOS. Versi 2.x, versi 3.x juga sama. Beberapa versi terakhir dari Windows (dimulai dari versi 4.0 dan Windows NT 3.1) merupakan sistem operasi mandiri yang tidak lagi bergantung kepada sistem operasi MS-DOS. Microsoft Windows kemudian bisa berkembang dan dapat menguasai penggunaan sistem operasi hingga mencapai 90%. 5. MACINTHOSH Pengertian mac os Macinthosh Saya kutipkan dari wikipedia Mac OS adalah singkatan dari Macintosh Operating System. Mac OS adalah sistem operasi komputer yang dibuat oleh Apple Computer khusus untuk komputer Macintosh dan tidak kompatibel dengan PC 11 berbasis IBM. Diperkenalkan pada tahun 1984, Mac OS sejak tahun 2002 telah memiliki kompatibilitas dengan arsitektur PowerPC maupun x86. Apakah anda tau Mac OS X adalah versi terbaru dari sistem operasi Mac OS untuk komputer Macintosh. Sistem operasi ini pertama kali diluncurkan pada tahun 2001. Karakter “X” adalah nomor Romawi yang berarti sepuluh, di mana versi ini adalah penerus dari sistem operasi yang digunakan sebelumnya seperti Mac OS 8Mac OS 9. Beberapa orang membuat kesalahan dengn membacanya sebagai huruf “X” yang terdengar seperti “eks”. Salah satu alasan mengapa mereka mengartikan demikian karena tradisi untuk memberikan nama sistem operasi yang berbasis Unix dengan akhiran “x” contoh misalnya Minix, Ultrix, Xenix AIX, IRIX, Linux. Mac OS X pertama kali di luncurkan tahun 2001-2006, Sayangnya Mac OS X hanya dapat dijalankan menggunakan komputer Mac berbasis prosesor PowerPC. Mulai 2006 Mac OS X Tiger dan Leopard dapat dijalankan menggunakan komputer dengan basis prosesor Intel dan PowerPC. Kemudian Apple meluncurkan Snow Leopard yang merupakan versi pertama Mac OS X yang hanya dapat dijalankan di posesor Intel Macs. Semenjak dikeluarkannya Mac OS X 10.7 “Lion”, OS X menghapus dukungan terhadap prosesor Intel 32-bit, sampai versi terbarunya sekarang, Mac OS X hanya dapat dijalankan pada prosesor 64-bit Intel. Mac OS X Server juga dirilis pada tahun 2001. Pada dasarnya versi Server ini mirip dengan versi standarnya, dengan perbedaan bahwa versi Serverworkgroup dalam komputer berskala besar. Contoh fitur tambahan yang tersedia untuk versi ini adalah piranti lunak untuk menjalankan fungsi-fungsi seperti SMTP, SMB, LDAP dan DNS. Selain itu cara melisensinya juga berbeda. mencakup piranti lunak untuk keperluan manajemen dan administrasi Mac OS X adalah sistem operasi yang menggunakan kernel BSD sehingga beberapa kalangan mengatakan bahwa Mac OS X termasuk dalam keluarga Unix. Salah satu keunggulan mac os macintosh adalah adalah keindahan tampilannya sehingga menjadikannya panutan bagi pengembang desktop lain. Rilis terakhir Mac OS diluncurkan 30 September 2015 dengan kode “El Capitan” dengan versi 10.11. Tahapan-tahapan OS X: Referensi artikel Wikipedia. 12 Kelebihan macintosh ( Mac OS ) sistem operasi macintosh sistem operasi macintosh credit Pixabay Berikut adalah kelebihan mac os macintosh di banding windowsnya Microsoft : a. Mac Os Lebih stabil karena menggunakan UNIX b. Walaupun beroperasi dengan menggunakan mac os namun komputer mac os dapat mengenali file yang di format dengan windows os c. Mac os mempunyai tampilan yang sangat menawan sehingga cocok untuk para desainer grafis d. Jika anda membuat dokumen di Macintosh maka dokumen anda bisa di baca di produk apple yang lain seperti iphone dan mac books e. Mac os menggunakan kode open sourse sehingga lebih tahan dari hacker f. Mac os lebih tahan terhdap serangan virus di banding windows sehingga akan menjadi pilihan utama para Pebisnis Kekurangan Mac OS Macintosh Setelah di atas saya memberikan anda kelebihan dari mac os macintos maka di bawah ini akan saya ulas beberapa kekurangan dari Mac os. Setiap produk pasti ada kekurangannya begitu juga dengan produk dari macintosh ini. a. Harga Komputer atau laptop dari macintosh sangat mahan untuk orang kebanyakan.ini juga berlaku untuk produk produk mac yang lain seperti iphone 7 b. Mac os tidak cocok untuk main game. c. Mac os hanya dapat di operasikan dengan sistem mac os bukan dengan sistem yang lain. d. Mac os untuk hardwarenya mahal. 6. OS/2 Pengertian OS 2(SISTEM OPERASI) OS / 2 adalah komputer sistem operasi, pada awalnya dibuat oleh Microsoft dan IBM, maka kemudian dikembangkan oleh IBM secara eksklusif. Nama singkatan “Sistem Operasi / 2,” karena diperkenalkan sebagai bagian dari generasi yang sama mengubah rilis sebagai IBM’s “Sistem Personal / 2 (PS / 2)” baris dari generasi kedua komputer pribadi.OS / 2 tidak lagi dipasarkan oleh IBM, dan mendukung 13 standar untuk IBM OS / 2 telah dihentikan pada tanggal 31 Desember 2006. [1] Saat ini, Serenity Systems menjual OS / 2 di bawah nama merek eComStation. OS / 2 ini dimaksudkan sebagai modus dilindungi pengganti PC-DOS. Keduanya, dasar sistem panggilan adalah model setelah MS-DOS panggilan; bahkan mereka mulai dengan nama “Dos” dan memungkinkan untuk membuat “Keluarga Mode” aplikasi: teks modus aplikasi yang dapat bekerja pada kedua sistem. [2] Karena ini warisan , OS / 2 adalah seperti di Windows banyak cara, tetapi juga saham persamaan dengan Unix dan Xenix. IBM membuat kesepakatan dengan perwira untuk lisensi teknologi yang Amiga [3] untuk OS / 2 2.0 dan di atas, dan OS / 2 masih memiliki beberapa Amiga GUI kode Kerja di Shell sebagai akibat serta pihak ketiga kode tidak ditulis oleh IBM. [ 4] OS / 2 juga diingat untuk menjadi salah satu sistem operasi utama untuk memiliki grup advokasi. Tim OS / 2 adalah akar rumput, ad-hoc organisasi relawan, yang dipromosikan dan didukung dengan sistem operasi dan aplikasi yang dirancang untuk itu. 7. Palm OS Palm OS (dikenal juga sebagai Garnet OS) adalah suatu sistem operasi mobile yang awalnya dikembangkan oleh Palm, Inc untuk perankat PDA pada tahun 1996. Perusahaan ini sendiri didirikan pada tahun 1992 dan bermarkas di Sunnyvale, California, Amerika Serikat. Palm OS dirancang untuk perangkat yang ease of use dengan user interface touchscreen berbasis grafis. Didalamnya telah disediakan suite aplikasi dasar untuk manajemen informasi pribadi. Beberapa tahun kemudian platform diperluas sehingga dapat mendukung smartphone dan PDA phone. 14 Setelah membeli Palm merek dagang Palm oleh ACCESS yang kemudian mengganti namanya menjadi Garnet OS. Pada tahun 2007, ACCESS memperkenalkan penerus ke Garnet OS, dengan nama Access Linux Platform pada tahun 2009 lalu. Kelebihan PalmOS dibandingkan dengan sistem operasi lainnya adalah Palm memiliki kebutuhan sistem yang sedikit dan cepat sehingga tidak dibutuhkan perangkat PDA yang canggih dan mahal, dan tidak memerlukan banyak memory untuk dapat menjalankannya dengan baik. Sedangkan kelemahan Palm OS yaitu tidak memiliki media penyimpanan eksternal/tambahan, walaupun bisa diisi sebuah program, Software maupun Aplikasi tetapi tidak bisa di instal dengan kapasitas yang banyak karena hanya keterbatasan memori. Selain itu , perusahaan yang mengembangkan Palm telah dihentikan maka kemungkinan perkembangan program Palm tidak akan ada lagi dan development yang ada sekarang mungkin hanya berupa support untuk produk produk lama Palm Palm OS diluncurkan pertama kali pada tahun 1996 yang merupakan sebuah sistem operasi untuk perangkat digital yang dikembangkan oleh PalmSource Inc, ditujukan untuk berbagai merk PDA (Personal Data Assistant). Palm OS dirancang agar mudah digunakan dan memiliki cara kerja mirip dengan Microsoft Windows. Dalam sebuah PDA, OS Palm dipaketkan dengan address book, jam, catatan, menu sinkronisasi (sync), viewer dan aplikasi keamanan. Palm adalah pesaing utama dari sistem operasi Windows Mobile di awal tahun 2000-an lalu. Palm juga merupakan pelopor sistem operasi yang mutlak digunakan oleh sebuah ponsel pintar. Sayangnya ketenaran Palm belakangan kian turun begitu kehadiran para pesaingnya yang kian mengganas. Keunggulan OS Palm adalah tidak memerlukan banyak memory untuk dapat menjalankannya dengan baik. Dengan kapasitas sebesar 16 MB misalnya sudah sangat lebih dari cukup untuk menyuntikkan berbagai fungsi aplikasi tambahan. Terakhir kabarnya Palm bakalan merilis ponsel terkini mereka yang disebut Palm Pre. Ponsel yang kabarnya memiliki keunggulan yang digadang-gadangi sebagai iPhone killer. System Operasi Palm yang dimulai pada tahun 1996 sebenarnya sistem operasi ini bisa saja disebut sebagai perintis OS pada sebuah handset untuk PDA maupun Smartphone, hal ini dikarenakan pesatnya perkembangan produk yang menggunakan Palm dan juga banyaknya jumlah pihak ketiga yang membuat program untuk Palm, hingga sekarang telah ada ribuan program untuk perangkat elektronik yang berbasis Palm. 15 Palm OS di desain untuk tepat pada devais ukuran telapak tangan dari ukuran tertentu dengan ukuran layar tertentu pula. Palm OS menggunakan multitasking, tetapi hanya satu task untuk setiap aplikasi. Pengguna menggunakan satu aplikasi pada waktu tertentu, satu program apikasi harus selesai sebelum yang berikutnya dapat dipilih. Pembatasan ini membuat sistem operasi mendedikasikan penuh perhatian pada aplikasi yang terbuka. Space yand dibutuhkan oleh sistem untuk setiap aplikasi yang berjalan adalah bersifat dinamis, reusable random access memory (RAM). Aplikasi dan database yang berhubungan disimpan dalam tempat penyimpanan permanen, tetapi tempat penyimpanan permanen itu adalah RAM (bukan hard disk). Palm OS membagi sebuah aplikasi menjadi code yang dapat dijalankan dan tipe elemen data yang berbeda, seperti elemen antar muka (user interface) dan icons. Elemen data dapat diubah dengan mudah tanpa perlu menulis ulang code. 16 KELOMPOK 2 Tujuan: Mahasiswa memahami dan menguasai teori terkait; memberikan pemahaman model user interface pada sistem operasi Membahas tentang: 1. Konsep user interface 2. Jenis user interface dalam menjalankan perintah sistem operasi: text, dan graphical user interface 3. Lingkungan sistem window Pengertian User Interface User Interface adalah cara program dan user berkomunikasi. Istilah lainnya adalah HCI (Human Computer Interaction/Interface). HCI adalah semua aspek dari interaksi pengguna dan komputer, tidak hanya hardware. Semua yang terlihat di layar, membaca dalam dokumentasi dan dimanipulasi dengan keyboard/mouse merupakan bagian dari user interface. Fungsi User Interface User Interface berfungsi untuk menghubungkan atau penerjemah informasi antara pengguna dengan sistem operasi, sehingga komputer dapat digunakan. User interface dari sisi software bisa berbentuk Graphical User Interface (GUI) atau Command Line Interface(CLI), sedangkan dari sisi hardware bisa berbentuk Apple Desktop Bus (ADB), USB, dan Fireware(merek dagang apple untuk standar kabel data antar-muka berseri IEEE1394) 1. Konsep User Interface Mengonsep user interface secara benar tidaklah mudah. Terdapat begitu banyak aspek yang perlu diperhatikan. User Interface akan mengacu pada beragam aplikasi teknologi, mulai dari electronic display, software aplikasi computer, aplikasi web, aplikasi mobile, hingga aplikasi kioks information public. Tehnik antar muka /interface Terdapat tiga teknik antar muka / inter face: Linguistic styles Key modal styles Direct manipulation styles 17 LINGUISTIC STYLES Linguistic Styles adalah penyampaian ‘aksi’ melalui bahasa yang dimengerti oleh komputer. Ciri tekniknya antara lain: Masukan aksi melalui papan ketik alphabet yang ditulis atau diketik Bahasa yang dimengerti oleh komputer merupakan bagian kecil dari bahasa manusia Adanya aturan penulisan (syntax) dan semantic untuk menyatakan perintah KEY MODAL STYLES Key Modals Styles adalah penyampaian aksi melalui penekanan tomboltombol yang di program sebelumnya untuk menjalankan fungsi-fungsi. Ciri tekniknya antara lain : Masukan aksi melalui tombol fungsi atau tombol alphabet Instruksi langkah demi langkah Digunakan dalam sistem berjalan DIRECT MANIPULATION STYLES Direct Manipulation Styles adalah penyampaian perintah melalui manipulasi objek tertentu. Ciri tekniknya antara lain: Ditampilkannya objek untuk interaksi pengguna Ditampilkannya petunjuk memanipulasi objek Perintah diterapkan langsung pada objek Respon seketika pada fungsi objek 2. Jenis-jenis User Interface Ada dua jenis user interface, yaitu: o Command Line Interface (CLI) o Graphical User Interface (GUI) Command Line Interface (CLI) : CLI (Command Line Interface) adalah tipe antarmuka dimana pengguna berinteraksi dengan sistem operasi melalui text terminal. CLI adalah sebuah bentuk antarmuka antara sistem operasi dan pemakai, dimana pemakai mengetikkan perintah-perintah dengan menggunakan perintah dalam bentuk teks dan sebuah metode untuk memasukinya. Pengguna CLI biasanya adalah administrator sistem berbasis sistem operasi LINUX. Setiap sistem operasi memberi nama CLI- nya berbeda-beda. Unix member nama CLInya sebagai bash, ash, ksh,dsb. Ms-Dos memberi nama CLI-nya command.com atau 18 command prompt. Sedangkan Windows Vista, Microsoft menamakannya Powershell. Pengguna Linux mengenal CLI pada Linux sebagai Terminal, sedangkan pada Apple atau machintosh namanya adalah commandshell. Graphical User Interface (GUI) GUI adalah tipe antarmuka yang digunakan oleh pengguna untuk berinteraksi dengan sistem operasi melalui gambar-gambar grafik, kon, dan menggunakan perangkat penunjuk (pointing device) seperti mouse atau track ball. Penganut GUI biasanya adalah mereka yang sudah terbiasa dengan sistem operasi Windows. Bagi mereka, GUI adalah harga mati yang tidak bisa ditawar lagi. Sama seperti CL, tiap-tiap sistem operasi memiliki nama tersendiri untuk komponen GUInya. Pada Apple Mac OS X, GUI-nya disebut Aqua. Microsoft memberi nama GUI pada Windows XP sebagai Lunar dan GUI Windows Vista sebagai Aero. Pada Linux, ada dua pengembangan utama desktop environment, yang masing-masing menghasilkan roduk KDE (K Desktop Environment) dan GNOME. 3. Lingkungan Sistem Window Sistem operasi Windows merupakan pengembangan dari MS-DOS, sebuah sistem operasi berbasis modul teks dan command-line atau CLI (Command Line Interface). MS-DOS yang menjadi awal kesuksesan Microsoft berasal dari Q-DOS (Quick and Dirty Operating System) yang ditulis perusahaan pembuatan komputer Seattle Computer Products (SCP) dan dikepalai oleh Tim Paterson pada tahun 1980 dan dirancang untuk prosesor intel 8086 Pada November 1985 Microsoft memperkenalkan MS-Windows, sistem operasi yang menyediakan lingkungan berbasis grafis (Graphical User Interface (GUI)) dan kemampuan multitasking. Sistem operasi yang disebut dengan Windows Graphic Environment 1.0 itu pertama kali diperkenalkan pada 10 November 1983. http://senalastiansah.blogspot.co.id/2012/10/pengertian-user-interface-user.html http://dosen.gufron.com/artikel/pengenalan-sistem-operasi-microsoft-windows/12/ 19 KELOMPOK 3 Sistem Operasi Konsep Proses dalam Sistem Operasi Definisi Proses Proses pada sistem operasi adalah program yang sedang dieksekusi, merupakan unit kerja terkecil yang secara individu memiliki sumber sumber daya yang dijadwalkan oleh sistem operasi. Awalnya proses dijalankan secara sekuensial atau berurut, suatu proses akan di eksekusi sampai selesai baru kemudian berpindah ke proses selanjutnya. Sistem sekuensial memiliki kelemahan yakni tingkat pengguna atau utilitas prosesor yang rendah. Status Proses Proses yang dieksekusi mempunyai lima status yang terdiri dari: 1. 2. 3. 4. 5. New : pembentukan suatu proses Running : instruksi-instruksi yang sedang dieksekusi Waiting : proses menunggu untuk beberapa event yang terjadi Ready : menunggu untuk dialirkan ke pemroses (processor) Terminated : proses telah selesai dieksekusi Proses Control Block (PCB) Tiap proses digambarkan dalam sistem operasi oleh sebuah process control block PCB – juga disebut sebuah control block. PCB berisikan banyak bagian dari informasi yang berhubungan dengan sebuah proses yang spesifik, termasuk hal-hal dibawah ini: 1. Status proses: status mungkin new, ready, running, waiting, halted, dll. 2. Program counter: suatu stack yang berisi alamat dari instruksi selanjutnya untuk dieksekusi untuk proses ini. 3. CPU register: Register bervariasi dalam jumlah dan jenis, tergantung pada rancangan komputer. Register tersebut termasuk accumulator , indeks register, stack pointer , general-purposes register , ditambah code information pada kondisi apa pun. Besertaan dengan program counter, keadaaan/status informasi harus disimpan ketika gangguan terjadi, untuk memungkinkan proses tersebut berjalan/bekerja dengan benar setelahnya 4. Informasi managemen memori: Informasi ini dapat termasuk suatu informasi sebagai nilai dari dasar dan batas register, tabel page/halaman, atau tabel segmen 20 tergantung pada sistem memori yang digunakan oleh sistem operasi (lihat Bab Managemen memori). 5. Informasi pencatatan: Informasi ini termasuk jumlah dari CPU dan waktu riil yang digunakan, batas waktu, jumlah akun jumlah job atau proses, dan banyak lagi. 6. Informasi status I/O: Informasi termasuk daftar dari perangkat I/O yang di gunakan pada proses ini, suatu daftar berkas-berkas yang sedang diakses dan banyak lagi. 7. PCB hanya berfungsi sebagai tempat penyimpanan informasi yang dapat bervariasi dari proses yang satu dengan yang lain. Elemen-elemen dari Process Control Block (PCB) : 1. 2. 3. 4. 5. 6. 7. 8. Identifier : menjelaskan proses yang sedang terjadi State : kondisi yang terjadi pada proses Priority : urutan perintah yang jelas pad suatu proses Program counter : instruksi pada proses Memory pointers : media penyimpanan (penunjuk alamat) pada proses Context data : data yang berkaitan dengan proses I/O status information : terdapat masukan dan keluaran yang diinginkan Accounting information : memberikan informasi yang dibutuhkan Jenis-jenis Proses Beberapa tipe proses : Foreground Proses yang diciptakan oleh pemakai langsung pada terminal (interaktif, dialog). Contohnya Program yang sedang aktif / ditampilkan Batch Proses yang dikumpulkan dan dijalankan secara sekuensial (satu persatu). Proses Batch tidak diasosiasikan (berinteraksi) dengan terminal. Contohnya : Proses yang sedang menunggu, seperti apabila kita sedang membuka ms.word dan game,tapi yang sedang dijalankan adalah game. Daemon Proses yang menunggu permintaan (request) dari proses lainnya dan menjalankan tugas sesuai dengan permintaan tersebut. Bila tidak ada request, maka program ini akan berada dalam kondisi “idle” dan tidak menggunakan waktu hitung CPU. Umumnya nama proses daemon di UNIX berakhiran d, misalnya inetd, named, popddll. Contohnya : Proses yang sedang tidak aktif. 21 Penjadwalan Proses Penjadwalan merupakan kumpulan kebijaksanaan dan mekanisme di sistem operasi yang berkaitan dengan urutan kerja yang dilakukan sistem komputer. Proses penjadwalan yang akan dibahas disini adalah proses penjadwalan sistem operasi SOLARIS, LINUX, dan WINDOWS XP. Sasaran atau tujuan utama penjadwalan proses optimasi kinerja menurut kriteria tertentu. dimana kriteria untuk mengukur dan optimasi kerja penjadwalan antara lain : Agar semua pekerjaan memperoleh pelayanan yang adil (firness). Agar pemakaian prosesor dapat dimaksimumkan. Agar waktu tanggap dapat diminimumkan. Agar pemakaian sumber daya seimbang. Turn arround time, waktu sejak program masuk ke system sampai proses selesai. Efesien, proses tetap dalam keadaan sibuk tidak menganggur. Agar terobosan (thoughput) dapat dimaksimumkan. Terdapat 3 tipe penjadwal berada secara bersama-sama pada sistem operasi yang kompleks, yaitu: 1) Penjadwal jangka pendek (short term scheduller) Bertugas menjadwalkan alokasi pemroses di antara proses-proses ready di memori utama Penjadwalan dijalankan setiap terjadi pengalihan proses untuk memilih proses berikutnya yang harus dijalankan. 2) Penjadwal jangka menengah (medium term scheduller) Setelah eksekusi selama suatu waktu, proses mungkin menunda sebuah eksekusi karena membuat permintaan layanan masukan/keluaran atau memanggil suatu system call. Proses-proses tertunda tidak dapat membuat suatu kemajuan menuju selesai sampai kondisi-kondisi yang menyebabkan tertunda dihilangkan. Agar ruang memori dapat bermanfaat, maka proses dipindah dari memori utama ke memori sekunder agar tersedia ruang untuk proses-proses lain. Kapasitas memori utama terbatas untuk sejumlah proses aktif. Aktivitas pemindahan proses yang tertunda dari memori utama ke memori sekunder disebut swapping. Proses-proses mempunyai kepentingan kecil saat itu sebagai proses yang tertunda. Tetapi, begitu 22 kondisi yang membuatnya tertunda hilang dan dimasukkan kembali ke memori utama dan ready. 3) Penjadwal jangka panjang (long term scheduller) Penjadwal ini bekerja terhadap antrian batch dan memilih batch berikutnya yang harus dieksekusi. Batch biasanya adalah proses-proses dengan penggunaan sumber daya yang intensif (yaitu waktu pemroses, memori, masukan/keluaran), programprogram ini berprioritas rendah, digunakan sebagai pengisi (agar pemroses sibuk) selama periode aktivitas job-job interaktif rendah. PENJADWALAN PROSES SISTEM OPERASI SOLARIS Company /developer Oracle Corporation Programmed in C OS family Unix Source model Mixed open source / closed source Initial release 1992 Latest stable release 10 10/09 / October 8, 2009; 10 months ago Availablelanguage(s) English Availableprogramming languages(s) C Supported platforms SPARC, IA-32, x86-64,PowerPC (Solaris 2.5.1 only) Kernel type Monolithic Default user interface Java Desktop System orCDE License Various Official website oracle.com/solaris Solaris menggunakan penjadwalan berdasarkan prioritas dimana yang mempunyai prioritas yang lebih tinggi dijalankan terlebih dahulu. Informasi tentang penjadwalan kernel thread dapat dilihat dengan ps -elcL. Kernel Solaris adalah fully preemtible, artinya 23 semua thread, termasuk thread yang mendukung aktifitas kernel itu sendiri dapat ditunda untuk menjalankan thread dengan prioritas yang lebih tinggi. Gambar penjadwalan solaris Solaris mengenal 170 prioritas yang berbeda, 0-169. Terbagi dalam 4 kelas penjadwalan yang berbeda: 1. Real time (RT). Thread di kelas RT memiliki prioritas yang tetap dengan waktu kuantum yang tetap juga. Thread ini memiliki prioritas yang tinggi berkisar antara 100-159. Hal inilah yang membuat proses waktu nyata memiliki response time yang cepat. Proses waktu nyata akan dijalankan sebelum proses-proses dari kelas yang lain dijalankan sehingga dapat menghentikan proses di system class. Pada umumnya, hanya sedikit proses yang merupakan real time class. 2. System (SYS). Solaris menggunakan system class untuk menjalankan kernel proses, seperti penjadwalan dan paging daemon. Threads di kelas ini adalah “bound” threads, berarti bahwa mereka akan dijalankan sampai mereka di blok atau prosesnya sudah selesai. Prioritas untuk SYS threads berkisar 60-99. Sekali dibangun, prioritas dari sistem proses tidak dapat dirubah. System classdialokasikan untuk kernel use( user proses berjalan di kernel mode bukan di system class). 3. Time Sharing (TS). Time sharing class merupakan default class untuk proses dan kernel thread yang bersesuaian. Time slices masing-masing proses dibagi berdasarkan prioritasnya. Dalam hal ini, prioritas berbanding terbalik dengan time slices-nya. Untuk proses yang prioritasnya tinggi mempunyai time-slices yang pendek, dan sebaliknya proses dengan prioritas yang rendah mempunyai time slices yang lebih panjang. Besar prioritasnya berada antara 0-59. Proses yang interaktif berada di prioritas yang tinggi sedangkan proses CPU-bound mempunyai prioritas yang rendah. Aturan penjadwalan seperti ini memberikan response time yang baik untuk proses yang interaktif, dan troughput yang baik untuk proses CPU-bound. 4. Interactive (IA). Kelas Interaktif menggunakan aturan yang sama dengan aturan dengan kelas kelas time sharing, tetapi kelas ini memberikan prioritas yang tinggi untuk aplikasi jendela ( windowing application) sehingga menghasilkan performance yang lebih baik. Seperti TS, range IA berkisar 0-59. 24 Tabel . Solaris dispatch table for interactive and time sharing threads Priority Time quantum Time quantum expired return from sleep 0 200 0 50 5 200 0 50 10 160 0 51 15 160 5 51 20 120 10 52 25 120 15 52 30 80 20 53 35 80 25 54 40 40 30 55 45 40 35 56 50 40 40 58 55 40 45 58 59 20 49 59 Keterangan: Priority: prioritas berdasarkan kelas untuk time sharing dan interactive class. Nomor yang lebih tinggi menunjukkan prioritas yang lebih tinggi. Time quantum: waktu kuantum untuk setiap prioritas. Dapat diketahui bahwa fungsi waktu kuantum berbanding terbalik dengan prioritasnya. Time quantum expired: Prioritas terbaru untuk thread yang telah habis time slices-nya tanpa diblok. Dapat dilihat dari tabel bahwa thread yang CPUbound tetap mempunyai prioritas yang rendah. Return from sleep: Prioritas thread yang kembali dari sleeping(misalnya menunggu dari M/K). Seperti yang terlihat dari tabel ketika M/K berada di waiting thread, prioritasnya berada antara 50-59, hal ini menyebabkan response time yang baik untuk proses yang interaktif. 1. Fixed Priority (FX). Thread di kelas fixed priority memiliki range prioritas (0-59) yang sama seperti di time-sharing class; tetapi, prioritas mereka tidak akan berubah. 25 2. Fair Share Scheduler (FSS). Thread yang diatur oleh FSS dijadwalkan berdasar pembagian sumber daya dari CPU yang tersedia dan dialokasikan untuk himpunan proses-proses (yang dikenal sebagai project). FS juga berkisar 0-59. FSS and FX baru mulai diimplementasikan di Solaris 9. Seperti yang telah diketahui, setiap kelas penjadwalan mempunyai himpunan dari prioritas-prioritas. Tetapi, penjadwal mengubah class-specific priorities menjadi global priorities kemudian memilih threaddengan prioritas paling tinggi untuk dijalankan. Thread yang dipilih tersebut jalan di CPU sampai thread tersebut (1) di- block, (2) habis time slices-nya, atau (3) dihentikan oleh thread dengan prioritas yang lebih tinggi. Jika ada beberapa thread dengan prioritas yang sama, penjadwal akan menggunakan Round-Robin queue. Seperti yang pernah dijelaskan sebelumnya, Solaris terdahulu menggunakan many-to-many model tetapi solaris 9 berubah menggunakan one-to- one model. PENJADWALAN PROSES SISTEM OPERASI LINUX Company /developer Linus Torvalds and many others Programmed in Assembly, C OS family Unix-like Working state Current Source model Free and open source software Latest stable release 2.6.35.3 (August 20, 2010; 3 days ago)[1] [+/−] Latest unstable release 2.6.36-rc2 (August 23, 2010; 0 days ago)[2][+/−] Marketing target Desktops, servers, embedded devices Availablelanguage(s) Multi-lingual Availableprogramming languages(s) Assembly, C, C++ Supported platforms IA-32, MIPS, x86-64, SPARC,DEC Alpha, Itanium, PowerPC,ARM, m68k, PA-RISC, s390,SuperH, M32R and more 26 Kernel type Monolithic Userland GNU and others Default user interface Graphical (X Window System) License Various including GNU General Public License, BSD License, Apache License, MIT License, and others[3] Officialwebsite http://www.kernel.org Mulai di versi 2.5, Kernel linux dapat berjalan di berbagai algoritma penjadwalan UNIX tradisional. Dua masalah dengan penjadwal UNIX tradisional adalah tidak disediakannya dukungan yang cukup untuk SMP (symmetric multiprocessor) sistem dan tidak diperhitungkan dengan baik jumlah tasks pada sistem yang berkembang. Dalam versi 2.5, penjadwal memeriksa dengan teliti hal tersebut, dan sekarang kernel juga menyajikan algoritma penjadwalan yang dapat run dalam waktu yang konstan tidak tergantung dari jumlah tasks dalam sistem. Penjadwal yang baru juga menyediakan peningkatan dukungan untuk SMP, termasuk processor affinity dan load balancing, sebaik dalam menyediakan keadilan dan dukungan terhadap interactive tasks. Penjadwal linux adalah preemptive, algoritmanya berdasarkan prioritas dengan dua range prioritas yang terpisah: real-time range dari 0-99 dan nice value berkisar dari 100-140. Dua range ini dipetakan menjadi global priority scheme dimana nilai yang lebih rendah memiliki prioritas yang lebih tinggi. Tidak seperti penjadwal yang lain, Linux menetapkan prioritas yang lebih tinggi memiliki waktu kuantum yang lebih panjang dan prioritas yang lebih rendah memiliki waktu kuantum yang lebih pendek. Linux mengimplementasikan real time scheduling seperti yang didefinisikan oleh POSIX 1.b: First Come First Served dan Round Robin. Sistem waktu nyata( real time)diberikan untuk task yang prioritasnya tetap. Sedangkan task yang lainnya memiliki prioritas yang dinamis berdasakan nice values ditambah atau dikurangi dengan 5. Interaktifitas sebuah task menentukan apakah nilai 5 tersebut akan ditambah atau dikurangi dari nice value. Task yang lebih interaktif mempunyai ciri khas memiliki sleep times yang lebih lama dan karena itu maka ditambah dengan -5, karena penjadwal lebih menyukaiinteractive task. Hasil dari pendekatan ini akan membuat prioritas untuk interactive task lebih tinggi. 27 Sebaliknya, task dengan sleep time yang lebih pendek biasanya lebih CPU-bound jadi prioritasnya lebih rendah. Gambar . Hubungan antara prioritas dan waktu kuantum Task yang berjalan memenuhi syarat untuk dieksekusi oleh CPU selama time slice-nya masih ada. Ketika sebuah task telah kehabisan time slice-nya, maka task tersebut akan expired dan tidak memenuhi syarat untuk dieksekusi lagi sampai semua task yang lain sudah habis waktu kuantumnya. Kernel mengatur daftar semua task yang berjalan di runqueue data structure. Karena dukungan Linux untuk SMP, setiap prossesor mengatur runqueue mereka sendiri dan penjadwalan yang bebas. Setiap runqueue terdiri dari dua array prioritas – active dan expired. Active array terdiri dari semua task yang mempunyai sisa waktu time slices, dan expired array terdiri dari task yang telah berakhir. Setiap array prioritas ini memiliki daftar task indexed berdasakan prioritasnya. Penjadwal memilih task dengan prioritas paling tinggi di active array untuk dieksekusi dalam CPU. Di mesin multiprossesor, ini berarti setiap prossesor menjadwalkan prioritas paling tinggi dalam runqueue structure masing-masing. Ketika semua tasktelah habis time slices-nya (dimana, active array-nya sudah kosong), dua array prioritas bertukar; expired array menjadi active array, dan sebaliknya. Gambar . Daftar task indexed berdasarkan prioritas Penghitungan ulang dari task yang memiliki prioritas yang dinamis berlangsung ketika task telah menyelesaikan waktu kuantumnya dan akan dipindahkan ke expired array. Jadi, ketika ada dua larik ( array) ditukar, semua task di array aktif yang baru ditentukan prioritasnya yang baru dan disesuaikan juga time slices-nya. PENJADWALAN PROSES SISTEM OPERASI WINDOWS XP Developer Microsoft Corporation Release date RTM: August 24, 2001 Retail: October 25, 2001 (info) Current version 5.1.2600.5512 Service Pack 3 (x86 SP3) (21 April 2008; 2 years ago) (info) Source model Closed source, Shared source[1] 28 License Microsoft-EULA Kernel type Hybrid Update method Windows Update Platform support IA-32, x86-64, IA-64 Website Windows XP: Homepage Windows XP menggunakan algoritma, prioritas penjadwalan quantum-based berbasis reemptive priority scheduling . Gambar Proses Pada Windows Xp Threads dijadwalkan dalam proses, Karena prioritas preemptive algoritma diimplementasikan dengan beberapa queue, dapat dianggap sebagai algoritma multiple feedback-queue . Namun, masing-masing Threads biasanya terbatas pada kelompok kecil dari 5 level prioritas, Preemption dapat terjadi karena salah satu dari 4 alasan: o thread menjadi prioritas lebih tinggi-siap o thread berakhir o kuantum habis waktu o thread melakukan panggilan sistem pemblokiran, seperti untuk I / O, dalam hal ini meninggalkan keadaan ready menjadi keadaan menunggu. Gambar Quatum pada windows XP 32 tingkat prioritas digunakan, di mana prioritas 31 merupakan prioritas tertinggi dan prioritas 0 adalah prioritas terendah o memori manajemen thread: prioritas 0 o variabel kelas prioritas (1-15) o real-time kelas prioritas (16-31) Threads di kelas real-time telah tetap prioritasnya. Threads yang berjalan selalu dengan tingkat prioritas tertinggi. Jika tidak ada thread yang ready, Threads idle dijalankan. 29 Ketika waktu quantum thread habis, prioritasnya diturunkan, tetapi prioritasnya tidak pernah diturunkan terlalu jauh. Ketika Threads menjadi ready setelah keadaan menunggu, maka diberikan prioritas tertinggi setiap threads dari proses yang terkait dengan program yang saat ini pengguna gunakan diberikan prioritas lebih . ALGORITMA PENJADWALAN PROSES Algorima ini merupakan proses antrian, yang mana proses akan mendapatkan jatah waktu sebesar time quantum. Jika waktu quantumnya selesai maka prosesnya pun selesai. Proses ini merupakan proses yang adil karena tidak ada proses yang didahulukan, semua proses mendapatkan jatah waktu yang sama yaitu 1/n. Permasalahan utama pada Round Robin adalah menentukan besarnya time quantum. Jika time quantum yang ditentukan terlalu kecil, maka sebagian besar proses tidak akan selesai dalam 1 quantum. Hal ini tidak baik karena akan terjadi banyak switch, padahal CPU memerlukan waktu untuk beralih dari suatu proses ke proses lain (disebut dengan context switches time). Sebaliknya, jika time quantum terlalu besar, algoritma Round Robin akan berjalan seperti algoritma first come first served yang mana yang dating dahulu akan dilayani terlebih dahulu.Time quantum yang ideal adalah jika 80% dari total proses memiliki CPU burst time yang lebih kecil dari 1 time quantum. Gambar Urutan Kejadian Algoritma Round Robin Multiple Feedback Queue (MFQ) Algoritma ini merupakan algoritma yang mengizinkan proses untuk pindah antrian. Jika suatu proses menyita CPU terlalu lama, maka proses itu akan dipindahkan ke antrian yang lebih rendah. Hal ini akan sangat menguntungkan karena akan menggunakan waktu yang sedikit dalam pengerjaan proses-proses tersebut. Demikian pula dengan proses yang menunggu lama maka prose ini akan dinaikkan ke tingkat yang lebih tinggi. Dengan begitu CPU akan bekerja dengan penuh dan M/K dapat terus sibuk. Semakin rendah tingkatnya, panjang CPU burst proses juga semakin panjang. 30 Gambar Multilevel Feedback Queue Shortest Remaining First (SRF) Pada algoritma ini setiap proses yang ada di ready queue akan dieksekusi berdasarkan burst time terkecil. Hal ini mengakibatkan waiting time yang pendek untuk setiap proses dan karena hal tersebut maka waiting time rata-ratanya juga menjadi pendek, sehingga dapat dikatakan bahwa algoritma ini adalah algoritma yang optimal. Tabel Contoh Shortest Job First Contoh: Ada 4 buah proses yang datang berurutan yaitu P1 dengan arrival time pada 0.0 ms dan burst time 7 ms, P2 dengan arrival time pada 2.0 ms dan burst time 4 ms, P3 dengan arrival time pada 4.0 ms dan burst time 1 ms, P4 dengan arrival time pada 5.0 ms dan burst time 4 ms. Hitunglah waiting time rata-rata dan turnaround time dari keempat proses tersebut dengan mengunakan algoritma SJF. Average waiting time rata-rata untuk ketiga proses tersebut adalah sebesar (0 +6+3+7)/4=4 ms. Higest Ratio Next (HRN) Higest Ratio Next (HRN) Merupakan penjadwalan untuk mengoreksi kelemahan SJF yang berprioritas dinamis. HRN Adalah strategi penjadwalan dengan prioritas proses tidak hanya merupakan fungsi waktu layanan,tetapi juga jumlah waktu tunggu proses. Begitu proses mendapat jatah pemroses, maka proses berjalan sampai selesai. Prioritas dinamis HRN dihitung berdasarkan rumus berikut : Prioritas = (waktu tunggu + waktu layanan ) / waktu layanan. Karena waktu layanan muncul sebagai pembagi, maka job lebih pendek berprioritas lebih baik, karena waktu tunggu sebagai pembilang, maka proses yang telah menunggu lebih lama juga mempunyai kesempatan lebih bagus. Mengapa algoritma ini disebut HRN karena waktu tunggu ditambah waktu layanan adalah waktu tanggap, yang berarti waktu tanggap tertinggi yang harus dilayani. 31 Priority Schedulling (PS) Priority Scheduling merupakan algoritma penjadwalan yang mendahulukan proses yang memiliki prioritas tertinggi. Setiap proses memiliki prioritasnya masing-masing. Prioritas suatu proses dapat ditentukan melalui beberapa karakteristik antara lain: 1. Time limit. 2. Memory requirement. 3. Akses file. 4. Perbandingan antara burst M/K dengan CPU burst. 5. Tingkat kepentingan proses. Priority scheduling juga dapat dijalankan secara preemptive maupun non preemptive. Pada preemptive, jika ada suatu proses yang baru datang memiliki prioritas yang lebih tinggi daripada proses yang sedang dijalankan, maka proses yang sedang berjalan tersebut dihentikan, lalu CPU dialihkan untuk proses yang baru datang tersebut. Sementara itu, pada non-preemptive, proses yang baru datang tidak dapat menganggu proses yang sedang berjalan, tetapi hanya diletakkan di depan queue. Kelemahan pada priority scheduling adalah dapat terjadinya indefinite blocking( starvation). Suatu proses dengan prioritas yang rendah memiliki kemungkinan untuk tidak dieksekusi jika terdapat proses lain yang memiliki prioritas lebih tinggi darinya. Solusi dari permasalahan ini adalah aging, yaitu meningkatkan prioritas dari setiap proses yang menunggu dalam queue secara bertahap. Contoh: Setiap 10 menit, prioritas dari masingmasing proses yang menunggu dalam queue dinaikkan satu tingkat. Maka, suatu proses yang memiliki prioritas 127, setidaknya dalam 21 jam 20 menit, proses tersebut akan memiliki prioritas 0, yaitu prioritas yang tertinggi (semakin kecil angka menunjukkan bahwa prioritasnya semakin tinggi). Guaranteed Scheduling (GS) Penjadwalan ini memberikan janji yang realistis (memberi daya pemroses yang sama) untuk membuat dan menyesuaikan performance adalah jika ada N pemakai, sehingga setiap proses (pemakai) akan mendapatkan 1/N dari daya pemroses CPU. Untuk mewujudkannya, sistem harus selalu menyimpan informasi tentang jumlah waktu CPU untuk semua proses sejak login dan juga berapa lama pemakai sedang login. Kemudian jumlah waktu CPU, yaitu waktu mulai login dibagi dengan n, sehingga lebih mudah menghitung rasio waktu CPU. Karena jumlah waktu pemroses tiap pemakai dapat diketahui, maka dapat dihitung rasio antara waktu pemroses yang sesungguhnya harus diperoleh, yaitu 1/N waktu pemroses seluruhnya dan waktu pemroses yang telah diperuntukkan proses itu. Rasio 0,5 berarti sebuah proses hanya punya 0,5 dari apa yang waktu CPU miliki dan rasio 2,0 berarti sebuah proses hanya punya 2,0 dari apa yang waktu CPU miliki. Algoritma akan menjalankan proses dengan rasio paling rendah hingga naik ketingkat lebih tinggi diatas pesaing terdekatnya. Ide sederhana ini dapat diimplementasikan ke sistem real-time dan memiliki penjadwalan berprioritas dinamis. Deadlock Deadlock adalah keadaan dimana 2 atau lebih proses saling menunggu meminta resources untuk waktu yang tidak terbatas lamanya. Analoginya seperti pada kondisi jalan 32 raya dimana terjadi kemacetan parah. Deadlock adalah efek samping dari sinkronisasi, dimana satu variabel digunakan oleh 2 proses. Deadlock bisa digambarkan sebagai berikut : Kejadian Deadlock selalu tidak lepas dari sumber daya, bahwa hampir seluruhnya merupakan masalah sumber daya yang digunakan bersama-sama. Oleh karena itu, kita juga perlu tahu tentang jenis sumber daya, yaitu: sumber daya dapat digunakan lagi berulangulang dan sumber daya yang dapat digunakan dan habis dipakai atau dapat dikatakan sumber daya sekali pakai. Sumber daya ini tidak habis dipakai oleh proses mana pun.Tetapi setelah proses berakhir, sumber daya ini dikembalikan untuk dipakai oleh proses lain yang sebelumnya tidak kebagian sumber daya ini. Contohnya prosesor, Channel I/O, disk, semaphore. Contoh peran sumber daya jenis ini pada terjadinya Deadlock ialah misalnya sebuah proses memakai disk A dan B, maka akan terjadi Deadlock jika setiap proses sudah memiliki salah satu disk dan meminta disk yang lain. Masalah ini tidak hanya dirasakan oleh pemrogram tetapi oleh seorang yang merancang sebuah sistem operasi. Cara yang digunakan pada umumnya dengan cara memperhitungkan dahulu sumber daya yang digunakan oleh proses-proses yang akan menggunakan sumber daya tersebut. Contoh lain yang menyebabkan Deadlock dari sumber yang dapat dipakai berulang-ulang ialah berkaitan dengan jumlah proses yang memakai memori utama. Ada empat kondisi yang dapat menyebabkan terjadinya deadlock. Keempat kondisi tersebut tidak dapat berdiri sendiri, namun saling mendukung. 1. Mutual exclusion. Hanya ada satu proses yang boleh memakai sumber daya, dan proses lain yang ingin memakai sumber daya tersebut harus menunggu hingga sumber daya tadi dilepaskan atau tidak ada proses yang memakai sumber daya tersebut. 2. Hold and wait. Proses yang sedang memakai sumber daya boleh meminta sumber daya lagi maksudnya menunggu hingga benar-benar sumber daya yang diminta tidak dipakai oleh proses lain, hal ini dapat menyebabkan kelaparan sumber daya sebab dapat saja sebuah proses tidak mendapat sumber daya dalam waktu yang lama. 3. No preemption. Sumber daya yang ada pada sebuah proses tidak boleh diambil begitu saja oleh proses lainnya. Untuk mendapatkan sumber daya tersebut, maka harus dilepaskan terlebih dahulu oleh proses yang memegangnya, selain itu seluruh proses menunggu dan mempersilahkan hanya proses yang memiliki sumber daya yang boleh berjalan. 4. Circular wait. Kondisi seperti rantai, yaitu sebuah proses membutuhkan sumber daya yang dipegang proses berikutnya. Strategi mengatasi Deadlock : Ada beberapa cara untuk menanggulangi terjadinya deadlock, diantaranya adalah: Mengabaikan masalah deadlock. Mendeteksi dan memperbaiki Penghindaran yang terus menerus dan pengalokasian yang baik dengan menggunakan protocol untuk memastikan sistem tidak pernah memasuki keadaan deadlock. Yaitu dengan deadlock avoidance sistem untuk mendata informasi tambahan tentang proses mana yang akan meminta dan menggunakan sumber daya. Pencegahan yang secara struktur bertentangan dengan empat kondisi terjadinya deadlock dengan deadlock prevention sistem untuk memastikan bahwa salah satu kondisi yang penting tidak dapat menunggu. 33 Mengabaikan Masalah Deadlock Untuk memastikan sistem tidak memasuki deadlock, sistem dapat menggunakan pencegahan deadlock atau penghindaran deadlock. Penghindaran deadlock membutuhkan informasi tentang sumber daya yang mana yang akan suatu proses meminta dan berapa lama akan digunakan. Dengan informasi tersebut dapat diputuskan apakah suatu proses harus menunggu atau tidak. Hal ini disebabkan oleh keberadaan sumber daya, apakah ia sedang digunakan oleh proses lain atau tidak. Metode ini lebih dikenal dengan Algoritma Ostrich. Dalam algoritma ini dikatakan bahwa untuk menghadapi Deadlock ialah dengan berpura-pura bahwa tidak ada masalah apa pun. Hal ini seakanakan melakukan suatu hal yang fatal, tetapi sistem operasi Unix menanggulangi Deadlock dengan cara ini dengan tidak mendeteksi Deadlock dan membiarkannya secara otomatis mematikan program sehingga seakan-akan tidak terjadi apa pun. Jadi jika terjadi Deadlock, maka tabel akan penuh, sehingga proses yang menjalankan proses melalui operator harus menunggu pada waktu tertentu dan mencoba lagi. Mendeteksi dan Memperbaiki Caranya ialah dengan cara mendeteksi jika terjadi deadlock pada suatu proses maka dideteksi system mana yang terlibat di dalamnya. Setelah diketahui sistem mana saja yang terlibat maka diadakan proses untuk memperbaiki dan menjadikan sistem berjalan kembali. Jika sebuah sistem tidak memastikan deadlock akan terjadi, dan juga tidak didukung dengan pendeteksian deadlock serta pencegahannya, maka kita akan sampai pada kondisi deadlock yang dapat berpengaruh terhadap performance sistem karena sumber daya tidak dapat digunakan oleh proses sehingga prosesproses yang lain juga terganggu. Akhirnya sistem akan berhenti dan harus direstart. Hal-hal yang terjadi dalam mendeteksi adanya Deadlock adalah: Permintaan sumber daya dikabulkan selama memungkinkan. Sistem operasi memeriksa adakah kondisi circular wait secara periodik. Pemeriksaan adanya deadlock dapat dilakukan setiap ada sumber daya yang hendak digunakan oleh sebuah proses. Memeriksa dengan algoritma tertentu. Ada beberapa jalan untuk kembali dari Deadlock, yaitu: Lewat Preemption Dengan cara untuk sementara waktu menjauhkan sumber daya dari pemakainya, dan memberikannya pada proses yang lain. Ide untuk memberi pada proses lain tanpa diketahui oleh pemilik dari sumber daya tersebut tergantung dari sifat sumber daya itu sendiri. Perbaikan dengan cara ini sangat sulit atau dapat dikatakan tidak mungkin. Cara ini dapat dilakukan dengan memilih korban yang akan dikorbankan atau diambil sumber dayanya untuk sementara, tentu saja harus dengan perhitungan yang cukup agar waktu yang dikorbankan seminimal mungkin. Setelah kita melakukan preemption dilakukan pengkondisian proses tersebut dalam kondisi aman. Setelah itu proses dilakukan lagi dalam kondisi aman tersebut. 34 Lewat Melacak Kembali Setelah melakukan beberapa langkah preemption, maka proses utama yang diambil sumber dayanya akan berhenti dan tidak dapat melanjutkan kegiatannya, oleh karena itu dibutuhkan langkah untuk kembali pada keadaan aman dimana proses masih berjalan dan memulai proses lagi dari situ. Tetapi untuk beberapa keadaan sangat sulit menentukan kondisi aman tersebut, oleh karena itu umumnya dilakukan cara mematikan program tersebut lalu memulai kembali proses. Meski pun sebenarnya lebih efektif jika hanya mundur beberapa langkah saja sampai deadlock tidak terjadi lagi. Untuk beberapa sistem mencoba dengan cara mengadakan pengecekan beberapa kali secara periodik dan menandai tempat terakhir kali menulis ke disk, sehingga saat terjadi deadlock dapat mulai dari tempat terakhir penandaannya berada. Lewat mematikan proses yang menyebabkan Deadlock Cara yang paling umum ialah mematikan semua proses yang mengalami deadlock. Cara ini paling umum dilakukan dan dilakukan oleh hampir semua sistem operasi. Namun, untuk beberapa sistem, kita juga dapat mematikan beberapa proses saja dalam siklus deadlock untuk menghindari deadlock dan mempersilahkan proses lainnya kembali berjalan. Atau dipilih salah satu korban untuk melepaskan sumber dayanya, dengan cara ini maka masalah pemilihan korban menjadi lebih selektif, sebab telah diperhitungkan beberapa kemungkinan jika si proses harus melepaskan sumber dayanya. Kriteria pemilihan korban ialah: • Yang paling jarang memakai prosesor • Yang paling sedikit hasil programnya • Yang paling banyak memakai sumber daya sampai saat ini • Yang alokasi sumber daya totalnya tersedkit • Yang memiliki prioritas terkecil Menghindari Deadlock Pada sistem kebanyakan permintaan terhadap sumber daya dilakukan sebanyak sekali saja. Sistem sudah harus dapat mengenali bahwa sumber daya itu aman atau tidak (tidak terkena deadlock), setelah itu baru dialokasikan. Ada dua cara yaitu: Jangan memulai proses apa pun jika proses tersebut akan membawanya pada kondisi deadlock, sehingga tidak mungkin terjadi deadlock karena pada saat akan menuju deadlock, proses sudah dicegah. Jangan memberi kesempatan pada suatu proses untuk meminta sumber daya lagi jika penambahan ini akan membawa kita pada suatu keadaan deadlock. Jadi diadakan dua kali penjagaan, yaitu saat pengalokasian awal, dijaga agar tidak deadlock dan ditambah dengan penjagaan kedua saat suatu proses meminta sumber daya, dijaga agar jangan sampai terjadi deadlock. Pada sistem deadlock avoidance (penghindaran) dilakukan dengan cara memastikan bahwa program memiliki maksimum permintaan. Dengan kata lain cara sistem ini memastikan terlebih dahulu bahwa sistem akan selalu dalam kondisi aman. Baik mengadakan permintaan awal atau pun saat meminta permintaan sumber daya tambahan, sistem harus selalu berada dalam kondisi aman 35 Mutual exclusion Dalam ilmu komputer, saling pengecualian mengacu pada kebutuhan untuk menjamin bahwa tidak ada dua proses atau benang (selanjutnya disebut hanya sebagai proses) berada di bagian kritis mereka pada waktu yang sama. Di sini, bagian kritis mengacu pada periode waktu ketika proses mengakses sumber daya bersama, seperti memori bersama. Masalah mutual exclusion pertama kali diidentifikasi dan dipecahkan oleh Edsger W. Dijkstra dalam seminal 1965 makalahnya berjudul: Solusi dari masalah dalam kontrol pemrograman konkuren. Contoh sederhana mengapa saling pengecualian penting dalam praktek dapat divisualisasikan menggunakan linked list tunggal. Dalam sebuah linked list penghapusan node dilakukan dengan mengubah "berikutnya" pointer dari node sebelumnya untuk menunjuk ke simpul berikutnya (misalnya, jika node i sedang dihapus maka "berikutnya" pointer node i-1 akan diubah untuk menunjuk ke node i +1). Dalam eksekusi mana seperti linked list sedang dibagi antara beberapa proses, dua proses mungkin mencoba untuk menghapus dua node yang berbeda secara bersamaan mengakibatkan masalah berikut: biarkan node i dan i +1 menjadi node yang akan dihapus, lebih jauh lagi, janganlah dari mereka menjadi kepala atau ekor, pointer berikutnya simpul i-1 akan berubah untuk menunjuk ke node i +1 dan pointer berikutnya node i akan berubah untuk menunjuk ke node i +2. Meskipun kedua operasi penghapusan lengkap berhasil, node i +1 tetap ada dalam daftar sejak i-1 dibuat untuk menunjuk ke i +1 skipping node i (yang dibuat untuk menunjuk ke i +2). Hal ini dapat dilihat pada Gambar 1. Masalah ini dapat dihindari dengan menggunakan pengecualian bersama untuk memastikan bahwa update simultan ke bagian yang sama dari daftar tidak dapat terjadi. Isi Menegakkan mutual exclusion. Ada baik perangkat lunak dan solusi perangkat keras untuk menegakkan saling pengecualian. Beberapa solusi yang berbeda dibahas di bawah ini: Solusi perangkat keras Pada sistem prosesor tunggal, solusi yang paling sederhana untuk mencapai saling pengecualian adalah untuk menonaktifkan interupsi selama proses 'bagian kritis. Ini akan mencegah rutinitas layanan interupsi dari berjalan (efektif mencegah proses dari yang mendahului). Meskipun ini adalah solusi efektif, hal itu menyebabkan banyak masalah. Jika suatu bagian kritis adalah panjang, maka jam sistem akan melayang setiap kali bagian kritis dieksekusi karena interupsi timer tidak lagi dilayani, sehingga pelacakan waktu mustahil selama bagian kritis. Juga, jika suatu proses menghentikan selama bagian kritis, kontrol tidak akan pernah kembali ke proses lain, secara efektif menghentikan seluruh sistem. Sebuah metode yang lebih elegan untuk mencapai saling pengecualian adalah sibuk-tunggu. Sibuk-tunggu adalah efektif untuk kedua uniprocessor dan sistem multiprosesor. Penggunaan memori bersama dan tes-dan-set instruksi atom memberikan pengecualian bersama. Sebuah proses dapat menguji-dan-set pada sebuah lokasi di memori bersama, dan karena operasi adalah atom, hanya satu proses dapat mengatur bendera pada suatu waktu. Setiap proses yang tidak berhasil dalam menetapkan bendera dapat pergi untuk melakukan tugas-tugas lain dan coba 36 lagi nanti, lepaskan prosesor ke proses lain dan coba lagi nanti, atau terus loop sementara memeriksa bendera sampai berhasil memperolehnya. Preemption masih mungkin, jadi metode ini memungkinkan sistem untuk terus berfungsi - bahkan jika suatu proses menghentikan sambil memegang kunci. Beberapa operasi atom lainnya dapat digunakan untuk memberikan mutual exclusion struktur data, yang paling terkenal adalah Bandingkan-Dan-Swap (CAS). CAS dapat digunakan untuk mencapai saling pengecualian menunggu gratis untuk setiap struktur data bersama dengan membuat daftar link di mana setiap node merupakan operasi yang diinginkan yang akan dilakukan. CAS kemudian digunakan untuk mengubah pointer dalam daftar terkait selama penyisipan simpul baru. Hanya satu proses dapat berhasil dalam CAS nya, semua proses lain mencoba untuk menambahkan node pada saat yang sama harus mencoba lagi. Setiap proses kemudian dapat menyimpan salinan lokal dari struktur data, dan setelah melintasi linked list, dapat melakukan setiap operasi dari daftar pada copy lokal. Solusi Software. Selain solusi perangkat keras yang didukung, beberapa solusi perangkat lunak yang ada yang menggunakan sibuk menunggu untuk mencapai saling pengecualian. Contoh ini meliputi: Algoritma Dekker Algoritma Peterson Lamport bakery algoritma. Algoritma Szymanski Algoritma roti hitam-putih Taubenfeld itu. Algoritma ini tidak bekerja jika eksekusi out-of-order yang digunakan pada platform yang mengeksekusi mereka. Programmer harus menentukan memesan ketat pada operasi memori dalam thread. Hal ini sering lebih baik untuk menggunakan fasilitas sinkronisasi yang disediakan oleh multithreading perpustakaan sistem operasi, yang akan mengambil keuntungan dari solusi perangkat keras jika memungkinkan, tetapi akan menggunakan solusi perangkat lunak jika tidak ada solusi perangkat keras yang ada. Misalnya, ketika perpustakaan kunci sistem operasi yang digunakan dan benang mencoba untuk memperoleh kunci sudah diperoleh, sistem operasi dapat menangguhkan benang menggunakan saklar konteks dan swap keluar dengan benang lain yang siap untuk dijalankan, atau bisa menempatkan prosesor ke dalam keadaan daya rendah jika tidak ada thread lain yang dapat dijalankan. Oleh karena itu, metode saling pengecualian yang paling modern berusaha untuk mengurangi latensi dan sibuk-menunggu dengan menggunakan antrian dan konteks switch. Namun, jika waktu yang dihabiskan menangguhkan benang dan kemudian mengembalikan itu dapat terbukti selalu lebih dari waktu yang harus menunggu untuk sebuah thread untuk menjadi siap untuk menjalankan setelah diblokir dalam situasi tertentu, maka spinlocks adalah denda solusi (untuk situasi yang hanya). 37 Mutual exclusion canggih Solusi yang dijelaskan di atas dapat digunakan untuk membangun sinkronisasi primitif di bawah ini: Kunci Mutexes reentrant Semaphore Monitor Message passing Ruang tupel Banyak bentuk mutual exclusion memiliki efek samping. Misalnya, Semaphore klasik mengizinkan deadlock, di mana satu proses mendapatkan semaphore, proses lain mendapat semaphore kedua, dan kemudian keduanya menunggu selamanya untuk semaphore lainnya akan dirilis. Lain efek samping umum termasuk kelaparan, di mana proses pernah mendapat sumber daya yang cukup untuk menjalankan sampai selesai, inversi prioritas, di mana thread prioritas yang lebih tinggi menunggu thread prioritas rendah, dan "latency tinggi", di mana respon terhadap interupsi adalah tidak cepat. Banyak penelitian yang bertujuan untuk menghilangkan efek di atas, sering dengan tujuan menjamin kemajuan non-blocking. Tidak ada skema yang sempurna dikenal. Memblokir sistem panggilan digunakan untuk tidur seluruh proses. Sampai panggilan tersebut menjadi benang aman, tidak ada mekanisme yang tepat untuk tidur satu thread dalam proses . Kunci eksklusif Reksa pada objek memori (dalam konteks ini berbagi proses / benang memori) yang diperlukan seperti pada objek database (kunci file). Tentu saja, objek database dapat memiliki non-eksklusif (baca) kunci dan karenanya David Hostettler Wain diusulkan nonexs - kunci memori non-eksklusif pada tahun 2006. Ini masih belum diterapkan secara luas. Concurrency Concurrency Basis Data Cocurrency adalah ketika DBMS mengijinkan banyak transaksi pada saat bersamaan untuk mengakses data yang sama. Dibutuhkan Concurrency Control Mechanism (CCM) agar transaksi tidak saling “mengganggu”. Terdapat 3 masalah dalam concurrency, yaitu: Lost update problem Uncommited Depedency Problem Incosistent Analysis Problem 38 Cara penyelesaian masalah cocurrency adalah dengan cara Harus adanya aturan (Harus adanya role accesbility, tidak di perbolehkan adanya Role super admin) Commit harus bisa masuk level fisik. Ketika data tidak commit maka bisa mempengaruhi sistem. Locking Locking terjadi jika suatu transaksi ingin record atau resource tidak berubah dalam waktu tertentu. Jenis Locking terdiri dari 2, yaitu: a. Exclusive Lock yaitu locking yang hanya bisa di gunakan untuk mengupdate dan membaca transaksi b. Shared Lock yaitu locking yang hanya bisa di gunakan untuk membaca transaksi. Hal yang harus di hindari dalam locking adalah Dead Lock. Dead Lock adalah kondisi pada saat dua atau lebih transaksi berada pada posisi wait-state. Satu sama lain menunggu lock untuk di lepaskan sebelum dapat memulai transaksi. Jalan keluar untuk Deadlock adalah dengan cara: Deteksi dan Pecahkan Deadlock. Cara deteksi deadlock adalah dengan metode wait for graph. Dan cara untuk pecahkan deadlock adalah dengan cara salah satu transaksi di rollback paksa. Dengan menggunakan Ostrich Algorithm. Yaitu dengan cara di abaikan atau di biarkan saja seperti burung unta ketika ada masalah dia menyembunyikan kepalanya di dalam tanah. Isolation Level 2 level pengisolasian untuk memecahkan masalah transaksi, yaitu: Read Commited Transaksi hanya dapat melihat perubahan data setelah transaksi lain di commit pada data tersebut Serializable Level isolasi paling ketat. Dilaksanakan secara serial (berurutan). Di level ini sebuah query hanya akan melihat data yang sudah di commit sebelum transaksi di mulai. 39 Kompromi isolation Level. Adalah masalah yang ada pada isolation level, yaitu: Dirty Read: Dapat melihat record yang sudah di rollback transaksi lain atau yang belum dicommit. Nonrepeatable read: Transaksi 1 baca sebuah record, record tersebut diubah transaksi lain, saat Transaksi 1 membaca lagi nilainya sudah berubah Phantoms: retrieve menghasilkan record baru yang sebelumnya tidak ada . 40 KELOMPOK 4 Sistem Operasi Konsep Proses dalam Sistem Operasi Definisi Proses Proses pada sistem operasi adalah program yang sedang dieksekusi, merupakan unit kerja terkecil yang secara individu memiliki sumber sumber daya yang dijadwalkan oleh sistem operasi. Awalnya proses dijalankan secara sekuensial atau berurut, suatu proses akan di eksekusi sampai selesai baru kemudian berpindah ke proses selanjutnya. Sistem sekuensial memiliki kelemahan yakni tingkat pengguna atau utilitas prosesor yang rendah. Status Proses Proses yang dieksekusi mempunyai lima status yang terdiri dari: 6. New : pembentukan suatu proses 7. Running : instruksi-instruksi yang sedang dieksekusi 8. Waiting : proses menunggu untuk beberapa event yang terjadi 9. Ready : menunggu untuk dialirkan ke pemroses (processor) 10. Terminated : proses telah selesai dieksekusi Proses Control Block (PCB) Tiap proses digambarkan dalam sistem operasi oleh sebuah process control block PCB – juga disebut sebuah control block. PCB berisikan banyak bagian dari informasi yang berhubungan dengan sebuah proses yang spesifik, termasuk hal-hal dibawah ini: 2. Status proses: status mungkin new, ready, running, waiting, halted, dll. 8. Program counter: suatu stack yang berisi alamat dari instruksi selanjutnya untuk dieksekusi untuk proses ini. 9. CPU register: Register bervariasi dalam jumlah dan jenis, tergantung pada rancangan komputer. Register tersebut termasuk accumulator , indeks register, stack pointer , general-purposes register , ditambah code information pada kondisi apa pun. Besertaan dengan program counter, keadaaan/status informasi harus disimpan ketika gangguan terjadi, untuk memungkinkan proses tersebut berjalan/bekerja dengan benar setelahnya 41 10. Informasi managemen memori: Informasi ini dapat termasuk suatu informasi sebagai nilai dari dasar dan batas register, tabel page/halaman, atau tabel segmen tergantung pada sistem memori yang digunakan oleh sistem operasi (lihat Bab Managemen memori). 11. Informasi pencatatan: Informasi ini termasuk jumlah dari CPU dan waktu riil yang digunakan, batas waktu, jumlah akun jumlah job atau proses, dan banyak lagi. 12. Informasi status I/O: Informasi termasuk daftar dari perangkat I/O yang di gunakan pada proses ini, suatu daftar berkas-berkas yang sedang diakses dan banyak lagi. 13. PCB hanya berfungsi sebagai tempat penyimpanan informasi yang dapat bervariasi dari proses yang satu dengan yang lain. Elemen-elemen dari Process Control Block (PCB) : 9. Identifier : menjelaskan proses yang sedang terjadi 10. State : kondisi yang terjadi pada proses 11. Priority : urutan perintah yang jelas pad suatu proses 12. Program counter : instruksi pada proses 13. Memory pointers : media penyimpanan (penunjuk alamat) pada proses 14. Context data : data yang berkaitan dengan proses 15. I/O status information : terdapat masukan dan keluaran yang diinginkan 16. Accounting information : memberikan informasi yang dibutuhkan Jenis-jenis Proses Beberapa tipe proses : Foreground Proses yang diciptakan oleh pemakai langsung pada terminal (interaktif, dialog). Contohnya Program yang sedang aktif / ditampilkan Batch Proses yang dikumpulkan dan dijalankan secara sekuensial (satu persatu). Proses Batch tidak diasosiasikan (berinteraksi) dengan terminal. Contohnya : Proses yang sedang menunggu, seperti apabila kita sedang membuka ms.word dan game,tapi yang sedang dijalankan adalah game. Daemon Proses yang menunggu permintaan (request) dari proses lainnya dan menjalankan tugas sesuai dengan permintaan tersebut. Bila tidak ada request, maka program ini akan berada dalam kondisi “idle” dan tidak menggunakan waktu hitung CPU. Umumnya nama proses daemon di UNIX berakhiran d, misalnya inetd, named, popddll. Contohnya : Proses yang sedang tidak aktif. 42 Penjadwalan Proses Penjadwalan merupakan kumpulan kebijaksanaan dan mekanisme di sistem operasi yang berkaitan dengan urutan kerja yang dilakukan sistem komputer. Proses penjadwalan yang akan dibahas disini adalah proses penjadwalan sistem operasi SOLARIS, LINUX, dan WINDOWS XP. Sasaran atau tujuan utama penjadwalan proses optimasi kinerja menurut kriteria tertentu. dimana kriteria untuk mengukur dan optimasi kerja penjadwalan antara lain : Agar semua pekerjaan memperoleh pelayanan yang adil (firness). Agar pemakaian prosesor dapat dimaksimumkan. Agar waktu tanggap dapat diminimumkan. Agar pemakaian sumber daya seimbang. Turn arround time, waktu sejak program masuk ke system sampai proses selesai. Efesien, proses tetap dalam keadaan sibuk tidak menganggur. Agar terobosan (thoughput) dapat dimaksimumkan. Terdapat 3 tipe penjadwal berada secara bersama-sama pada sistem operasi yang kompleks, yaitu: 4) Penjadwal jangka pendek (short term scheduller) Bertugas menjadwalkan alokasi pemroses di antara proses-proses ready di memori utama Penjadwalan dijalankan setiap terjadi pengalihan proses untuk memilih proses berikutnya yang harus dijalankan. 5) Penjadwal jangka menengah (medium term scheduller) Setelah eksekusi selama suatu waktu, proses mungkin menunda sebuah eksekusi karena membuat permintaan layanan masukan/keluaran atau memanggil suatu system call. Proses-proses tertunda tidak dapat membuat suatu kemajuan menuju selesai sampai kondisi-kondisi yang menyebabkan tertunda dihilangkan. Agar ruang memori dapat bermanfaat, maka proses dipindah dari memori utama ke memori sekunder agar tersedia ruang untuk proses-proses lain. Kapasitas memori utama terbatas untuk sejumlah proses aktif. Aktivitas pemindahan proses yang tertunda dari memori utama ke memori sekunder disebut swapping. Proses-proses mempunyai kepentingan kecil saat itu sebagai proses yang tertunda. Tetapi, begitu 43 kondisi yang membuatnya tertunda hilang dan dimasukkan kembali ke memori utama dan ready. 6) Penjadwal jangka panjang (long term scheduller) Penjadwal ini bekerja terhadap antrian batch dan memilih batch berikutnya yang harus dieksekusi. Batch biasanya adalah proses-proses dengan penggunaan sumber daya yang intensif (yaitu waktu pemroses, memori, masukan/keluaran), programprogram ini berprioritas rendah, digunakan sebagai pengisi (agar pemroses sibuk) selama periode aktivitas job-job interaktif rendah. PENJADWALAN PROSES SISTEM OPERASI SOLARIS Company /developer Oracle Corporation Programmed in C OS family Unix Source model Mixed open source / closed source Initial release 1992 Latest stable release 10 10/09 / October 8, 2009; 10 months ago Availablelanguage(s) English Availableprogramming languages(s) C Supported platforms SPARC, IA-32, x86-64,PowerPC (Solaris 2.5.1 only) Kernel type Monolithic Default user interface Java Desktop System orCDE License Various Official website oracle.com/solaris Solaris menggunakan penjadwalan berdasarkan prioritas dimana yang mempunyai prioritas yang lebih tinggi dijalankan terlebih dahulu. Informasi tentang penjadwalan kernel thread dapat dilihat dengan ps -elcL. Kernel Solaris adalah fully preemtible, artinya 44 semua thread, termasuk thread yang mendukung aktifitas kernel itu sendiri dapat ditunda untuk menjalankan thread dengan prioritas yang lebih tinggi. Gambar penjadwalan solaris Solaris mengenal 170 prioritas yang berbeda, 0-169. Terbagi dalam 4 kelas penjadwalan yang berbeda: 5. Real time (RT). Thread di kelas RT memiliki prioritas yang tetap dengan waktu kuantum yang tetap juga. Thread ini memiliki prioritas yang tinggi berkisar antara 100-159. Hal inilah yang membuat proses waktu nyata memiliki response time yang cepat. Proses waktu nyata akan dijalankan sebelum proses-proses dari kelas yang lain dijalankan sehingga dapat menghentikan proses di system class. Pada umumnya, hanya sedikit proses yang merupakan real time class. 6. System (SYS). Solaris menggunakan system class untuk menjalankan kernel proses, seperti penjadwalan dan paging daemon. Threads di kelas ini adalah “bound” threads, berarti bahwa mereka akan dijalankan sampai mereka di blok atau prosesnya sudah selesai. Prioritas untuk SYS threads berkisar 60-99. Sekali dibangun, prioritas dari sistem proses tidak dapat dirubah. System classdialokasikan untuk kernel use( user proses berjalan di kernel mode bukan di system class). 7. Time Sharing (TS). Time sharing class merupakan default class untuk proses dan kernel thread yang bersesuaian. Time slices masing-masing proses dibagi berdasarkan prioritasnya. Dalam hal ini, prioritas berbanding terbalik dengan time slices-nya. Untuk proses yang prioritasnya tinggi mempunyai time-slices yang pendek, dan sebaliknya proses dengan prioritas yang rendah mempunyai time slices yang lebih panjang. Besar prioritasnya berada antara 0-59. Proses yang interaktif berada di prioritas yang tinggi sedangkan proses CPU-bound mempunyai prioritas yang rendah. Aturan penjadwalan seperti ini memberikan response time yang baik untuk proses yang interaktif, dan troughput yang baik untuk proses CPU-bound. 8. Interactive (IA). Kelas Interaktif menggunakan aturan yang sama dengan aturan dengan kelas kelas time sharing, tetapi kelas ini memberikan prioritas yang tinggi untuk aplikasi jendela ( windowing application) sehingga menghasilkan performance yang lebih baik. Seperti TS, range IA berkisar 0-59. 45 Tabel . Solaris dispatch table for interactive and time sharing threads Priority Time quantum Time quantum expired return from sleep 0 200 0 50 5 200 0 50 10 160 0 51 15 160 5 51 20 120 10 52 25 120 15 52 30 80 20 53 35 80 25 54 40 40 30 55 45 40 35 56 50 40 40 58 55 40 45 58 59 20 49 59 Keterangan: Priority: prioritas berdasarkan kelas untuk time sharing dan interactive class. Nomor yang lebih tinggi menunjukkan prioritas yang lebih tinggi. Time quantum: waktu kuantum untuk setiap prioritas. Dapat diketahui bahwa fungsi waktu kuantum berbanding terbalik dengan prioritasnya. Time quantum expired: Prioritas terbaru untuk thread yang telah habis time slices-nya tanpa diblok. Dapat dilihat dari tabel bahwa thread yang CPUbound tetap mempunyai prioritas yang rendah. Return from sleep: Prioritas thread yang kembali dari sleeping(misalnya menunggu dari M/K). Seperti yang terlihat dari tabel ketika M/K berada di waiting thread, prioritasnya berada antara 50-59, hal ini menyebabkan response time yang baik untuk proses yang interaktif. 3. Fixed Priority (FX). Thread di kelas fixed priority memiliki range prioritas (0-59) yang sama seperti di time-sharing class; tetapi, prioritas mereka tidak akan berubah. 46 4. Fair Share Scheduler (FSS). Thread yang diatur oleh FSS dijadwalkan berdasar pembagian sumber daya dari CPU yang tersedia dan dialokasikan untuk himpunan proses-proses (yang dikenal sebagai project). FS juga berkisar 0-59. FSS and FX baru mulai diimplementasikan di Solaris 9. Seperti yang telah diketahui, setiap kelas penjadwalan mempunyai himpunan dari prioritas-prioritas. Tetapi, penjadwal mengubah class-specific priorities menjadi global priorities kemudian memilih threaddengan prioritas paling tinggi untuk dijalankan. Thread yang dipilih tersebut jalan di CPU sampai thread tersebut (1) di- block, (2) habis time slices-nya, atau (3) dihentikan oleh thread dengan prioritas yang lebih tinggi. Jika ada beberapa thread dengan prioritas yang sama, penjadwal akan menggunakan Round-Robin queue. Seperti yang pernah dijelaskan sebelumnya, Solaris terdahulu menggunakan many-to-many model tetapi solaris 9 berubah menggunakan one-to- one model. PENJADWALAN PROSES SISTEM OPERASI LINUX Company /developer Linus Torvalds and many others Programmed in Assembly, C OS family Unix-like Working state Current Source model Free and open source software Latest stable release 2.6.35.3 (August 20, 2010; 3 days ago)[1] [+/−] Latest unstable release 2.6.36-rc2 (August 23, 2010; 0 days ago)[2][+/−] Marketing target Desktops, servers, embedded devices Availablelanguage(s) Multi-lingual Availableprogramming languages(s) Assembly, C, C++ Supported platforms IA-32, MIPS, x86-64, SPARC,DEC Alpha, Itanium, PowerPC,ARM, m68k, PA-RISC, s390,SuperH, M32R and more 47 Kernel type Monolithic Userland GNU and others Default user interface Graphical (X Window System) License Various including GNU General Public License, BSD License, Apache License, MIT License, and others[3] Officialwebsite http://www.kernel.org Mulai di versi 2.5, Kernel linux dapat berjalan di berbagai algoritma penjadwalan UNIX tradisional. Dua masalah dengan penjadwal UNIX tradisional adalah tidak disediakannya dukungan yang cukup untuk SMP (symmetric multiprocessor) sistem dan tidak diperhitungkan dengan baik jumlah tasks pada sistem yang berkembang. Dalam versi 2.5, penjadwal memeriksa dengan teliti hal tersebut, dan sekarang kernel juga menyajikan algoritma penjadwalan yang dapat run dalam waktu yang konstan tidak tergantung dari jumlah tasks dalam sistem. Penjadwal yang baru juga menyediakan peningkatan dukungan untuk SMP, termasuk processor affinity dan load balancing, sebaik dalam menyediakan keadilan dan dukungan terhadap interactive tasks. Penjadwal linux adalah preemptive, algoritmanya berdasarkan prioritas dengan dua range prioritas yang terpisah: real-time range dari 0-99 dan nice value berkisar dari 100-140. Dua range ini dipetakan menjadi global priority scheme dimana nilai yang lebih rendah memiliki prioritas yang lebih tinggi. Tidak seperti penjadwal yang lain, Linux menetapkan prioritas yang lebih tinggi memiliki waktu kuantum yang lebih panjang dan prioritas yang lebih rendah memiliki waktu kuantum yang lebih pendek. Linux mengimplementasikan real time scheduling seperti yang didefinisikan oleh POSIX 1.b: First Come First Served dan Round Robin. Sistem waktu nyata( real time)diberikan untuk task yang prioritasnya tetap. Sedangkan task yang lainnya memiliki prioritas yang dinamis berdasakan nice values ditambah atau dikurangi dengan 5. Interaktifitas sebuah task menentukan apakah nilai 5 tersebut akan ditambah atau dikurangi dari nice value. Task yang lebih interaktif mempunyai ciri khas memiliki sleep times yang lebih lama dan karena itu maka ditambah dengan -5, karena penjadwal lebih menyukaiinteractive task. Hasil dari pendekatan ini akan membuat prioritas untuk interactive task lebih tinggi. 48 Sebaliknya, task dengan sleep time yang lebih pendek biasanya lebih CPU-bound jadi prioritasnya lebih rendah. Gambar . Hubungan antara prioritas dan waktu kuantum Task yang berjalan memenuhi syarat untuk dieksekusi oleh CPU selama time slice-nya masih ada. Ketika sebuah task telah kehabisan time slice-nya, maka task tersebut akan expired dan tidak memenuhi syarat untuk dieksekusi lagi sampai semua task yang lain sudah habis waktu kuantumnya. Kernel mengatur daftar semua task yang berjalan di runqueue data structure. Karena dukungan Linux untuk SMP, setiap prossesor mengatur runqueue mereka sendiri dan penjadwalan yang bebas. Setiap runqueue terdiri dari dua array prioritas – active dan expired. Active array terdiri dari semua task yang mempunyai sisa waktu time slices, dan expired array terdiri dari task yang telah berakhir. Setiap array prioritas ini memiliki daftar task indexed berdasakan prioritasnya. Penjadwal memilih task dengan prioritas paling tinggi di active array untuk dieksekusi dalam CPU. Di mesin multiprossesor, ini berarti setiap prossesor menjadwalkan prioritas paling tinggi dalam runqueue structure masing-masing. Ketika semua tasktelah habis time slices-nya (dimana, active array-nya sudah kosong), dua array prioritas bertukar; expired array menjadi active array, dan sebaliknya. Gambar . Daftar task indexed berdasarkan prioritas Penghitungan ulang dari task yang memiliki prioritas yang dinamis berlangsung ketika task telah menyelesaikan waktu kuantumnya dan akan dipindahkan ke expired array. Jadi, ketika ada dua larik ( array) ditukar, semua task di array aktif yang baru ditentukan prioritasnya yang baru dan disesuaikan juga time slices-nya. PENJADWALAN PROSES SISTEM OPERASI WINDOWS XP Developer Microsoft Corporation Release date RTM: August 24, 2001 Retail: October 25, 2001 (info) Current version 5.1.2600.5512 Service Pack 3 (x86 SP3) (21 April 2008; 2 years ago) (info) Source model Closed source, Shared source[1] 49 License Microsoft-EULA Kernel type Hybrid Update method Windows Update Platform support IA-32, x86-64, IA-64 Website Windows XP: Homepage Windows XP menggunakan algoritma, prioritas penjadwalan quantum-based berbasis reemptive priority scheduling . Gambar Proses Pada Windows Xp Threads dijadwalkan dalam proses, Karena prioritas preemptive algoritma diimplementasikan dengan beberapa queue, dapat dianggap sebagai algoritma multiple feedback-queue . Namun, masing-masing Threads biasanya terbatas pada kelompok kecil dari 5 level prioritas, Preemption dapat terjadi karena salah satu dari 4 alasan: o thread menjadi prioritas lebih tinggi-siap o thread berakhir o kuantum habis waktu o thread melakukan panggilan sistem pemblokiran, seperti untuk I / O, dalam hal ini meninggalkan keadaan ready menjadi keadaan menunggu. Gambar Quatum pada windows XP 32 tingkat prioritas digunakan, di mana prioritas 31 merupakan prioritas tertinggi dan prioritas 0 adalah prioritas terendah o memori manajemen thread: prioritas 0 o variabel kelas prioritas (1-15) o real-time kelas prioritas (16-31) Threads di kelas real-time telah tetap prioritasnya. Threads yang berjalan selalu dengan tingkat prioritas tertinggi. Jika tidak ada thread yang ready, Threads idle dijalankan. 50 Ketika waktu quantum thread habis, prioritasnya diturunkan, tetapi prioritasnya tidak pernah diturunkan terlalu jauh. Ketika Threads menjadi ready setelah keadaan menunggu, maka diberikan prioritas tertinggi setiap threads dari proses yang terkait dengan program yang saat ini pengguna gunakan diberikan prioritas lebih . ALGORITMA PENJADWALAN PROSES Algorima ini merupakan proses antrian, yang mana proses akan mendapatkan jatah waktu sebesar time quantum. Jika waktu quantumnya selesai maka prosesnya pun selesai. Proses ini merupakan proses yang adil karena tidak ada proses yang didahulukan, semua proses mendapatkan jatah waktu yang sama yaitu 1/n. Permasalahan utama pada Round Robin adalah menentukan besarnya time quantum. Jika time quantum yang ditentukan terlalu kecil, maka sebagian besar proses tidak akan selesai dalam 1 quantum. Hal ini tidak baik karena akan terjadi banyak switch, padahal CPU memerlukan waktu untuk beralih dari suatu proses ke proses lain (disebut dengan context switches time). Sebaliknya, jika time quantum terlalu besar, algoritma Round Robin akan berjalan seperti algoritma first come first served yang mana yang dating dahulu akan dilayani terlebih dahulu.Time quantum yang ideal adalah jika 80% dari total proses memiliki CPU burst time yang lebih kecil dari 1 time quantum. Gambar Urutan Kejadian Algoritma Round Robin Multiple Feedback Queue (MFQ) Algoritma ini merupakan algoritma yang mengizinkan proses untuk pindah antrian. Jika suatu proses menyita CPU terlalu lama, maka proses itu akan dipindahkan ke antrian yang lebih rendah. Hal ini akan sangat menguntungkan karena akan menggunakan waktu yang sedikit dalam pengerjaan proses-proses tersebut. Demikian pula dengan proses yang menunggu lama maka prose ini akan dinaikkan ke tingkat yang lebih tinggi. Dengan begitu CPU akan bekerja dengan penuh dan M/K dapat terus sibuk. Semakin rendah tingkatnya, panjang CPU burst proses juga semakin panjang. 51 Gambar Multilevel Feedback Queue Shortest Remaining First (SRF) Pada algoritma ini setiap proses yang ada di ready queue akan dieksekusi berdasarkan burst time terkecil. Hal ini mengakibatkan waiting time yang pendek untuk setiap proses dan karena hal tersebut maka waiting time rata-ratanya juga menjadi pendek, sehingga dapat dikatakan bahwa algoritma ini adalah algoritma yang optimal. Tabel Contoh Shortest Job First Contoh: Ada 4 buah proses yang datang berurutan yaitu P1 dengan arrival time pada 0.0 ms dan burst time 7 ms, P2 dengan arrival time pada 2.0 ms dan burst time 4 ms, P3 dengan arrival time pada 4.0 ms dan burst time 1 ms, P4 dengan arrival time pada 5.0 ms dan burst time 4 ms. Hitunglah waiting time rata-rata dan turnaround time dari keempat proses tersebut dengan mengunakan algoritma SJF. Average waiting time rata-rata untuk ketiga proses tersebut adalah sebesar (0 +6+3+7)/4=4 ms. Higest Ratio Next (HRN) Higest Ratio Next (HRN) Merupakan penjadwalan untuk mengoreksi kelemahan SJF yang berprioritas dinamis. HRN Adalah strategi penjadwalan dengan prioritas proses tidak hanya merupakan fungsi waktu layanan,tetapi juga jumlah waktu tunggu proses. Begitu proses mendapat jatah pemroses, maka proses berjalan sampai selesai. Prioritas dinamis HRN dihitung berdasarkan rumus berikut : Prioritas = (waktu tunggu + waktu layanan ) / waktu layanan. Karena waktu layanan muncul sebagai pembagi, maka job lebih pendek berprioritas lebih baik, karena waktu tunggu sebagai pembilang, maka proses yang telah menunggu lebih lama juga mempunyai kesempatan lebih bagus. Mengapa algoritma ini disebut HRN karena waktu tunggu ditambah waktu layanan adalah waktu tanggap, yang berarti waktu tanggap tertinggi yang harus dilayani. 52 Priority Schedulling (PS) Priority Scheduling merupakan algoritma penjadwalan yang mendahulukan proses yang memiliki prioritas tertinggi. Setiap proses memiliki prioritasnya masing-masing. Prioritas suatu proses dapat ditentukan melalui beberapa karakteristik antara lain: 1. Time limit. 2. Memory requirement. 3. Akses file. 4. Perbandingan antara burst M/K dengan CPU burst. 5. Tingkat kepentingan proses. Priority scheduling juga dapat dijalankan secara preemptive maupun non preemptive. Pada preemptive, jika ada suatu proses yang baru datang memiliki prioritas yang lebih tinggi daripada proses yang sedang dijalankan, maka proses yang sedang berjalan tersebut dihentikan, lalu CPU dialihkan untuk proses yang baru datang tersebut. Sementara itu, pada non-preemptive, proses yang baru datang tidak dapat menganggu proses yang sedang berjalan, tetapi hanya diletakkan di depan queue. Kelemahan pada priority scheduling adalah dapat terjadinya indefinite blocking( starvation). Suatu proses dengan prioritas yang rendah memiliki kemungkinan untuk tidak dieksekusi jika terdapat proses lain yang memiliki prioritas lebih tinggi darinya. Solusi dari permasalahan ini adalah aging, yaitu meningkatkan prioritas dari setiap proses yang menunggu dalam queue secara bertahap. Contoh: Setiap 10 menit, prioritas dari masingmasing proses yang menunggu dalam queue dinaikkan satu tingkat. Maka, suatu proses yang memiliki prioritas 127, setidaknya dalam 21 jam 20 menit, proses tersebut akan memiliki prioritas 0, yaitu prioritas yang tertinggi (semakin kecil angka menunjukkan bahwa prioritasnya semakin tinggi). Guaranteed Scheduling (GS) Penjadwalan ini memberikan janji yang realistis (memberi daya pemroses yang sama) untuk membuat dan menyesuaikan performance adalah jika ada N pemakai, sehingga setiap proses (pemakai) akan mendapatkan 1/N dari daya pemroses CPU. Untuk mewujudkannya, sistem harus selalu menyimpan informasi tentang jumlah waktu CPU untuk semua proses sejak login dan juga berapa lama pemakai sedang login. Kemudian jumlah waktu CPU, yaitu waktu mulai login dibagi dengan n, sehingga lebih mudah menghitung rasio waktu CPU. Karena jumlah waktu pemroses tiap pemakai dapat diketahui, maka dapat dihitung rasio antara waktu pemroses yang sesungguhnya harus diperoleh, yaitu 1/N waktu pemroses seluruhnya dan waktu pemroses yang telah diperuntukkan proses itu. Rasio 0,5 berarti sebuah proses hanya punya 0,5 dari apa yang waktu CPU miliki dan rasio 2,0 berarti sebuah proses hanya punya 2,0 dari apa yang waktu CPU miliki. Algoritma akan menjalankan proses dengan rasio paling rendah hingga naik ketingkat lebih tinggi diatas pesaing terdekatnya. Ide sederhana ini dapat diimplementasikan ke sistem real-time dan memiliki penjadwalan berprioritas dinamis. Deadlock Deadlock adalah keadaan dimana 2 atau lebih proses saling menunggu meminta resources untuk waktu yang tidak terbatas lamanya. Analoginya seperti pada kondisi jalan 53 raya dimana terjadi kemacetan parah. Deadlock adalah efek samping dari sinkronisasi, dimana satu variabel digunakan oleh 2 proses. Deadlock bisa digambarkan sebagai berikut: Kejadian Deadlock selalu tidak lepas dari sumber daya, bahwa hampir seluruhnya merupakan masalah sumber daya yang digunakan bersama-sama. Oleh karena itu, kita juga perlu tahu tentang jenis sumber daya, yaitu: sumber daya dapat digunakan lagi berulangulang dan sumber daya yang dapat digunakan dan habis dipakai atau dapat dikatakan sumber daya sekali pakai. Sumber daya ini tidak habis dipakai oleh proses mana pun.Tetapi setelah proses berakhir, sumber daya ini dikembalikan untuk dipakai oleh proses lain yang sebelumnya tidak kebagian sumber daya ini. Contohnya prosesor, Channel I/O, disk, semaphore. Contoh peran sumber daya jenis ini pada terjadinya Deadlock ialah misalnya sebuah proses memakai disk A dan B, maka akan terjadi Deadlock jika setiap proses sudah memiliki salah satu disk dan meminta disk yang lain. Masalah ini tidak hanya dirasakan oleh pemrogram tetapi oleh seorang yang merancang sebuah sistem operasi. Cara yang digunakan pada umumnya dengan cara memperhitungkan dahulu sumber daya yang digunakan oleh proses-proses yang akan menggunakan sumber daya tersebut. Contoh lain yang menyebabkan Deadlock dari sumber yang dapat dipakai berulang-ulang ialah berkaitan dengan jumlah proses yang memakai memori utama. Ada empat kondisi yang dapat menyebabkan terjadinya deadlock. Keempat kondisi tersebut tidak dapat berdiri sendiri, namun saling mendukung. 1. Mutual exclusion. Hanya ada satu proses yang boleh memakai sumber daya, dan proses lain yang ingin memakai sumber daya tersebut harus menunggu hingga sumber daya tadi dilepaskan atau tidak ada proses yang memakai sumber daya tersebut. 2. Hold and wait. Proses yang sedang memakai sumber daya boleh meminta sumber daya lagi maksudnya menunggu hingga benar-benar sumber daya yang diminta tidak dipakai oleh proses lain, hal ini dapat menyebabkan kelaparan sumber daya sebab dapat saja sebuah proses tidak mendapat sumber daya dalam waktu yang lama. 3. No preemption. Sumber daya yang ada pada sebuah proses tidak boleh diambil begitu saja oleh proses lainnya. Untuk mendapatkan sumber daya tersebut, maka harus dilepaskan terlebih dahulu oleh proses yang memegangnya, selain itu seluruh proses menunggu dan mempersilahkan hanya proses yang memiliki sumber daya yang boleh berjalan. 4. Circular wait. Kondisi seperti rantai, yaitu sebuah proses membutuhkan sumber daya yang dipegang proses berikutnya. Strategi mengatasi Deadlock : Ada beberapa cara untuk menanggulangi terjadinya deadlock, diantaranya adalah: Mengabaikan masalah deadlock. Mendeteksi dan memperbaiki Penghindaran yang terus menerus dan pengalokasian yang baik dengan menggunakan protocol untuk memastikan sistem tidak pernah memasuki keadaan deadlock. Yaitu dengan deadlock avoidance sistem untuk mendata informasi tambahan tentang proses mana yang akan meminta dan menggunakan sumber daya. Pencegahan yang secara struktur bertentangan dengan empat kondisi terjadinya deadlock dengan deadlock prevention sistem untuk memastikan bahwa salah satu kondisi yang penting tidak dapat menunggu. 54 Mengabaikan Masalah Deadlock Untuk memastikan sistem tidak memasuki deadlock, sistem dapat menggunakan pencegahan deadlock atau penghindaran deadlock. Penghindaran deadlock membutuhkan informasi tentang sumber daya yang mana yang akan suatu proses meminta dan berapa lama akan digunakan. Dengan informasi tersebut dapat diputuskan apakah suatu proses harus menunggu atau tidak. Hal ini disebabkan oleh keberadaan sumber daya, apakah ia sedang digunakan oleh proses lain atau tidak. Metode ini lebih dikenal dengan Algoritma Ostrich. Dalam algoritma ini dikatakan bahwa untuk menghadapi Deadlock ialah dengan berpura-pura bahwa tidak ada masalah apa pun. Hal ini seakanakan melakukan suatu hal yang fatal, tetapi sistem operasi Unix menanggulangi Deadlock dengan cara ini dengan tidak mendeteksi Deadlock dan membiarkannya secara otomatis mematikan program sehingga seakan-akan tidak terjadi apa pun. Jadi jika terjadi Deadlock, maka tabel akan penuh, sehingga proses yang menjalankan proses melalui operator harus menunggu pada waktu tertentu dan mencoba lagi. Mendeteksi dan Memperbaiki Caranya ialah dengan cara mendeteksi jika terjadi deadlock pada suatu proses maka dideteksi system mana yang terlibat di dalamnya. Setelah diketahui sistem mana saja yang terlibat maka diadakan proses untuk memperbaiki dan menjadikan sistem berjalan kembali. Jika sebuah sistem tidak memastikan deadlock akan terjadi, dan juga tidak didukung dengan pendeteksian deadlock serta pencegahannya, maka kita akan sampai pada kondisi deadlock yang dapat berpengaruh terhadap performance sistem karena sumber daya tidak dapat digunakan oleh proses sehingga prosesproses yang lain juga terganggu. Akhirnya sistem akan berhenti dan harus direstart. Hal-hal yang terjadi dalam mendeteksi adanya Deadlock adalah: Permintaan sumber daya dikabulkan selama memungkinkan. Sistem operasi memeriksa adakah kondisi circular wait secara periodik. Pemeriksaan adanya deadlock dapat dilakukan setiap ada sumber daya yang hendak digunakan oleh sebuah proses. Memeriksa dengan algoritma tertentu. Ada beberapa jalan untuk kembali dari Deadlock, yaitu: Lewat Preemption Dengan cara untuk sementara waktu menjauhkan sumber daya dari pemakainya, dan memberikannya pada proses yang lain. Ide untuk memberi pada proses lain tanpa diketahui oleh pemilik dari sumber daya tersebut tergantung dari sifat sumber daya itu sendiri. Perbaikan dengan cara ini sangat sulit atau dapat dikatakan tidak mungkin. Cara ini dapat dilakukan dengan memilih korban yang akan dikorbankan atau diambil sumber dayanya untuk sementara, tentu saja harus dengan perhitungan yang cukup agar waktu yang dikorbankan seminimal mungkin. Setelah kita melakukan preemption dilakukan pengkondisian proses tersebut dalam kondisi aman. Setelah itu proses dilakukan lagi dalam kondisi aman tersebut. 55 Lewat Melacak Kembali Setelah melakukan beberapa langkah preemption, maka proses utama yang diambil sumber dayanya akan berhenti dan tidak dapat melanjutkan kegiatannya, oleh karena itu dibutuhkan langkah untuk kembali pada keadaan aman dimana proses masih berjalan dan memulai proses lagi dari situ. Tetapi untuk beberapa keadaan sangat sulit menentukan kondisi aman tersebut, oleh karena itu umumnya dilakukan cara mematikan program tersebut lalu memulai kembali proses. Meski pun sebenarnya lebih efektif jika hanya mundur beberapa langkah saja sampai deadlock tidak terjadi lagi. Untuk beberapa sistem mencoba dengan cara mengadakan pengecekan beberapa kali secara periodik dan menandai tempat terakhir kali menulis ke disk, sehingga saat terjadi deadlock dapat mulai dari tempat terakhir penandaannya berada. Lewat mematikan proses yang menyebabkan Deadlock Cara yang paling umum ialah mematikan semua proses yang mengalami deadlock. Cara ini paling umum dilakukan dan dilakukan oleh hampir semua sistem operasi. Namun, untuk beberapa sistem, kita juga dapat mematikan beberapa proses saja dalam siklus deadlock untuk menghindari deadlock dan mempersilahkan proses lainnya kembali berjalan. Atau dipilih salah satu korban untuk melepaskan sumber dayanya, dengan cara ini maka masalah pemilihan korban menjadi lebih selektif, sebab telah diperhitungkan beberapa kemungkinan jika si proses harus melepaskan sumber dayanya. Kriteria pemilihan korban ialah: • Yang paling jarang memakai prosesor • Yang paling sedikit hasil programnya • Yang paling banyak memakai sumber daya sampai saat ini • Yang alokasi sumber daya totalnya tersedkit • Yang memiliki prioritas terkecil Menghindari Deadlock Pada sistem kebanyakan permintaan terhadap sumber daya dilakukan sebanyak sekali saja. Sistem sudah harus dapat mengenali bahwa sumber daya itu aman atau tidak (tidak terkena deadlock), setelah itu baru dialokasikan. Ada dua cara yaitu: Jangan memulai proses apa pun jika proses tersebut akan membawanya pada kondisi deadlock, sehingga tidak mungkin terjadi deadlock karena pada saat akan menuju deadlock, proses sudah dicegah. Jangan memberi kesempatan pada suatu proses untuk meminta sumber daya lagi jika penambahan ini akan membawa kita pada suatu keadaan deadlock. Jadi diadakan dua kali penjagaan, yaitu saat pengalokasian awal, dijaga agar tidak deadlock dan ditambah dengan penjagaan kedua saat suatu proses meminta sumber daya, dijaga agar jangan sampai terjadi deadlock. Pada sistem deadlock avoidance (penghindaran) dilakukan dengan cara memastikan bahwa program memiliki maksimum permintaan. Dengan kata lain cara sistem ini memastikan terlebih dahulu bahwa sistem akan selalu dalam kondisi aman. Baik mengadakan permintaan awal atau pun saat meminta permintaan sumber daya tambahan, sistem harus selalu berada dalam kondisi aman 56 Mutual exclusion Dalam ilmu komputer, saling pengecualian mengacu pada kebutuhan untuk menjamin bahwa tidak ada dua proses atau benang (selanjutnya disebut hanya sebagai proses) berada di bagian kritis mereka pada waktu yang sama. Di sini, bagian kritis mengacu pada periode waktu ketika proses mengakses sumber daya bersama, seperti memori bersama. Masalah mutual exclusion pertama kali diidentifikasi dan dipecahkan oleh Edsger W. Dijkstra dalam seminal 1965 makalahnya berjudul: Solusi dari masalah dalam kontrol pemrograman konkuren. Contoh sederhana mengapa saling pengecualian penting dalam praktek dapat divisualisasikan menggunakan linked list tunggal. Dalam sebuah linked list penghapusan node dilakukan dengan mengubah "berikutnya" pointer dari node sebelumnya untuk menunjuk ke simpul berikutnya (misalnya, jika node i sedang dihapus maka "berikutnya" pointer node i-1 akan diubah untuk menunjuk ke node i +1). Dalam eksekusi mana seperti linked list sedang dibagi antara beberapa proses, dua proses mungkin mencoba untuk menghapus dua node yang berbeda secara bersamaan mengakibatkan masalah berikut: biarkan node i dan i +1 menjadi node yang akan dihapus, lebih jauh lagi, janganlah dari mereka menjadi kepala atau ekor, pointer berikutnya simpul i-1 akan berubah untuk menunjuk ke node i +1 dan pointer berikutnya node i akan berubah untuk menunjuk ke node i +2. Meskipun kedua operasi penghapusan lengkap berhasil, node i +1 tetap ada dalam daftar sejak i-1 dibuat untuk menunjuk ke i +1 skipping node i (yang dibuat untuk menunjuk ke i +2). Hal ini dapat dilihat pada Gambar 1. Masalah ini dapat dihindari dengan menggunakan pengecualian bersama untuk memastikan bahwa update simultan ke bagian yang sama dari daftar tidak dapat terjadi. Isi Menegakkan mutual exclusion. Ada baik perangkat lunak dan solusi perangkat keras untuk menegakkan saling pengecualian. Beberapa solusi yang berbeda dibahas di bawah ini: Solusi perangkat keras Pada sistem prosesor tunggal, solusi yang paling sederhana untuk mencapai saling pengecualian adalah untuk menonaktifkan interupsi selama proses 'bagian kritis. Ini akan mencegah rutinitas layanan interupsi dari berjalan (efektif mencegah proses dari yang mendahului). Meskipun ini adalah solusi efektif, hal itu menyebabkan banyak masalah. Jika suatu bagian kritis adalah panjang, maka jam sistem akan melayang setiap kali bagian kritis dieksekusi karena interupsi timer tidak lagi dilayani, sehingga pelacakan waktu mustahil selama bagian kritis. Juga, jika suatu proses menghentikan selama bagian kritis, kontrol tidak akan pernah kembali ke proses lain, secara efektif menghentikan seluruh sistem. Sebuah metode yang lebih elegan untuk mencapai saling pengecualian adalah sibuk-tunggu. Sibuk-tunggu adalah efektif untuk kedua uniprocessor dan sistem multiprosesor. Penggunaan memori bersama dan tes-dan-set instruksi atom memberikan pengecualian bersama. Sebuah proses dapat menguji-dan-set pada sebuah lokasi di memori bersama, dan karena operasi adalah atom, hanya satu proses dapat mengatur bendera pada suatu waktu. Setiap proses yang tidak berhasil dalam menetapkan bendera dapat pergi untuk melakukan tugas-tugas lain dan coba 57 lagi nanti, lepaskan prosesor ke proses lain dan coba lagi nanti, atau terus loop sementara memeriksa bendera sampai berhasil memperolehnya. Preemption masih mungkin, jadi metode ini memungkinkan sistem untuk terus berfungsi - bahkan jika suatu proses menghentikan sambil memegang kunci. Beberapa operasi atom lainnya dapat digunakan untuk memberikan mutual exclusion struktur data, yang paling terkenal adalah Bandingkan-Dan-Swap (CAS). CAS dapat digunakan untuk mencapai saling pengecualian menunggu gratis untuk setiap struktur data bersama dengan membuat daftar link di mana setiap node merupakan operasi yang diinginkan yang akan dilakukan. CAS kemudian digunakan untuk mengubah pointer dalam daftar terkait selama penyisipan simpul baru. Hanya satu proses dapat berhasil dalam CAS nya, semua proses lain mencoba untuk menambahkan node pada saat yang sama harus mencoba lagi. Setiap proses kemudian dapat menyimpan salinan lokal dari struktur data, dan setelah melintasi linked list, dapat melakukan setiap operasi dari daftar pada copy lokal. Solusi Software. Selain solusi perangkat keras yang didukung, beberapa solusi perangkat lunak yang ada yang menggunakan sibuk menunggu untuk mencapai saling pengecualian. Contoh ini meliputi: Algoritma Dekker Algoritma Peterson Lamport bakery algoritma. Algoritma Szymanski Algoritma roti hitam-putih Taubenfeld itu. Algoritma ini tidak bekerja jika eksekusi out-of-order yang digunakan pada platform yang mengeksekusi mereka. Programmer harus menentukan memesan ketat pada operasi memori dalam thread. Hal ini sering lebih baik untuk menggunakan fasilitas sinkronisasi yang disediakan oleh multithreading perpustakaan sistem operasi, yang akan mengambil keuntungan dari solusi perangkat keras jika memungkinkan, tetapi akan menggunakan solusi perangkat lunak jika tidak ada solusi perangkat keras yang ada. Misalnya, ketika perpustakaan kunci sistem operasi yang digunakan dan benang mencoba untuk memperoleh kunci sudah diperoleh, sistem operasi dapat menangguhkan benang menggunakan saklar konteks dan swap keluar dengan benang lain yang siap untuk dijalankan, atau bisa menempatkan prosesor ke dalam keadaan daya rendah jika tidak ada thread lain yang dapat dijalankan. Oleh karena itu, metode saling pengecualian yang paling modern berusaha untuk mengurangi latensi dan sibuk-menunggu dengan menggunakan antrian dan konteks switch. Namun, jika waktu yang dihabiskan menangguhkan benang dan kemudian mengembalikan itu dapat terbukti selalu lebih dari waktu yang harus menunggu untuk sebuah thread untuk menjadi siap untuk menjalankan setelah diblokir dalam situasi tertentu, maka spinlocks adalah denda solusi (untuk situasi yang hanya). 58 Mutual exclusion canggih Solusi yang dijelaskan di atas dapat digunakan untuk membangun sinkronisasi primitif di bawah ini: Kunci Mutexes reentrant Semaphore Monitor Message passing Ruang tupel Banyak bentuk mutual exclusion memiliki efek samping. Misalnya, Semaphore klasik mengizinkan deadlock, di mana satu proses mendapatkan semaphore, proses lain mendapat semaphore kedua, dan kemudian keduanya menunggu selamanya untuk semaphore lainnya akan dirilis. Lain efek samping umum termasuk kelaparan, di mana proses pernah mendapat sumber daya yang cukup untuk menjalankan sampai selesai, inversi prioritas, di mana thread prioritas yang lebih tinggi menunggu thread prioritas rendah, dan "latency tinggi", di mana respon terhadap interupsi adalah tidak cepat. Banyak penelitian yang bertujuan untuk menghilangkan efek di atas, sering dengan tujuan menjamin kemajuan non-blocking. Tidak ada skema yang sempurna dikenal. Memblokir sistem panggilan digunakan untuk tidur seluruh proses. Sampai panggilan tersebut menjadi benang aman, tidak ada mekanisme yang tepat untuk tidur satu thread dalam proses . Kunci eksklusif Reksa pada objek memori (dalam konteks ini berbagi proses / benang memori) yang diperlukan seperti pada objek database (kunci file). Tentu saja, objek database dapat memiliki non-eksklusif (baca) kunci dan karenanya David Hostettler Wain diusulkan nonexs - kunci memori non-eksklusif pada tahun 2006. Ini masih belum diterapkan secara luas. Concurrency Concurrency Basis Data Cocurrency adalah ketika DBMS mengijinkan banyak transaksi pada saat bersamaan untuk mengakses data yang sama. Dibutuhkan Concurrency Control Mechanism (CCM) agar transaksi tidak saling “mengganggu”. Terdapat 3 masalah dalam concurrency, yaitu: Lost update problem Uncommited Depedency Problem Incosistent Analysis Problem 59 Cara penyelesaian masalah cocurrency adalah dengan cara: Harus adanya aturan (Harus adanya role accesbility, tidak di perbolehkan adanya Role super admin) Commit harus bisa masuk level fisik. Ketika data tidak commit maka bisa mempengaruhi sistem. Locking Locking terjadi jika suatu transaksi ingin record atau resource tidak berubah dalam waktu tertentu. Jenis Locking terdiri dari 2, yaitu: c. Exclusive Lock yaitu locking yang hanya bisa di gunakan untuk mengupdate dan membaca transaksi d. Shared Lock yaitu locking yang hanya bisa di gunakan untuk membaca transaksi. Hal yang harus di hindari dalam locking adalah Dead Lock. Dead Lock adalah kondisi pada saat dua atau lebih transaksi berada pada posisi wait-state. Satu sama lain menunggu lock untuk di lepaskan sebelum dapat memulai transaksi. Jalan keluar untuk Deadlock adalah dengan cara: Deteksi dan Pecahkan Deadlock. Cara deteksi deadlock adalah dengan metode wait for graph. Dan cara untuk pecahkan deadlock adalah dengan cara salah satu transaksi di rollback paksa. Dengan menggunakan Ostrich Algorithm. Yaitu dengan cara di abaikan atau di biarkan saja seperti burung unta ketika ada masalah dia menyembunyikan kepalanya di dalam tanah. Isolation Level 2 level pengisolasian untuk memecahkan masalah transaksi, yaitu: Read Commited Transaksi hanya dapat melihat perubahan data setelah transaksi lain di commit pada data tersebut 60 Serializable Level isolasi paling ketat. Dilaksanakan secara serial (berurutan). Di level ini sebuah query hanya akan melihat data yang sudah di commit sebelum transaksi di mulai. Kompromi isolation Level. Adalah masalah yang ada pada isolation level, yaitu: Dirty Read: Dapat melihat record yang sudah di rollback transaksi lain atau yang belum dicommit. Nonrepeatable read: Transaksi 1 baca sebuah record, record tersebut diubah transaksi lain, saat Transaksi 1 membaca lagi nilainya sudah berubah Phantoms: retrieve menghasilkan record baru yang sebelumnya tidak ada . 61 KELOMPOK 5 DOS (Disk Operating System) adalah sistem operasi berbasis teks yang dikeluarkan microsoft sebelum windows atau dapat dikatakan sebagai sistem operasi yang menggunakan interface command-line yang digunakan para pengguna komputer pada dekade tahun 1980-an. untuk fasilitas booting komputer dan menjalankan beberapa aplikasi software, misalnya WS dan Lotus. Fungsi DOS yang digunakan pada zaman sekarang adalah penggunaan dalam menyelesaikan beberapa troubleshooting pada hardware komputer. Walaupun bisa juga dilakukan pada sistem operasi berbasis GUI. Sama seperti Terminal di Linux, DOS memiliki daftar perintah berbasis teks yang harus diketik di Console DOS atau lazim disebut Command Prompt. Mengetahui penggunaan perintah DOS adalah pengetahuan tersendiri yang perlu dipahami oleh administrator jaringan berbasis windows. Anda akan lebih mudah menguasai NetBios Hacking atau remote komputer berbasis console di windows dengan mengetahui perintah- perintah DOS. Disebut DOS (Disk Operating system) karena sistem operasi ini tersimpan dalam suatu disket maupun harddisk. MS-DOS sebenarnya dibuat oleh sebuah perusahaan pembuat komputer bernama Seattle Computer Products (SCP) yang dikepalai oleh Tim Patterson yang direkrut oleh Microsoft untuk mengembangkan DOS pada tahun 1980 sebagai sebuah perangkat lunak sistem operasi dengan nama Q-DOS (singkatan dari Quick and Dirty Operating System), yang selanjutnya diubah namanya menjadi 86-DOS,karena QDOS didesain agar dapat berjalan pada komputer dengan prosesor Intel 8086. Microsoftpun membeli lisensinya dengn harga 50.000 dolar Amerika dari SCP, lalu mengubah namanya menjadi MS-DOS. Selanjutnya, saat IBM hendak meluncurkan komputer pribadi yang disebut dengan IBM PC, Microsoft pun menjual lisensi MS-DOS kepada IBM. DOS menempati posisi sebagai operating system yang menggunakan CUI (Character User Interface). Dalam hal ini DOS yang saat ini telah tergantikan /diperbarui dengan adanya Microsoft Windows versi 9x, 2k, dan sebagainya yang berbasiskan GUI (Grafical user Interface). Misalnya seperti sistem operasi Microsoft Window 3.1, Windows 95 atau 98 dsb. Karena berbasis text, DOS mempunyai keunggulan yaitu hanya membutuhkan tempat penyimpanan dan memory komputer yang sedikit dibandingkan dengan OS yang berbasis grafis. Namun keunggulan OS berbasis grafis adalah tampilan pada layar monitor lebih menarik, sistem pengoperasiannya semakin lebih mudah dipelajari (user friendly) karena dibantu dengan gambar / icon, dan tampilannya dapat dimodifikasi sesuai keinginan si pemakai. Tentu saja kelebihan-kelebihan tersebut harus “mengorbankan” sisi lainnya, yaitu membutuhkan ruang penyimpanan yang lebih banyak dan dalam pengoperasiannya membutuhkan memory komputer yang lebih besar. 62 MS-DOS dianggap sebagai standart dari sistem operasi pada computer mikro 16 bit. Sebelum MS-DOS, untuk komputer mikro 8 bit, CP/M yang dianggap sebagai standartnya. Gary kildall mengembangkan CP/M untuk microprocessor intel 8080. Hampir semua computer mikro pada saat itu menggunakan microprosessor intel 8080, sehingga banyak dipilih sebagai sistem operasinya. CP/M sukses luar biasa sampai IBM mengeluarkan produknya, yaitu IBM PC yang menggunakan microprossesor intel 8086 dengan sistem operasi IBM PC-DOS. ARSITEKTUR DOS Arsitektur DOS itu ada dua, yakni : 1. Nama Perangkat Cadangan Nama perangkat yang ada di DOS ini tidak dapat digunakan sebagai nama file tanpa ekstensi sebab ini digunakan untuk mengirim aplikasi output untuk periferal hardware. Pembatasan ini juga mempengaruhi beberapa versi Windows, dalam beberapa kasus menyebabkan crash dan kerentanan keamanan. Berikut adalah daftar sebagian nama-nama perangkat yang dicadangkan: NUL, COM1 atau AUX, COM2, COM3, COM4, CON, LPT1 atau PRN, LPT2, LPT3, dan CLOCK. 2. Rangkaian BOOT Sebuah PC modern dikonfigurasi untuk mencoba melakukan boot dari berbagai perangkat dalam urutan tertentu. Jika komputer Anda tidak bisa boot dari perangkat yang anda inginkan, misalnya floppy drive, Anda mungkin harus masuk ke fungsi setup BIOS dengan menekan tombol khusus saat komputer mulai dihidupkan -- Delete, F1, F2, F10 atau F12 -- kemudian mengubah urutan boot. Command Interpreter merupakan bagian dari Sistem Operasi yang mekanisme kerjanya ialah untuk menerima perintah dari user yang kemudian diterjemahkan ke dalam bahasa mesin sehingga dapat dijalankan oleh sistem. Fungsi Command Interpreter yaitu, mengeksekusi kode program secara langsung, menerjemahkan kode ke dalam beberapa representasi intermediate yang efisien lalu segera mengeksekusinya dan mengeksekusi kode tersimpan yang dibuat oleh kompiler secara eksplisit sebagai bagian dari sistem penerjemah. 63 CMD (Command Prompt) atau DOS Prompt adalah sebuah command line interfaces (CLI) pada sistem operasi windows untuk mengeksekusi file dengan cara memasukan perintah-perintah menggunakan keyboard. Wildcard adalah karakter khusus yang bisa menggantikan karakter tidak dikenal di nilai teks dan praktis untuk menemukan beberapa data yang mirip tapi tidak identik. Wildcard juga bisa membantu dengan mendapatkan data berdasarkan kecocokan pola yang ditentukan. Sebagai contoh, menemukan setiap orang yang bernama John di Park Street. 64 KELOMPOK 6 PERINTAH DALAM DOS PENGERTIAN DOS Disk Operating System (disingkat DOS) adalah keluarga sistem operasi yang digunakan di komputer pribadi. Sekarang, istilah DOS menjadi istilah generik bagi setiap sistem operasi yang dimuat dari perangkat penyimpanan berupa disk saat sistem komputer dinyalakan. Sistem Operasi Disk (Disk Operating System – DOS) merupakan sistem yang digunakan untuk mengelola seluruh sumber daya pada sistem komputer. Sumber daya di komputer baik hardware dan software harus dikelola dengan baik sehingga sistem dapat bekerja dengan baik (stable), menghindari perebutan pengerjaan (bottleneck), memberikan prioritan pengerjaan, menghindari gangguan-gangguan (virus, hacker), mengatasi sistem dari kegagalan (roolback). Keluarga DOS terbagi menjadi beberapa kelas, yakni : a. MS-DOS (Microsoft Disk Operating System b. IBM PC-DOS (International Business Machine Personal Computer Disk Operating System c. DR-DOS (Digital Research Disk Operating System) d. Novell Personal Netware e. Caldera DOS f. FreeDOS Perintah dalam DOS dan Perintah pengaturan file & directory A. Penggolongan Perintah dalam DOS Penggolongan perintah dalam DOS ada 2 macam yaitu, Perintah Internal (Internal Command), dan Perintah External (External Command). I. Internal Command a. Instruksi ada dimemory di dalam Komputer (RAM). b. Terus aktif saat PC-DOS diaktifkan sampai komputer dimatikan. 65 c. Perintah langsung dikerjakan oleh computer. Cth: CLS, DIR, COPY, REN, DEL, DATE, VER, TIME, TYPE, ERASE, PROMPT. II. External Command a. File nya ada di luar memori yaitu di disket. b. Untuk memberikan perintah ini harus ada file nya. Cth: Kalau kita mau memformat disket baru harus ada file FORMAT.COM pada disket yang disimpan pada drive yang akan diaktifkan. c. Untuk menjalankan, harus dipanggil dulu ke memory dengan cara ketik nama file tersebut. d. Perintah tidak langsung dikerjakan oleh komputer pada waktu komputer dinyalakan. Cth: FORMAT, DISKCOPY, LABEL, COMP, CHKDSK, MODE, DISK COMP, DLL. B. Perintah Pengaturan File dan Directory 1. Copy Perintah ini digunakan untuk menyalin atau mengkopy file. Bentuk umum perintah ini adalah sebagai berikut : Copy [file_asal ] [file_tujuan ] Contoh : A:\>copy a:\tugas c:\latdos Perintah dia as menunjukan perintah untuk mengkopi file pada directory tugas di disket ,dan disalin a au dicopykan ke directori c:\latdos 2. DEL Berfungsi untuk menghapus atau mendelete file. Bentuk umum : Del [nama_file ] Contoh: C:\latdos>del *.doc {digunakan untuk menghapus semua file yang berektensi doc}. 3. DIR Bentuk umumnya : DIR(drive:)(path)(filename)(/p)(/w)(/a)((:atribs))(/o)((:)(/s)(/b)dir Menampilkan file-file dalam root directory 4. REN Digunakan untuk mengubah (Rename)nama file dengan file yang baru. Perintah ini tidak akan mengubah isi dari file tersebut. Bentuk umumnya: REN Contoh: C:\>ren tugasm~1.doc tugasku.doc 66 Perintah diatas berarti mengubah nama file dari tugasm~1.doc menjadi tugasku.doc 5. VOL Perintah ini digunakan untuk menampilkan Volume label atau nomor seri dari sebuah disk. Contoh: A:\>Vol 6. TYPE Digunakan untuk menampilkan file ext.perintah ini hanya bisa digunakan untuk satu file saja dan hanya untuk file text. Contoh: A:\>type surat.txt {diasumsikan file surat.txt ada di disket} 7. XCOPY Bentuk Umum: XCOPY SUMBER [DESTINATION ] [/Y|-Y ] [/A|/M ] [/D:DATE ] [/P ] [/S ] [/E ] [/V ][/W ] Keterangan : DESTINATION diisi dengan subdir letak file secara lengkap. /Y :Untuk tidak menampilkan pesan jika terjadi penimpaan file. /-Y :Untuk menampilkan pesan jika terjadi penimpaan file. /A :Menyalin hanya pada file yang bera ribut archieve(arsip). /M :Menyalin file yang elah diberi attribute archieve.Switch ini berbeda dengan /A karena Switch /M merubah atribute file asal. /D :date menyalin hanya file yang dimodivikasi pada tanggal yang telah dispesifikasikan. /P :digunakan agar MS-DOS menanyakan terlebih dahulu setiap aktifitas XCOPY. /S :Menyalin suatu diraktori berikut seluruh file dan subdirektori didalamnya . Kecuali direktori kosong. /E :Digunakan bersama switch /S yang fungsinya untuk menyalin suatu direktori beriku sub-sub directory didalamnya termasuk direktori yang kosong. /V :untuk memeriksa setiap file yang disalinkan tersebut sama dengan file asal. /W :Digunakan agar MS-DOS menampilkan pesan-pesan terlebih dahulu dan menanyakan tindakan selanjutnya,sebelum xccopy menyalin file-file tersebut. Contoh: A:\>xcopy a:c:/s/e 8. MOVE Perintah ini digunakan untuk memindahkan satu a au beberapa file pada empat yang kita inginkan.Instruksi Move selain untuk memindahkan file,juga bisa menggan i nama direktori dan nama file yang dipindahkan.Bentuk Umum: 67 MOVE [drive:] [path ] [filename ],[drive ] [filename […]] destination Parameter: [drive:]][path ]filename :menspesifikasikan lokasi dan nama dari file-file yang kita pindahkan. Contoh: A:\>MOVE A:\tugas tugasm~1.doc C:\latdos Ar inya memindahkan file command.com ke dalam sub direktori latdos di drive C: Catatan: Instruksi dia as hanya dapat berjalan jika file move.exe ada pada dos anda dan berada di roo direktori atau berada didirectori lain dengan catatan direktori ersebut elah diberi path. 9. ATTRIB Bentuk umumnya : ATTRIBUT(+R|-R)(+A|-A)(+S|-S)(+H|-H)((drive:)(path)filename)(/S) Digunakan untuk mengubah file permission,misalnya membua file bera ribut read only,Hidden dan sebagainya Parameter : (drive:)(path)filename menentukan letak dan nama dari file yang akan diubah. +:Mengadakan suatu attribute. -:menghilangkan attribute. R :Mengubah a tribute file menjadi Read Only.File yang elah diubah menjadi readonly tidak dapa diubah digan i a aupun dihapus. A :mengubah attribute file menjadi Archieve (file yang telah memiliki arsip). S :Mengubah attribute menjadi sys em. H :mengubah attribute menjadi hidden. /s :memproses file pada direktori maupun seluruh sub direktori. Contoh: C:\>attrib+h+r C:\latdos \*.* 10. MD|MKDIR (Make directory) Bentuk umum: MD [Nama_direktory ] Contoh: C:\>md dos622 C:\>md data 68 11. CD /CHDIR Change directory atau pindah directory. Perintah ini digunakan untuk pindah directory a au mengubah directory aktif. Contoh: C:\>cd dos622 12. RD (Remove Directory) Bentuk Umum: RD [nama_sub_directory ] Perintah Rd digunakan utuk menghapus subdirectory.Syara agar bisa menghapus sebuah directory adalah: 1`Posisi penghapusan subdirectory yang akan dihapus harus berada diluar dari subdirektori tersebut. 2`Direktori yang akan dihapus harus benar-benar kosong.Jika tidak kosong gunakan insstruksi del*.* 13. DELTREE Bentuk Umum: DELTREE (/Y)(drive:)path 1`Drive path menentukan le ak dan nama direktori yang akan dihapus. 1`Switch /y agar perintah del ree tidak menampilkan konfirmasi penghapusan Contoh: a:\>deltree c:\data Perintah Dasar DOS DOS merupakan sistem operasi yang menggunakan interface command-line yang digunakan para pengguna komputer pada dekade tahun 1980-an. Untuk fasilitas booting komputer dan menjalankan beberapa aplikasi software, misalnya WS dan Lotus. Masih banyak Fungsi DOS yang digunakan pada zaman sekarang, terutama dalam menyelesaikan beberapa troubleshooting pada hardware komputer. Walaupun bisa juga dilakukan pada sistem operasi berbasis GUI. Berikut ini fungsi-fungsi DOS: • Mengorganisasikan atau mengendalikan kegiatan komputer • Mengatur memori • Mengatur proses input dan output data • Management file • Management directory Dalam menggunakan DOS diperlukan pemahaman tentang perintah perintah untuk menjalankan DOS. Untuk masuk ke DOS sendiri cukup klik run-cmd-enter…baik sekarang akan saya berikan beberapa peritah yang dapat anda gunakan dalam DOS. 69 1. cd :Memindah direktori. misalnya cd windows, untuk pindah ke direktori windows 2. copy Meng-copy file 3. copy file1.txt filebaru.txt Meng-copy file1.txt, nama file hasil copy-an adalah filebaru.txt. Jadi akan terdapat file1.txt dan filebaru.txt dengan isi yang sama. Ganti file1.txt dan filebaru.txt dengan nama file yang akan Anda copy 4. copy file1.txt c:\data Mengcopy file1.txt ke directory data pada drive C (nama file hasil copy-an adalah file1.txt) 5. copy file1.txt c:\data\filebaru.txt Meng-copy file1.txt ke directory data dengan nama file hasil copy-an filebaru.txt 6. dir menampilkan file dan direktori 7. dir d: membuka file di direktori d 8. dir /w Menampilkan file dan directory secara “singkat” (cuma menampilkan nama file atau directory saja, tidak ada keterangan ekstensi, ukuran file, tanggal dan jam) 9. ren Mengganti nama file 10. ren filelama.txt filebaru.txt Mengganti nama file filelama.txt menjadi filebaru.txt itu tadi adalah perintah umum yang dipakai dalam DOS..Sekarang saya akan memberikan perintah perintah dasar dalam Dos: ATTRIB =>Perintah eksternal Untuk melihat/mengubah atribut file CLS =>Perintah internal Untuk menghapus layar monitor COPY =>Perintah internal Untuk mengcopi file DEL =>Perintah internal Untuk menghapus file DIR =>Perintah internal Untuk melihat daftar file/folder di folder/direktori tertentu MD =>Perintah internal Untuk membuat direktori/folder baru RD =>Perintah internal Untuk menghapus folder (folder kosong) REN =>Perintah internal Untuk mengubah nama file/folder TYPE =>Perintah internal Untuk melihat isi file EDIT =>Perintah eksternal. Untuk mengedit file teks (interaktif) FDISK =>Perintah eksternal. Untuk melihat/mengubah/membuat partisi harddisk FORMAT =>Perintah eksternal. Untuk memformat disket/harddisk MORE =>Untuk mencegah tampilan menggulung terus-menerus Melihat daftar file/folder dalam direktori/folder tertentu: DIR (tanpa parameter) Melihat daftar file saja: DIR /a-d Melihat daftar folder saja: DIR /ad Melihat daftar file yang tersembunyi: 70 DIR /a-dh Melihat daftar folder yang tersembunyi: DIR /adh Melihat daftar file/folder yang tersembunyi: DIR /ah Jika suatu kali komputer anda terserang virus dan tiba tiba semua data anda lenyap,jangan khwatir karena sebenrnya virus tidak pernah menghapus data yang ada mereka hanya menyembuyikan data anda disuatu tempat yang tidak kita ketahui.ada cara untuk memunculkan kembali data data tersebut dengan menggunakan perintah Dos. pertama kali kita harus membuka file apa saja yang tersembunyi..dengan cara: Melihat daftar folder saja: DIR /ad Melihat daftar file yang tersembunyi: DIR /a-dh Melihat daftar folder yang tersembunyi: DIR /adh Melihat daftar file/folder yang tersembunyi: DIR /ah setelah kita mengetahui file apa saja yang tersenbunyi,kita tinggal melihat attribut file file tersebut.caranya: MENGETAHUI/MENGUBAH ATRIBUT FILE: “ATTRIB” Untuk mengetahui daftar parameter untuk perintah “ATTRIB”, ketikkan “ATTRIB /?”. Melihat attribut file/folder Format umum: ATTRIB namafile Contoh: ATTRIB readme.txt Untuk melihat attribut dari beberapa file/folder, gunakan wildcards character (*) pada namafile. setelah tau attribut file tersebut,kita tinggal mengubah attribut file tersebut,caranya: Mengubah attribut file/folder ATTRIB daftaratribut namafile Daftar atribut yang valid: H, R, S Gunakan tanda ‘-’ di depan kode attribut untuk menonaktifkan atribut tertentu, gunakan tanda ‘+’ untuk mengaktifkan atribut tertentu. Contoh pemakaian: Mengubah atribut file README.TXT menjadi hidden ATTRIB +h README.TXT Mengaktifkan atribut hidden sekaligus atribut system pada file README.TXT ATTRIB +h +s README.TXT Menonaktifkan attribut hidden, read-only dan system pada semua file dalam direktori aktif (current directory). Kombinasi atribut ini dapat digunakan untuk memunculkan kembali file-file yang ‘disembunyikan’, misalnya sebagai dampak infeksi virus ke komputer: ATTRIB -h -r -s *.* 71 PERINTAH REDIRECTING Redirecting disebut juga dengan pengalihan. Jika selesai menggunakan piping maka informasinya bersifat temporary, jika ingin mengabadikannya (misal ingin di posting ke sebuah mailing list atau forum) maka redirecting adalah pilihan yang lain. Ada 3 file deskriptor yaitu stdin, stdout dan stderr (std = standard) yang bisa kita alihkan hanya stdout dan stderr. stdout adalah default standar untuk output, defaultnya adalah monitor. Sedangkan stderr kadang ke monitor kadang ke file berupa log file. Redirecting menggunakan tanda “>” dan “>>”, misalnya : $ ls / > ls.txt Perintah diatas mengalihkan hasil dari perintah “ls /” ke sebuah file bernama “ls.txt” Pada kondisi diatas hanya pada kondisi sukses saja terjadi pengalihan, jika error tidak terjadi perngalihan. Jika yang dibutuhkan adalah errornya maka kita bisa mengalihkan stderr ke file, caranya adalah dengan menambahkan “2>” misalnya : $ ls sembarangfile 2> error.txt Jika dibutuhkan kedua – duanya (output dan error maka digunakan “&>”). Contoh : $ ls sembarangfile / &> hasil.txt Gunakan tanda > jika yakin akan menghapus file lama atau membuat file baru, namun jika yang dibutuhkan adalah menambahkan ke file yang sudah ada sebelumnya maka digunakan tanda “>>” contoh : $ echo “Ini tambahannya” >> hasil.txt PERINTAH PIPING Terkadang dalam pengunaan perintah teks dibutuhkan lebih dari satu perintah sekali “enter”, Salah satu kondisinya adalah jika dalam melihat sebuah file hanya akan menampilkan baris yang mengandung kata tertentu. Contohnya : $ cat /etc/httpd/httpd.conf | grep “Group” # User/Group: The name (or #number) of the user/group to run httpd as. Group apache 72 Hasil yang jauh berbeda jika hanya menggunakan cat, kondisi lainnya adalah pembacaan file teks. Saat mengetikkan perintah cat /etc/httpd/httpd.conf maka akan ditampilkan semua isi file sayangnya karena file tersebut cukup besar maka kita hanya melihat yang terakhir, namun ini bisa diatasi dengan menekan tombol <Shift><PageUp> untuk menggulung layar keatas, hanya saja banyaknya yang bisa digulung tergantung pada seberapa besar memory vga yang digunakan. Untuk ini bisa menggunakan perintah lain yaitu more atau less dengan piping “|”. $ cat /etc/httpd/httpd.conf | less perintah less juga bisa digunakan di depan menggantikan cat : $ less /etc/httpd/httpd.conf namun pada beberapa keadaan tertentu piping masih digunakan misalnya saja ingin membacanya log dari perintah dmesg : $ dmesg | less 73 KELOMPOK 7 Penggolongan dalam perintah DOS ( Disk Operation System ) Internal Command o Instruksi ada dimemory di dalam Komputer (RAM). o Terus aktif saat PC-DOS diaktifkan sampai komputer dimatikan. o Perintah langsung dikerjakan oleh computer. Contoh: CLS, DIR, COPY, REN, DEL, DATE, VER, TIME, TYPE, ERASE, PROMPT. External Command o File nya ada di luar memori yaitu di disket. o Untuk memberikan perintah ini harus ada file nya. Contoh: Kalau kita mau memformat disket baru harus ada file FORMAT.COM pada disket yang disimpan pada drive yang akan diaktifkan. o Untuk menjalankan, harus dipanggil dulu ke memory dengan cara ketik nama file tersebut. o Perintah tidak langsung dikerjakan oleh komputer pada waktu komputer dinyalakan. Contoh: FORMAT, DISKCOPY, LABEL, COMP, CHKDSK, MODE, DISK COMP, DLL. Perintah dasar DOS ( Disk Operating System ) Dalam menggunakan DOS diperlukan pemahaman tentang perintah-perintah untuk menjalankan DOS. Untuk masuk ke DOS sendiri cukup klik Run-Cmd-Enter. Baik sekarang akan kami berikan beberapa peritah yang dapat kalian gunakan dalam DOS. ATTRIB merupakan Perintah eksternal Untuk melihat/mengubah atribut file CLSmerupakanPerintah internal Untuk menghapus layar monitor COPYmerupakanPerintah internal Untuk mengcopi file DELmerupakanPerintah internal Untuk menghapus file DIR Merupakan Perintah internal Untuk melihat daftar file/folder di folder/direktori tertentu MD merupakanPerintah internal Untuk membuat direktori/folder baru RDmerupakanPerintah internal Untuk menghapus folder (folder kosong) 74 RENmerupakanPerintah internal Untuk mengubah nama file/folder TYPE merupakanPerintah internal Untuk melihat isi file EDITmerupakanPerintah eksternal. Untuk mengedit file teks (interaktif) FDISK merupakanPerintah eksternal. Untuk melihat/mengubah/membuat partisi harddisk FORMATmerupakanPerintah eksternal. Untuk memformat disket/harddisk MOREmerupakanUntuk mencegah tampilan menggulung terus-menerus Perintah pengaturan File dan Directory Copy Perintah ini digunakan untuk menyalin atau mengkopy file. Bentuk umum perintah ini adalah sebagai berikut : Copy [file_asal ] [file_tujuan ] Contoh : A:\>copy a:\tugas c:\latdos Perintah dia as menunjukan perintah untuk mengkopi file pada directory tugas di disket ,dan disalin a au dicopykan ke directori c:\latdos DEL Berfungsi untuk menghapus atau mendelete file. Bentuk umum : Del [nama_file ] Contoh: C:\latdos>del *.doc {digunakan untuk menghapus semua file yang berektensi doc}. DIR Berfungsi Untuk melihat daftar file/folder di folder/direktori tertentu Bentuk umumnya : DIR(drive:)(path)(filename)(/p)(/w)(/a)((:atribs))(/o)((:)(/s)(/b)dir Menampilkan filefile dalam root directory REN Digunakan untuk mengubah (Rename)nama file dengan file yang baru. Perintah ini tidak akan mengubah isi dari file tersebut. Bentuk umumnya: 75 REN Contoh: C:\>ren tugasm~1.doc tugasku.doc Perintah diatas berarti mengubah nama file dari tugasm~1.doc menjadi tugasku.doc VOL Perintah ini digunakan untuk menampilkan Volume label atau nomor seri dari sebuah disk. Contoh: A:\>Vol TYPE Digunakan untuk menampilkan file ext.perintah ini hanya bisa digunakan untuk satu file saja dan hanya untuk file text. Contoh: A:\>type surat.txt {diasumsikan file surat.txt ada di disket} XCOPY Bentuk Umum: XCOPY SUMBER [DESTINATION ] [/Y|-Y ] [/A|/M ] [/D:DATE ] [/P ] [/S ] [/E ] [/V ][/W ] Keterangan : DESTINATION diisi dengan subdir letak file secara lengkap. /Y :Untuk tidak menampilkan pesan jika terjadi penimpaan file. /-Y :Untuk menampilkan pesan jika terjadi penimpaan file. /A :Menyalin hanya pada file yang bera ribut archieve(arsip). /M :Menyalin file yang elah diberi attribute archieve.Switch ini berbeda dengan /A karena Switch /M merubah atribute file asal. /D :date menyalin hanya file yang dimodivikasi pada tanggal yang telah dispesifikasikan. /P :digunakan agar MS-DOS menanyakan terlebih dahulu setiap aktifitas XCOPY. /S :Menyalin suatu diraktori berikut seluruh file dan subdirektori didalamnya . Kecuali direktori kosong. /E :Digunakan bersama switch /S yang fungsinya untuk menyalin suatu direktori beriku sub-sub directory didalamnya termasuk direktori yang kosong. /V :untuk memeriksa setiap file yang disalinkan tersebut sama dengan file asal. /W :Digunakan agar MS-DOS menampilkan pesan-pesan terlebih dahulu dan menanyakan tindakan selanjutnya,sebelum xccopy menyalin file-file tersebut. Contoh: A:\>xcopy a:c:/s/e 76 MOVE Perintah ini digunakan untuk memindahkan satu a au beberapa file pada empat yang kita inginkan.Instruksi Move selain untuk memindahkan file,juga bisa menggan i nama direktori dan nama file yang dipindahkan.Bentuk Umum: MOVE [drive:] [path ] [filename ],[drive ] [filename […]] destination Parameter: [drive:]][path ]filename :menspesifikasikan lokasi dan nama dari file-file yang kita pindahkan. Contoh: A:\>MOVE A:\tugas tugasm~1.doc C:\latdos Ar inya memindahkan file command.com ke dalam sub direktori latdos di drive C: Catatan: Instruksi dia as hanya dapat berjalan jika file move.exe ada pada dos anda dan berada di roo direktori atau berada didirectori lain dengan catatan direktori ersebut elah diberi path. ATTRIB Bentuk umumnya : ATTRIBUT(+R|-R)(+A|-A)(+S|-S)(+H|-H)((drive:)(path)filename)(/S) Digunakan untuk mengubah file permission,misalnya membua file bera ribut read only,Hidden dan sebagainya Parameter : (drive:)(path)filename menentukan letak dan nama dari file yang akan diubah. +:Mengadakan suatu attribute. -:menghilangkan attribute. R :Mengubah a tribute file menjadi Read Only.File yang elah diubah menjadi readonly tidak dapa diubah digan i a aupun dihapus. A :mengubah attribute file menjadi Archieve (file yang telah memiliki arsip). S :Mengubah attribute menjadi sys em. H :mengubah attribute menjadi hidden. /s :memproses file pada direktori maupun seluruh sub direktori. Contoh: C:\>attrib+h+r C:\latdos \*.* MD|MKDIR (Make directory) Bentuk umum: MD [Nama_direktory ] 77 Contoh: C:\>md dos622 C:\>md data CD /CHDIR Change directory atau pindah directory. Perintah ini digunakan untuk pindah directory a au mengubah directory aktif. Contoh: C:\>cd dos622 12. RD (Remove Directory) Bentuk Umum: RD [nama_sub_directory ] Perintah Rd digunakan utuk menghapus subdirectory.Syara agar bisa menghapus sebuah Directory adalah: 1`Posisi penghapusan subdirectory yang akan dihapus harus berada diluar dari subdirektori tersebut. 2`Direktori yang akan dihapus harus benar-benar kosong.Jika tidak kosong gunakan insstruksi del*.* DELTREE Bentuk Umum: DELTREE (/Y)(drive:)path 1`Drive path menentukan le ak dan nama direktori yang akan dihapus. 1`Switch /y agar perintah del ree tidak menampilkan konfirmasi penghapusan Contoh: a:\>deltree c:\data Perintah Redirecting Redirecting disebut juga dengan pengalihan. Jika selesai menggunakan piping maka informasinya bersifat temporary, jika ingin mengabadikannya (misal ingin di posting ke sebuah mailing list atau forum) maka redirecting adalah pilihan yang lain. Ada 3 file deskriptor yaitu stdin, stdout dan stderr (std = standard) yang bisa kita alihkan hanya stdout dan stderr. stdout adalah default standar untuk output, defaultnya adalah monitor. Sedangkan stderr kadang ke monitor kadang ke file berupa log file. Redirecting menggunakan tanda “>” dan “>>”, misalnya : 78 $ ls / > ls.txt Perintah diatas mengalihkan hasil dari perintah “ls /” ke sebuah file bernama “ls.txt” Pada kondisi diatas hanya pada kondisi sukses saja terjadi pengalihan, jika error tidak terjadi perngalihan. Jika yang dibutuhkan adalah errornya maka kita bisa mengalihkan stderr ke file, caranya adalah dengan menambahkan “2>” misalnya : $ ls sembarangfile 2> error.txt Jika dibutuhkan kedua – duanya (output dan error maka digunakan “&>”). Contoh : $ ls sembarangfile / &> hasil.txt Gunakan tanda > jika yakin akan menghapus file lama atau membuat file baru, namun jika yang dibutuhkan adalah menambahkan ke file yang sudah ada sebelumnya maka digunakan tanda “>>” contoh : $ echo “Ini tambahannya” >> hasil.txt Perintah Pipping Terkadang dalam pengunaan perintah teks dibutuhkan lebih dari satu perintah sekali “enter”, Salah satu kondisinya adalah jika dalam melihat sebuah file hanya akan menampilkan baris yang mengandung kata tertentu. Contohnya : $ cat /etc/httpd/httpd.conf | grep “Group” # User/Group: The name (or #number) of the user/group to run httpd as. Group apache Hasil yang jauh berbeda jika hanya menggunakan cat, kondisi lainnya adalah pembacaan file teks. Saat mengetikkan perintah cat /etc/httpd/httpd.conf maka akan ditampilkan semua isi file sayangnya karena file tersebut cukup besar maka kita hanya melihat yang terakhir, namun ini bisa diatasi dengan menekan tombol <Shift><PageUp> untuk menggulung layar keatas, hanya saja banyaknya yang bisa digulung tergantung pada seberapa besar memory vga yang digunakan. Untuk ini bisa menggunakan perintah lain yaitu more atau less dengan piping “|”. 79 $ cat /etc/httpd/httpd.conf | less perintah less juga bisa digunakan di depan menggantikan cat : $ less /etc/httpd/httpd.conf namun pada beberapa keadaan tertentu piping masih digunakan misalnya saja ingin membacanya log dari perintah dmesg : $ dmesg | less 80 KELOMPOK 8 1. Sistem Operasi Windows A. Diskripsi Sistem Operasi adalah sekumpulan perangkat lunak yang berada diantara program aplikasi dan perangkat keras. Sistem operasi merupakan penghubung antara pengguna komputer dengan perangkat keras komputer. Ruang lingkup mata pelajaran sistem operasi ini ialah pengenalan sistem operasi closed source keluarga windows. Topik materi yang dipelajarai dalam mata pelajaran ini antara lain adalah: perkembangan sistem operasi windows, arsitektur sistem operasi windows, struktur sistem operasi windows, instalasi sistem operasi windows, administrasi sistem operasi windows. Topik perkembangan sistem operasi menjelaskan beberapa hal yaitu, definisi sistem operasi, berbagai ragam jenis sistem operasi, periode perkembangan umum sistem operasi dan perkembangan sistem operasi keluarga windows. Topik tentang arsitektur sistem operasi mempelajari tentang peranan sistem operasi dalam struktur sistem komputer dan berbagai ragam atau jenis arsitektur sistem operasi. Struktur sistem operasi windows menjelaskan berbagai arsitektur dasar sistem operasi windows. Arsitektur dasar tersebut adalah arsitektur dasar MS DOS, arsitektur dasar windows NT dan arsitektur dasar windows vista, windows 7 dan windows 8. Topik struktur sistem operasi windows menjelaskan tentang konsep dan eksperimen atau praktek tentang, pengelolaan proses, penjadwalan proses,manajemen memori, manajemen input / Output (I/O) dan manajemen file. Topik instalasi sistem operasi menjelaskan tentang langkah-langkah logis berbagai metode instalasi yaitu clean instal, instalasi sistem mesin virtual, upgrade instalation, instalasi multibooting dan mekanisme proses booting sistem operasi. Sedangkan topik pencarian kesalahan sistem operasi mempelajari tentang ragam atau jenis kesalahan dan metode pencarian, perbaikan kesalahan dan peningkatan performa sistem. Ragam sistem operasi Sistem operasi yang digunakan untuk sistem komputer umum termasuk komputer personal terbagi menjadi 3 kelompok besar, yaitu: 81 1. Keluarga Microsoft Windows Sistem operasi meliputi antara lain ialah Windows Desktop Environment berbasis MS-DOS (versi 1.x hingga versi 3.x), berbasis GUI Windows 9x (Windows 95, 98, dan WindowsME). Sistem operasi berbasis Windows NT seperti Windows NT 3.x, Windows NT 4.0, Windows 2000, Windows XP, Windows Server 2003, windows server 2008, windows server 2008 R2, Windows Home Server Windows Vista, Windows 7 (Seven) yang dirilis pada tahun 2009, Windows 8 yang dirilis pada Oktober 2012 dan Windows Orient yang akan dirilis pada tahun 2014. Keluarga Windows CE seperti windows CE 1.0-CE 6.0 dan Windows Mobile. 2. Keluarga Unix. Sistem operasi ini menggunakan antarmuka sistem operasi POSIX, seperti SCO UNIX, keluarga BSD (Berkeley Software Distribution), GNU/Linux, debian, red hat, SUSE, Ubuntu, Zeath OS (berbasis kernel linux yang dimodifikasi.). MacOS/X (berbasis kernel BSD yang dimodifikasi, dan dikenal dengan nama Darwin) dan GNU/Hurd. Sistem operasi keluarga unix lainnya seperti AIX, Amiga OS, DragonFly BSD, Free BSD, GNU, HPUX, IRIX,Linux, LynxOS, MINIX, NetBSD, OpenBSD, OS X, Plan 9, QNX, Research UNIX, SCO OpenServer, Solaris, UNIX System V, Tru64 UNIX, UnixWare, 3. Keluaraga Mac OS. Sistem operasi ini dikeluarkan oleh industri komputer Apple yang disebut Mac atau Macintosh. Sistem operasi ini antara lain ialah Public Beta (Kodiak), Mac OS X 10.0 (Cheetah), Mac OS X 10.1 (Puma), Mac OS X 10.2 (Jaguar), Mac OS X 10.3 (Panther), Mac OS X 10.4 (Tiger), Mac OS X 10.5 (Leopard), Mac OS X 10.6 (Snow Leopard), Mac OS X 10.7 (Lion), Mac OS X 10.8 (Mountain Lion). Berbasis Server : OpenStep, Raphsody, Mac OS X Server 1.0, berbasis Mobile: iOS. Awal tahun 2007 dikeluarkan versi 10.5 (Leopard). Tahun 2011 diluncurkan versi 10.7 (lion). Sistem tersebut menggunakan interface TEXT (DOS, POSIX, LINUX), dan GUI (Graphical User Interface) seperti MS Windows dan LINUX (berbasis TEXT dan berbasis GUI). 82 Sistem Operasi Perkembangan Umum Sistem operasi Menurut Tanebaum, Sistem Operasi mengalami perkembangan yang dapat dibagi ke dalam lima generasi. a) Generasi Awal (1945-1955) Generasi pertama merupakan awal perkembangan sistem komputasi elektronik sebagai pengganti sistem komputasi mekanik, hal itu disebabkan kecepatan manusia untuk menghitung terbatas dan manusia sangat mudah untuk membuat kecerobohan, kekeliruan bahkan kesalahan. Pada generasi ini belum ada sistem operasi, maka sistem komputer diberi instruksi yang harus dikerjakan secara langsung oleh pengguna. b) Generasi Kedua (1955-1965) Generasi kedua memperkenalkan Batch Processing System, yaitu Job yang dikerjakan dalam satu rangkaian, lalu dieksekusi secara berurutan. Generasi ini sistem komputer belum dilengkapi sistem operasi, tetapi beberapa fungsi sistem operasi telah ada, contohnya fungsi sistem operasi ialah FMS dan IBSYS c) Generasi Ketiga (1965-1980) Sistem operasi pada generasi ini dikembangkan untuk melayani banyak pemakai, dimana para pemakai berkomunikasi lewat terminal secara on-line ke komputer. Sistem operasi menjadi multi-user (digunakan oleh banyak pengguna sekaligus), multiprogramming (melayani banyak program sekaligus) dan multi tasking (melayani banyak tugas dan pekerjaan / Batch Processing System) d) Generasi Keempat (1980 – 2000-an) Pada masa ini sistem operasi telah menggunakan Graphical User Interface(GUI) yaitu antar-muka komputer yang berbasis grafis yang sangat nyaman dan mudah digunakan. Pada masa ini juga dimulai era komputasi tersebar (distributed computer) 83 dimana komputasi-komputasi tidak lagi berpusat di satu titik, tetapi dipecah dibanyak komputer sehingga tercapai kinerja yang lebih baik.Sistem Operasi e) Generasi Selanjutnya Pada generasi ini diperkenalkan Sistem Operasi yang berada dalam sebuah Sistem Operasi dan Sistem Operasi bergerak (Mobile) pada perangkat bergerak seperti: PDA, Poket PC, Laptop, Notebook dan NetBook. Sistem Operasi jaringan virtual juga berkembang, sehingga dalam satu jaringan hanya diinstal satu buah Sistem Operasi pada perangkat Server. Pada masa ini, diperkenalkan virtualization sistem yaitu satu komputer dapat diclonning secara virtual menjadi lebih dari satu komputer (sistem operasi) yang dapat bekerja bersama-sama, Cross Platform Operating System (multiboot system) yang dapat menggabungkan dua atau lebih Sistem Operasi berbeda seperti : Linux dan Windows. Generasi ini merupakan awal tren Mobile Computing, yang perangkatnya didominasi oleh Android, iOS, Blackberry OS, Windows mobile, Windows Phone dan Symbian. Pada masa ini dikenalkan sistem iClaud (layanan komputasi awan) yaitu sistem layanan jaringan yang dipublikasikan oleh Apple Inc pada tanggal 6 Juni 2011 di San Fransisco. iCloud memungkinkan para penggunanya untuk mensinkronisasi data seperti foto, musik, dan dokumen dari perangkat satu ke perangkat lain seperti ke dalam iPhone, iPad, iPod Touch, Mac dan komputer secara otomatis pada waktu yang bersamaan. 4) Perkembangan sistem operasi windows Mircorost Windows adalah Sistem Operasi yang dikembangkan oleh Microsoft Corporation yang menggunakan antar muka berbasis grafis atau dikenal dengan nama GUI (Graphical User Interface). a) MS-Dos Ms-Dos (Microsoft Disk Operating System) adalah Sistem Operasi yang berbasiskan teks dan Command-Line interpreter. Windows Versi pertama, Windows Graphic Environmnet 1.0 merupakan perangkat lunak yang bekerja atas arsitekstur 16-Bit dan bukan merupakan Sistem Operasi dan berjalan atas MS-DOS, sehingga untuk menjalankannya membutuhkan MS-DOS Gambar 4.Logo MS DOS 6.22 MS-DOS sendiri sebenarnya dibuat oleh perusahaan pembuat komputer Seattle Computer Products kemudian direkrut oleh Microsoft yang selanjutnya dibeli lisensinya. 84 MS-DOS dirilis pertama kali pada tahun 198, dan seiring dengan waktu, Microsoft pun meluncurkan versi yang lebih baru dari MS-DOS. Tidak kurang hingga delapan kali Microsoft meluncurkan versi baru MS-DOS dari tahun 1981 hingga Microsoft menghentikan dukungan MS-DOS pada tahun 200. b) Microsoft Windows (windows 1.x – windows 3.x) Microsoft Windows 1.0 merupakan versi pertama sistem operas dalam dunia sistem operasi berbasis Graphical User Interface (GUI) yang dibuat oleh Microsoft Corporation . Versi ini sebenarnya diluncurkan pertama kali pada tanggal 10 November 1998, tapi tidak pernah keluar ke pasar publik sebelum bulan November 1998, karena banyaknya hambatan yang terjadi ketika pengembangan berlangsung. Microsoft Windows 2.0 merupakan versi kedua dari sistem operasi berbasis graphical user interface (GU) buatan Microsoft Corporatio, yang dirilis pada 9 Desember 1987. Sistem ini diluncurkan untuk melengkapi kekurangan ragam aplikasi pada Windows 1.0. Windows 3.0 memiliki kemampuan dukungan kartu grafis SVGA atau XGA dan juga icon. Microsoft menyediakan SDK (Software Development Kit) sehingga para developer piranti lunak dapat mengembangkan aplikasi agar mampu berjalan di Windows 3.0 ini. Sistem ini mengenalkan Virtual Device Driver (VXD) yang berguna untuk meminimalisasi ketergantungan setiap driver pada perangkat keras tertentu. Sistem ini berevolusi menjadi Windows 3.1 yang mengenalkan fitur Multimedia dan True Type Font. Sistem ini memudahkan End-User karena adanya fitur Drag and Drop. Windows versi 3.0 ini berkembang menjadi Windows 3.11 yang mendukung aplikasi NetWorking. c) Windows 95 – windows ME Windows 95 diperkenalkan pada tanggal 14 Agustu 199. Sistem operasi ini memiliki GUI yang lebih menarik dan atraktif, menggunakan rancangan menu "Start", menu inovatif untuk mengakses grup program (pengganti Program Manager) mendukung penamaan berkas yang panjang. Windows 95 juga mendukung Plug and Play untuk mendeteksi instalasi perangkat keras dan konfigurasi secara otomatis, memiliki beberapa fasilitas seperti : Browser yang terintegrasi dan Windows Explorer untuk menjelajah Windows. Selain itu juga Windows 95 memiliki fitur untuk memanajemen daya (APM) dan diperkenalkannya juga Client-Server. 85 d) Windows 98 - windows SE dikeluarkan oleh Microsoft pada 25 Jun 1998. Windows 98 sudah mendukung VGA berbasis AGP, serta mendukung media penyimpanan berkas seperti USB, diperkenalkannya NAT untuk berbagi koneksi Internet dan digantikannya Virtual Device Driver dengan Windows Driver Model. Ada juga beberapa fitur tambahan berupa aplikasi Microsoft Office dan Internet Explorer versi 5. Windows 98 juga sudah memiliki kemampuan-kemampuan untuk memainkan Game dan menjalankan aplikasi Multimedia. Windows 98SE menambahkan dukungan pada Internet Explorer 5, NAT untuk berbagi koneksi Interne, Digital Versatile Disk (DVD, Windows Driver Mode (WDM) yang menggantikan model Virtual Device Drive (VxD) serta Windows NetMeeting 3. Sistem ini menganut prinsip hibrida dengan dukungan kernel 16-bi/32-bi, dan masuk pada famili Windows 9. Windows ME diluncurkan pada tanggal 14 Septembe 200. Dalam sistem operasi ini tidak ada fitur yang spesial selain transisi dukungan grafis dari 16-Bit ke 32-Bit dan sistem ini banyak dipakai oleh pengguna pribadi. e) Windows NT 3.xx – 4.xx Windows NT sebagai pengganti windows ME mendukung arsitekrtur x86 (80×86), Intel IA64 dan AMD64 (x64) dan grafis 32-Bit. Windows NT dibangun dari pengembangan IBM OS/2 dan banyak digunakan dalam jaringan komputer. Windows NT juga memperkenalkan File System NTFS yang lebih baik dari FAT maupun FAT-32. Windows NT 3.1 dirilis untuk komputer Intel x86, DEC Alpha, dan beberapa platform yang mendukung ARC (Advanced RISC Computing MIPS. Sedangkan Windows 3.51 diluncurkan untuk mendukung komputer IBM PowerP khususnya untuk sistem PReP seperti deskto atau lapto IBM Power Series dan seri Motorol PowerStack. Meskipun menggabungkan dua teknologi dari dua perusahaan, Windows NT 3.51 tidak bisa dijalankan di atas Power Macintosh. Intergraph Corporatio kemudian membuat porting untuk arsitektur Intergraph Clipper miliknya sendiri dan membuat porting Windows NT 3.51 agar bisa berjalan di atas arsitektur SPAR (milik Sun Microsystem). Meskipun demikian, kedua produk tersebut tidak dijual ke publik sebagai produk ritel. Windows NT 4.0 diluncurkan untuk mendukung banyak platform, akan tetapi microsoft hanya membuat service pack dan update untuk dua varian (x86 dan DEC Alph). Selain ke dua varian tersebut service pack dan update dibuat oleh pihak ketiga (Motorola, Intergraph, dan lain-lain). Windows NT 4.0 merupakan versi rilis Windows NT yang 86 mendukung DEC Alpha, MIPS, dan PowerPC. Microsoft juga membuat Windows 2000 untuk DEC Alpha hingga bulan Agustu 199. Karena Compaq menghentikan dukungan Windows NT untuk arsitektur tersebut maka Microsoft menghentikan pengembangan proyek AlphaNT tersebut. f) Windows 2000. Windows 2000 (atau Windows NT 5.0 build 2159) adalah sebuah versi sistem operas Window yang merupakan versi pengembangan dari Windows N versi 4.0 yang di dikeluarkan oleh Microsof tanggal 17 Februari 2000 di Amerika Serikat. Windows 2000 mempunyai banyak fitur tambahan diantaranya : 1) Active Director yang baru, 2) Image Preview, 3) Plug and Play dan Windows Driver Model yang lebih baik performanya dibanding sebelumnya, 4) Browser Explore yang baru, yaitu Internet Explorer 5.0. 5) Mendukung untuk Microsoft Direct dan Open GL (Windows NT 4.0 hanya mendukung akselerasi OpenG), 6) Windows Media Playe 6.4 terintegrasi (dapat diinstalasikan di Windows NT 4.0, 7)Terminal Servic yang telah terintegrasi, 8) Plug And Pla yang lebih canggih, sehingga memasang hardware tertentu dapat langsung berjalan tanpa harus melalui proses restart, 9) Menggunakan driver untuk hardware berbasis Windows Driver Mode atau dikenal juga dengan WDM, 10) Dukungan manajemen daya lebih baik, yaitu ACP (Advanced Configuration and Power Interface) yang dapat menghemat daya. Gambar 6.Logo windows 2000 server g) Windows XP. Windows XP menawarkan banyak perubahan, fitur dan performa, berbasis grafis digunakan pada komputer pribad, desktop bisnis, lapto, dan pusat media. Windows XP pertama kali dirilis pada 25 Oktobe 200, 400 juta salinan instalasi digunakan pada Januar 200. Windows XP tersedia dalam berbagai macam edisi, antara lain ialah : Windows XP Home Edition ditargetkan untuk pengguna pribadi.• Windows XP Professional menawarkan fitur tambahan seperti dukungan• untuk domain Windows Server dan dua prosesor fisik, dan ditargetkan untuk pasar power user, bisnis dan perusahaan klien. 87 Windows XP Media Center Edition memiliki fitur multimedi tambahan yang• menawarkan kemampuan untuk merekam dan menonton acara T, melihat fil DV, dan mendengarkan musi. Windows XP Tablet PC Edition didesain khusus untuk platform PC Tablet, yakni sebuah komputer pribadi yang menggunakan stylus.• Windows XP profesional 64-bit Edition untuk prosesor berarsitektur IA-6 (Itaniu)• Windows XP Professional x64 Edition untuk prosesor berarsitektur x86-6.• Windows XP Starter Edition yang dijual di beberapa negara berkembang.• Windows XP Embedded, sebuah versi Windows XP Professional yang dikurangi segala fiturnya di sana sini untuk pasar tertentu.• Gambar 7. Desktop Windows XP h) Windows server 2003 Banyak sekali fitur yang ditawarkan pada Windows Server 2003. Fitur windows server 2003 edisi standar antara lain ialah platform .Net, fiitur Domain Controller Server, PKI (Public Key Infrastructure) Server, Domain Name System (DNS), Dynamic Host Configuration Protocol (DHCP), Windows Internet Name Service (WINS), Microsoft IIS, Windows Terminal Service, Mendukung pembagian beban jaringa Fitur standar sebuah server: file service, print service, atau application server yang dapat diinstalasi (seperti Microsoft Exchange Server, SQL Server, atau aplikasi lainnya). Windows Server 2003 memiliki nama kode Whistler Server mulai dikerjakan pada akhir tahun 2000. Windows Server 2003 terdiri atas beberapa edisi atau produk yang berbeda, yakni sebagai berikut: Jendela Desktop Windows server 2003 Windows Server 2003 Enterprise• Windows Server 2003 Datacenter• Windows Server 2003 Web Edition.• Windows Small Business Server 2003 (Windows SBS)• Windows Storage Server 2003.• Windows Server 2003 Standard Edition.• 88 i) Windows Vista Windows Vista diluncurkan 8 November 2000 untuk pengguna bisnis, dan 30 Januari 2000 untuk pengguna pribadi. Windows Vista lebih mengutamakan interface atau penampilan grafis antarmuka dibandingkan dengan performa, Fitur-fiturnya antara lain AERO, Sidebar, tingkat keamanan lebih baik dari pada Windows XP. Windows Vista menggunakan Firewall with Advanced Security, Windows Defender, Parental Control, User Account Control (UAC), BitLocker Drive Encryption, ASLR. Windows Vista menggunakan IPv6, DirectX versi terbaru, dan arsitekstur 64-Bit. Windows vista mempunyai beberapa versi: yaitu: Windows Vista Starter.• Windows Vista Home Basic.• Windows Vista Home Premium• Windows Vista Business.• Windows Vista Enterprise.• Windows Vista Ultimate• Gambar 9. Desktop Windows Vista j) Windows 7 Windows 7 merupakan gabungan Windows XP dan Windows Vista, Windows 7 memiliki performa yang lebih baik dari Windows Vista. Windows 7 dirilis untuk pabrikan komputer pada 22 Jul 200 dan dirilis untuk publik pada 22 Oktobe 200. Windows 7 lebih fokus pada pengembangan dasar Windows, dengan tujuan agar lebih kompatibel dengan aplikasi-aplikasi dan perangkat keras komputer yang kompatibel dengan Windows Vista Windows 7 lebih fokus pada dukungan multi-touch pada layar, desain ulang taskbar (Superbar), penggunaan sistem jaringan pribadi bernama HomeGroup dan peningkatan performa. Beberapa aplikasi standar yang disertakan pada versi sebelumnya dari Microsoft Windows, seperti Windows Calendar, Windows Mail, Windows Movie Maker, dan Windows Photo Gallery, tidak disertakan lagi di Windows 7. Windows 7 tidak bisa digunakan dengan jumlah memori yang terpasang melebihi kemampuannya. Jumlah ini berbeda di setiap versi Windows 7, dan juga berpengaruh pada arsitektur yang dipakai (apakah 32-bit atau 64-bit). 89 Windows 7 memiliki 6 versi yang sama dengan Windows Vista. Hanya saja ada perbedaan nama, jika Windows Vista memiliki versi Business maka pada Windows 7 versi tersebut dinamakan Professional. Versi tersebut antara lain : Windows 7 Ultimat• Windows 7 Professiona• Windows 7 Enterpris• Windows 7 Home Premiu• Windows 7 Home Basi• Windows 7 Starte• Gambar 10. Desktop Windows 7 k) Windows 8 Windows 8 adalah nama dari versi terbaru Microsoft Window, serangkaian Microsoft secara resmi merilis Windows 8 pada 26 Oktober 2012. Versi percobaan Windows 8 berupa Consumer Preview dan Release Preview. Pada tanggal 26 Juni 2013, Microsoft merilis versi Uji Coba dari Windows 8.1 (sebelumnya dikenal sebagai Windows Blue), Sistem operas ini diproduksi oleh Microsof untuk digunakan pada komputer pribad, termasuk kompute rumah dan bisnis, lapto, netboo, tablet P, serve, dan PC pusat medi. Sistem operasi ini menggunakan mikroprosesor AR selain mikroprosesor x8 tradisional buatan Inte dan AM. Antarmuka penggunanya diubah agar mampu digunakan pada peralatan layar sentu selain mous dan keyboar, sehingga Windows 8 di desain untuk perangkat tablet sentuh. Windows 8 mempunyai beberapa edisi atau versi antara lain adalah sebagai berikut : Windows 8, setara dengan Windows 7 Starter, Home Basic, Home Premium.• Windows 8 Pro, setara dengan Windows 7 Professional.• Windows 8 Enterprise, setara dengan Windows 7 Enterprise dan Ultimate.• Windows 8 RT, versi Windows khusus untuk perangkat berprosesor ARM.• Windows 8.1• Gambar 11. Desktop Windows 8 90 http://sistem-operasi-windows-x.blogspot.co.id/2015/09/sistem-operasiwindows.html konsep system operasi berbasis windows tanpa softwaere tanpa sebuah computer secara mendasar tidaklah sempurna. Dengan computer kita dapat menyimpan, memproses, dan mengambil informasi. Software dalam computer terbagi 2 yaitu system program dan application program. Applikasion program dapat menyelesaikan masalah dari pemakai sedangkan siatem program adalah yang memenejemen aplikasi dari computer itu sendiri. Yang paling mendasar dari suatu system program adalah operating system (system operasi ) dimana system operasi ini yang mengontrol semua sumber daya computer dan memberikan fasilitas yang lebih banyak agar application program dapat bekerja . Atau system operasi dapat didefinisikan sebagai program dasar atau pendahuluan yang mengandung program program untuk mengatur kerja computer secara mendasar seperti unit masukan,unit keluaran, mengatur table pengkodean, mengatur memory , mengatur prosesor membaca data yang diketik dan menyimpan file. Bagian bagian system operasi secara garis besar dikelompokan menjadi 2 bagian yaitu control program dan service program . kedua bagian ini mempunyai fungsi sendiri sendiri namun masih tetap terkait hubungan satu dengan lainya dengan hardware pemakai dengan program aplikasi Control program berfungsi untuk mengatur kerja input dan output berkomunikasi dengan operator atau programmer , menghandle masalah dan mencatat kegiatan yang ada. Sedangkan service program berfungsi untuk mengambil program yang ada jika dilihat sebagai lapisan, maka system operasi merupakan lapisan penghubung antara hardware dengan software. http://indriekayasami.blogspot.co.id/2013/05/konsep-jenis-sistem-operasiberbasis.html 2. Windows adalah operating system buatan microsoft yang didirikan oleh Bill Gates. Berikut adalah macam-macam produk perkembangan Sistem yang dikeluarkan Windows dari awal hingga sekarang: 91 1. Windows 1.0 Versi pertama Microsoft Windows, yang disebut dengan Windows 1.0, dirilis pada tanggal 20 November 1985. Versi ini memiliki banyak kekurangan dalam beberapa fungsionalitas, sehingga kurang populer di pasaran. 2. Windows 2.x Windows versi 2 pun muncul kemudian pada tanggal 9 Desember 1987, dan menjadi sedikit lebih populer dibandingkan dengan pendahulunya. Sebagian besar populeritasnya didapat karena kedekatannya dengan aplikasi grafis buatan Microsoft,Microsoft Excel for Windows dan Microsoft Word for Windows. 3. Windows 3.0 Microsoft Windows akhirnya mencapai kesuksesan yang sangat signifikan saat menginjak versi 3.0 yang dirilis pada tahun 1990. Selain menawarkan peningkatan kemampuan terhadap aplikasi Windows, Windows 3.0 juga mampu mengizinkan pengguna untuk menjalankan beberapa aplikasi MS-DOS secara serentak (multitasking), karena memang pada versi ini telah diperkenalkan Memory virtual. 4. Windows 95 Windows yang lebih unggul pada user interface dan multitasking. Windows 95 merupakan windows yang dianggap revolusioner dan membawa era baru komputasi. Rilis 24 Agustus 1995. 5. Windows 98 Dirilis pada tanggal 25 Juni 1998, Windows 98 yang pertama merupakan windows yang sangat buruk. Lemot, sering crash dan berbagai masalah lainnya. Perubahan kernel dan perombakan sistem secara keseluruhan membuat penjualannya meningkat karena cepat, dan tidak lagi crash ( malah merupakan windows paling stabil yang pernah ada ) dengan rilis nya Windows 98SE pada tahun 1999 6. Windows ME Mengisi kekosongan antara dirilisnya windows 98SE dan XP, di lahirkanlah windows ME. Konsep konsep baru diperkenalkan dengan Windows ME. 1 diantara konsep 92 yang kemudian populer di suatu hari ada “plug and play”. Sayangnya GUI yang buruk dan terlalu geeky membuat nya tidak populer. 7. Windows 2000 Microsoft merilis Windows 2000 pada 17 Februari 2000, sebuah versi yang sebelumnya dikenal dengan sebutan Windows NT 5.0 atau “NT 5.0″. Versi Windows 2000 ditujukan untuk dua pangsa pasar, yakni pangsa pasar workstation dan juga pangsa pasar server. 8. Windows XP Oktober 2001, microsoft merilis Windows XP, versi windows yang paling banyak di pakai di seluruh dunia sampai sekarang, banyak mendapatkan pujian di seluruh pemberitaan. Review score yang baik membuat windows XP merajai pasar PC sekarang ini. Windows XP yang pertama kali memecah bagian penjualan windows menjadi Home dan Professional. Hanya membedakan beberapa fitur yang mungkin tidak digunakan oleh pengguna rumahan dibanding pengguna professional. 9. Windows Vista Vista membawa perubahan besar dalam kernel, GUI dan rangkaian penambahan fitur yang menjanjikan. Sayang biarpun sudah mengalami penambahan fitur dan User Interface, Vista tidak sukses di pasar karena memiliki beberapa flaw yang sangat mengganggu, terutama bagi kritikus. Vista juga lambat dan tidak lebih baik dari windows XP dalam penggunaan sehari hari. 10. Windows 7 Rilis selanjutnya setelah Windows Vista dikenal sebagai Windows 7, yang sebelumnya dikenal dengan sebutan Blackcomb dan Vienna. Windows ini memiliki kennel NT versi 6.2 SP2 dari Windows Server 2008. Windows 7 memiliki keamanan dan fitur yang baru. Windows 7 adalah jenis dari Windows Server 2008 SP2. Windows ini dirilis pada tanggal 22 Oktober 2009. Fitur yang ada di Windows 7 60% sama dengan Windows Vista. Beberapa fiturnya adalah: Jump List, Taskbar yang membuka program dengan tampilan kecil, Windows Media Player 12, Internet Explorer 8, dan lain-lain. Beberapa fitur yang unik adalah Sidebar yang nama berganti menjadi Gadget dan Gadget bebas ditaruh kemana-mana (tidak seperti Sidebar yang hanya bisa diletakkan di tempat tertentu). Fitur 93 itu membuat Windows 7 menjadi menarik. Spektifikasi Windows 7 lebih ringan dari pada Windows Vista. Harganya juga lebih murah dari pada Windows Vista. Sejarah sistem-sistem operasi Microsoft Pergerakan versi MS-DOS • MS-DOS dan PC-DOS • Windows 95 (MS-DOS 7.0) • Windows 95 OEM Service Release 2.x, Windows 98 (MS-DOS 7.1) • Windows Millenium Edition (MS-DOS 8.0) Pergerakan versi Windows kelas rumahan • Windows 1.0 • Windows 2.0 • Windows 2.1 (alias Windows/286 and Windows/386) • Windows 3.0, Windows 3.1, Windows 3.1 for Workgroups, Windows 3.11, Windows 3.11 for Workgroups (WfW) • Windows 95 (Windows 4.0) • Windows 98 (Windows 4.1) • Windows Millennium Edition (Windows 4.9) Pergerakan versi Microsoft/IBM OS/2 • OS/2 1.0 • OS/2 1.1 • OS/2 1.2 • OS/2 1.3 Pergerakan versi Microsoft berbasis Windows NT • Windows NT 3.1, 3.5 94 • Windows NT 4.0 • Windows 2000 (Windows NT 5.0) • Windows XP (Windows NT 5.1) • Windows Server 2003, Windows XP 64-bit Edition 2003 (Windows NT 5.2) • Windows XP Professional x64 Edition (Windows NT 5.2) • Windows Fundamentals for Legacy PCs (Windows NT 5.1) • Windows Vista (Windows NT 6.0) http://artikelmawar.blogspot.co.id/2012/09/jenis-jenis-sistem-operasiwindows.html 3. Definisi : GUI (Graphical User Interface) adalah antarmuka pada sistem operasi atau komputer yang menggunakan menu grafis agar mempermudah para penggunanya untuk berinteraksi dengan komputer atau sistem operasi. GUI merupakan antarmuka pada sistem operasi komputer yang menggunakan menu grafis. Sejarah Singkat GUI : Pada awal diciptakan, komputer dijalankan dengan menggunakan perintah yang diketik pada layar monitor menggunakan keyboard. Hanya orang2 tertentu sajalah yang bisa mengoperasikan komputer Akhirnya para ahli terdorong untuk dapat menciptakan sesuatu yang dapat digunakan oleh orang kebanyakan dengan cara yang praktis dan mudah diingat Kemudian lahirlah yang disebut GUI (yang seperangkat aplikasinya menampilkan semua menu, ikon dan alat penunjuk lain yang menggantikan perintah ketik di shell Hal ini membuat pengguna komputer menjadi lebih mudah untuk mengoperasikan sebuah perangkat dari pada mengingat perintah yang menggunakan teks pada sebuah kotak command tertentu. 95 GUI pertama kali digunakan pada komputer yang diproduksi oleh APPLE yaitu Machintos dengan steve Jobs sebagai penggagasnya. Penggunaan GUI : • Selain komputer, penggunaan GUI juga diterapkan pada beberapa jenis usaha yang spesifik • Contoh : ATM milik Bank • Meskipun berbasis teks, namun sudah dianggap semi GUI karena pengguna tidak perlu mengetikkan perintah untuk mentransfer uang • Kita hanya perlu menekan tombol yang sejajar dengan menu yang ada Keuntungan dan Kekurangan GUI : Menarik Minat Pengguna Menggunakan ikon grafik dapat mempermudah dan mengurangi kobesanan pengguna pada waktu menggunakan komputer Memudahkan pengguna Pengguna lebih mudah memahami apa yang dipaparkan tanpa perlu banyak membaca Memahirkan Pengguna Dengan Cepat Cara memanipulasi objek pada screen adalah sama dalam setiap aplikasi yang berlainan masa latihan pengguna yang Singkat Karena pengguna GUI telah memudahkan pengguna aplikasi maka pengguna dapat mengurangi masa latihan dan dapat belajar atau latihan dengan menggunakan aplikasi yang baru Resolusi Gambar yang Tinggi Dengan menggunakan GUI maka kita dapat menggunakan gambar atau tulisan yang bisa menghasilkan sampai dengan 256 warna 96 Pembuatan User Interface : Digunakan untuk mempermudah user dalam mengakomodasikan bentuk desain kedalam sebuag gambar, tulisan dsb. Teknik Coding : • Digunakan sepintas lalu, baik untuk menarik perhatian • Mengabaikan penggunaan video, baik untuk membuat sesuatu menjadi solid. Tipografi : • Karakter dan simbol dalam penggunaannya mudah dilihat dan dibedakan • Menghindari penggunaaan upper case (huruf besar) pada tiap huruf dalam suatu pengetikan naskah • Penggunaan campuran huruf kecil dan besar mempercepat proses membaca • Mudah dibaca • Mudah dikenali dengan adanya sekumpulan jenis huruf yang digunakan untuk mengetik suatu naskah/teks Merancang GUI yang baik : http://halimatussholehah.blogspot.co.id/2015/03/konsep-gui.html Konsep GUI ( Graphics User Interface ) GUI adalah singkatan dari Graphical User Interface, digunakan untuk membuat tampilan di layar komputer yang berbentuk grafis. GUI berbeda dengan teknologi komputer dimasa lalu. Komputer jaman dahulu tampilan hanya sebatas teks. Keunggulan GUI teknologi GUI ini adalah kita/user dapat menjalankan komputer dan instruksiinstruksi hanya dengan menekan mouse (klik). 97 Graphical User Interface atau GUI adalah metoda interaksi secara grafis antara pengguna dan komputer. GUI menjadi salah satu faktor kemudahan dalam penggunaan komputer. Contoh: Microsoft Windows, MacOS dan Xwin menggunakan jenis GUI yang berbeda. http://antoniusricardo.blogspot.co.id/2012/09/konsep-gui-graphics-userinterface.html 4. Multitasking dalam dunia komputer berarti melakukan pekerjaan yang berbeda secara realtime dan bersamaan dalam satu perangkat. Arti istilah Multitasking dianggap berkaitan erat dengan pengertian berikut Beberapa program dapat berjalan pada saat yang bersamaan. identik dengan multiprogramming. Multitasking merupakan suatu modus dari sistem operasi. Terdapat beberapa jenis dari multitasking ini, yaitu: Sistem Multitasking, Time-Slice Multitasking, Cooperative Multitasking, Cooperarative Multitasking dan Context Switching. a. Sistem multitasking Sistem Multitasking merupakan sistem yang mampu mengerjakan beberapa pekerjaan sekaligus pada saat yang bersamaan. Arti istilah system dianggap berkaitan erat dengan pengertian berikut Suatu jaringan kerja dari prosedur-prosedur yang saling berhubungan, berkumpul bersama-sama untuk melakukan suatu kegiatan atau untuk menyelesaikan suatu sasaran tertentu. Esensinya sistem terdiri dari: 1. komponen-komponen dalam sistem tersebut, mencakup - perangkat keras/hardware, - perangkat lunak/software, 98 - prosedur-prosedur/procedure, - perangkat manusia/brainware, dan - informasi/information itu sendiri; 2.serta fungsi-fungsi teknologi di dalamnya yaitu: - input, - proses/process, - output, - penyimpanan/storage dan - komunikasi/communication. Dalam atribut file istilah ini merupakan bahwa file yang dimaksud merupakan file system atau merupakan file yang berupa program computer b. Time-Slice Multitasking Arti istilah Time-Slice Multitasking dianggap berkaitan erat dengan pengertian berikut merupakan salah satu jenis multitasking yang digunakan pada beberapa sistem operasi, terutama pada OS/2, dimana setiap tugas memperoleh perhatian dari Microprocessor berdasarkan pembagian waktu proses. Agar proses dapat dilaksanakan dengan baik, maka sistem tersebut diberi tingkat prioritas atau diproses berdasarkan urutan. Arti istilah operating system dianggap berkaitan erat dengan pengertian berikut yaitu Perangkat lunak sistem yang mengatur dan mengendalikan perangkat keras dan memberikan kemudahan penggunaan komputer ke pemakai. OS ini mengontrol penyimpanan data, input, output dari suatu perangkat ke perangkat lainnya. Dalam saat menjalankan tugasnya OS ini memiliki tugas utamanya (OS Task) dan Sasarannya (OS Target). Sistem operasi mempunyai dua tugas utama, yaitu : 1. Pengelola seluruh sumber daya sistem komputer (sebagai resource manager). 2. Sistem operasi sebagai penyedia layanan (sebagai extended}}/ngsi:function}}fungsi yang baru tanpa mengganggu layanan yang dijalankan oleh sistem komp’ style=’color:blue’>virtual machine). 99 c. cooperative multitasking Arti istilah cooperative multitasking dianggap berkaitan erat dengan pengertian berikut merupakan multitasking yang diterapkan pada Macintosh serta pada banyak sistem operasi terbaru(Microsoft Windows), dimana tugas pada latar belakang (background diberi waktu untuk memproses selama waktu sepi dan tidak banyak digunakan oleh tugas pada latar depan (foreground). d. cooperarative multitasking Arti istilah cooperarative multitasking dianggap berkaitan erat dengan pengertian berikut Merupakan salah satu type multitasking dimana satu tugas latar belakang atau lebih diberikan waktu pemrosesan selama tugas-tugas latar depan menganggur hanya jika tugastugas latar belakang mengijinkannya. Arti istilah pemrosesan dianggap berkaitan erat dengan pengertian berikut yaitu Kegiatan yang melakukan pengolahan suatu data menjadi informasi. Informasi dari beberapa data masukan, dan hasil dari proses tersebut menghasilkan output. e. context switching Arti istilah context switching dianggap berkaitan erat dengan pengertian berikut alihan switching, merupakan salah satu jenis dari multitasking yang paling sederhana, dimana dua aplikasi dipanggil sekaligus, namun hanya yang menjadi latar depan (foreground) diberikan waktu proses, sedangkan untuk mengaktifkan aplikasi yang lainnya (background) adalah dengan mengaktifkan jendela ke aplikasi yang dimaksud, sehingga menjadi aplikasi foreground. http://12650076-si.blogspot.co.id/2013/03/multitasking.html Konsep Multi Tasking Konsep multitasking harusnya tidak hanya berlakukan untuk komputer, mungkin dahulu sebenarnya konsep ini malah diadopsi oleh pembuat sistem operasi dari kehidupan keseharian manusia. Lihat saja seorang ibu bisa memasak sayur, menanak nasi sambil mengendong anaknya (subhanallah, begitu supernya seorang ibu ya). 100 Nah dengan konsep multitasking harusnya kita bisa mengerjakan beberapa pekerjaan dalam waktu yang hampir bersamaan. Dan yang penting dari konsep ini adalah bagaimana menyelesaikan semua pekerjaan yang dilakukan secara persamaan itu dengan baik. Ataupun jika terdapat salah satu pekerjaan yang hasilnya tidak sesuai dengan yang diharapkan maka tidak akan mengganggu pekerjaan yang lain. Sebenarnya konsep dasarnya begitu sederhana, tapi dalam mengaplikasikannya dalam kehidupan sehari-hari kadang tidak semudah yang dibayangkan. Beberapa hal yang membuat pengaplikasian multitasking tidak berjalan dengan lancar adalah kurang bisanya melakukan manajemen prioritas, gagalnya manajemen waktu dan yang terakhir adalah ikut peran sertanya masalah hati dan perasaan. Kurang bisanya melakukan manajemen Prioritas Dalam sistem operasi sendiri penyelesaian task task yang ada saja menggunakan prioritas. Ada yang menggunakan prinsip first in first out (FIFO), ada yang memakai last in first out (LIFO), ada juga yang berdasarkan urgensi dari task yang dijalankan. Begitu pula dalam kehidupan, harusnya segala pekerjaan yang ada kita pasang prioritasnya. Ada yang memang harus cepat diselesaikan karena menyangkut hajat hidup orang banyak, ada yang bisa dikerjakan dua jam lagi. Tapi saat semua terasa urgen bagaimana mensikapinya? Kalau kita telusuri tentanya dibalik yang urgen-urgen itu pasti ada yang paling urgen. Nah kita bisa mengklasifikasikan berdasarkan ke-urgen-an pekerjaan yang ada, atau ada juga orang yang menyusun prioritas berdasarkan deadline yang diberikan pada setiap pekerjaan. http://antoniusricardo.blogspot.co.id/2012/09/konsep-multi-tasking.html 101 KELOMPOK 9 SISTEM OPERASI WINDOWS DAN SEJARAHNYA Awal perkembangan windows Microsoft Windows atau lebih dikenal dengan sebutan Windows adalah keluarga sistem operasi komputer pribadi yang dikembangkan oleh Microsoft yang menggunakan antarmuka dengan pengguna berbasis grafik (graphical user interface). Sistem operasi Windows telah berevolusi dari MS-DOS, sebuah sistem operasi yang berbasis modus teks dan command-line. Windows versi pertama, Windows Graphic Environment 1.0 pertama kali diperkenalkan pada 10 November 1983, tetapi baru keluar pasar pada bulan November tahun 1985 yang dibuat untuk memenuhi kebutuhan komputer dengan tampilan bergambar. Windows 1.0 merupakan perangkat lunak 16-bit tambahan (bukan merupakan sistem operasi) yang berjalan di atas MS-DOS (dan beberapa varian dari MS-DOS), sehingga ia tidak akan dapat berjalan tanpa adanya sistem operasi DOS. Versi 2.x, versi 3.x juga sama. Beberapa versi terakhir dari Windows (dimulai dari versi 4.0 dan Windows NT 3.1) merupakan sistem operasi mandiri yang tidak lagi bergantung kepada sistem operasi MS-DOS. Microsoft Windows kemudian bisa berkembang dan dapat menguasai penggunaan sistem operasi hingga mencapai 90%. Windows 1.0 Versi pertama Microsoft Windows, yang disebut dengan Windows 1.0, dirilis pada tanggal 20 November 1985. Versi ini memiliki banyak kekurangan dalam beberapa fungsionalitas, sehingga kurang populer di pasaran. Pada awalnya Windows versi 1.0 ini hendak dinamakan dengan Interface Manager, akan tetapi Rowland Hanson, kepala bagian pemasaran di Microsoft Corporation, meyakinkan para petinggi Microsoft bahwa nama “Windows” akan lebih “memikat” konsumen. Windows 1.0 bukanlah sebuah sistem operasi yang lengkap, tapi hanya memperluas kemampuan MS-DOS dengan tambahan antarmuka grafis. Selain itu, Windows 1.0 juga memiliki masalah dan kelemahan yang sama yang dimiliki oleh MS-DOS. Windows 2.x Windows versi 2 pun muncul kemudian pada tanggal 9 Desember 1987, dan menjadi sedikit lebih populer dibandingkan dengan pendahulunya. Sebagian besar populeritasnya didapat karena kedekatannya dengan aplikasi grafis buatan Microsoft, Microsoft Excel for Windows dan Microsoft Word for Windows. Aplikasi-aplikasi Windows 102 dapat dijalankan dari MS-DOS, untuk kemudian memasuki Windows untuk melakukan operasinya, dan akan keluar dengan sendirinya saat aplikasi tersebut ditutup. Microsoft Windows akhirnya memperoleh peningkatan signifikan saat Aldus PageMaker muncul dalam versi untuk Windows, yang sebelumnya hanya dapat berjalan di atas Macintosh. Beberapa ahli sejarahwan komputer mencatat ini sebagai kemunculan sebuah aplikasi yang laku secara signifikan selain buatan Microsoft sebagai awal kesuksesan Microsoft Windows. Windows versi 2.0x menggunakan model memori modus real, yang hanya mampu mengakses memori hingga 1 megabita saja. Dalam konfigurasi seperti itu, Windows dapat menjalankan aplikasi multitasking lainnya, semacam DESQview, yang berjalan dalam modus terproteksi yang ditawarkan oleh Intel 80286. Windows XP Pada tahun 2001, Microsoft memperkenalkan Windows XP (yang memiliki nama kode “Whistler” selama pengembangan. Akhirnya, setelah merilis beberapa versi Windows berbasis Windows 9x dan NT, Microsoft berhasil menyatukan kedua jajaran produk tersebut. Windows XP menggunakan kernel Windows NT 5.1, sehingga menjadikan kernel Windows NT yang terkenal dengan kestabilannya memasuki pasar konsumen rumahan, untuk menggantikan produk Windows 9x yang berbasis 16/32-bit yang sudah menua. • rumahan. Windows XP Home Edition, yang ditujukan untuk pasar desktop dan laptop • Windows XP Home Edition N, sama seperti Home Edition yang biasa, tapi tidak memiliki Windows Media Player, karena memang peraturan Uni Eropa tidak memperbolehkannya. • Windows XP Professional, yang ditujukan bagi para power user dan pebisnis. • Windows XP Professional N, sama seperti Professional Edition, tapi tidak memiliki Windows Media Player, karena peraturan Uni Eropa tidak mengizinkannya. • Windows XP Media Center Edition (MCE), dirilis pada bulan November 2002, merupakan Windows XP Home Edition yang ditujukan untuk dektop dan laptop dengan penekanan pada hiburan rumahan. o Windows XP Media Center Edition 2003 o Windows XP Media Center Edition 2004 Windows XP Media Center Edition 2005, yang dirilis pada 12 Oktober 2004. 103 WINDOWS 7 Windows 7 adalah versi windows terakhir yang menggunakan menu start yang menggantikan versi windows sebelumnya, Windows Vista.Windows 7 dirilis untuk pabrikan komputer pada 22 Juli 2009 dan dirilis untuk publik pada 22 Oktober 2009 kurang dari tiga tahun setelah rilis pendahulunya, Windows Vista. Tidak seperti pendahulunya yang memperkenalkan banyak fitur baru, Windows 7 lebih fokus pada pengembangan dasar Windows, dengan tujuan agar lebih kompatibel dengan aplikasi-aplikasi dan perangkat keras komputer yang kompatibel dengan Windows Vista. Presentasi Microsoft tentang Windows 7 pada tahun 2008 lebih fokus pada dukungan multi-touch pada layar, desain ulang taskbar yang sekarang dikenal dengan nama Superbar, sebuah sistem jaringan rumahan bernama HomeGroup , dan peningkatan performa. Beberapa aplikasi standar yang disertakan pada versi sebelumnya dari Microsoft Windows, seperti Windows Calendar, Windows Mail, Windows Movie Maker, dan Windows Photo Gallery, tidak disertakan lagi di Windows 7; kebanyakan ditawarkan oleh Microsoft secara terpisah sebagai bagian dari paket Windows Live Essentials yang gratis. Spesifikasi perangkat keras Microsoft telah mempublikasikan spesifikasi kebutuhan minimum perangkat keras untuk Windows 7. Spesifikasi minimal Windows 7 (yang disarankan) Arsitektur 32-bit 64-bit Kecepatan prosesor 1 GHz 32-bit 1 GHz 64-bit (RAM) 1 GB 2 GB Unit pengolah grafis Pengolah grafis dengan dukungan DirectX 9 dan WDDM Driver Model 1.0 (tidak terlalu diperlukan, hanya dibutuhkan untuk Windows Aero) Hard disk (HDD) Minimal 16 GB Minimal 20 GB Drive Room DVD drive (untuk instalasi dari media DVD) Persyaratan tambahan untuk bisa menggunakan fitur tertentu: • BitLocker memerlukan Trusted Platform Module membutuhkan flash drive untuk menggunakan BitLocker To Go. (TPM) 1.2 dan 104 • Windows XP Mode memerlukan tambahan memori 1 GB, kapasitas tambahan 15 GB cakram keras, dan CPU yang mendukung virtualisasi perangkat keras, seperti teknologi AMD-V atau Intel VT. PROSES INSTALISASI OPERASI WINDOWS XP • Masukan CD Windows XP terlebih dahulu, kemudian kita masukan CD tersebut ke CDROM/DVDROM. Lalu restart computer, kemudian pada saat booting kita tekan tombol Delete pada keybord agar kita masuk ke BIOS (Basic Input Output System) komputer. Pada tampilan layar biasanya terdapat tulisan ‘Press DEL to run Setup’ bisa kita lihat pada gambar di bawah ini: • Lalu kita akan masuk pada BIOS kemudian pilih Boot pada menu dan pilih item Boot Device Priority seperti pada gambar dibawah ini: • Setelah itu Kita akan melakukan perubahan pada posisi 1st Boot Device yakni kita ganti dengan CDROM. caranya, klik ENTER lalu pilih CDROM. Lalu tekan F10 untuk menyimpan konfigurasinya. pilih YES, maka akan me-Restart. • Setelah pada tampilan berikut tekan Enter untuk lanjut pada proses instal. • Lanjut pada Lisencing Agreement tekan F8 untuk lanjut. • Pada gambar, posisi partisi belum terisi oleh sistem windows. Tekan Enter untuk menginstal langsung tanpa membuat partisi. • Atau jika membuat partisi, Tekan C untuk membuat partisi. Lalu masukan berapa besar kapasitas partisi yang di inginkan. dan tekan Enter untuk membuat partisinya seperti terlihat pada gambar. • Kemudian tekan Enter untuk melakukan proses instal. • Dan pilih NTFS file system (Quick) atau FAT file system (Quick) lalu tekan • gambar. Bila proses instalasi langkah diatas sudah benar maka akan tampil seperti Enter. • Setelah itu kamu sampai pada layar berikut klik Next. 105 • Lalu isikan dengan Nama dan Organisasi Kamu kemudian tekan Next. • Disini Kamu akan mengisikan Produk Key atau Serial Number dari type windows Kamu tekan Next lagi. • Isikan nama komputer dan password untuk mengaksesnya lalu tekan Next. • Set Time Zone pada posisi (GMT+80:00) klik Next. • Typical settings: Pada option ini settingan jaringan akan dibuat default windows dan Custom settings: Untuk mensetting jaringan kamu secara manual lalu klik Next. • Bila kamu terhubung kejaringan local dengan domain pilih option Yes, lalu isi dengan nama DOMAIN yang sama dengan DOMAIN jaringan kamu dan sebaliknya jika tidak terhubung kejaringan atau terhubung tapi tanpa DOMAIN pilih option No, sekali lagi tekan Next. • Selanjutnya kamu tinggal mengklik Ok,Next,Skip dan Finish juga diminta mengisikan nama kamu. hingga kamu berada pada tampilan Dekstop Windows seperti dibawah ini. Sekarang Kamu tinggal menginstal driver hardware CPU Kamu. INSTALISASI PERANGKAT KERAS 1)Personal Computer Tipe personal komputer yang digunakan di dalam jaringan akan sangat menentukan unjuk kerja dari jaringan tersebut. Di dalam jaringan tipe Client-Server, komputer yang difungsikan sebagai server mutlak harus memiliki unjuk kerja lebih tinggi dibandingkan komputer-komputer lain sebagai workstation-nya, karena server akan bertugas menyediakan fasilitas dan mengelola operasional jaringan tersebut. 2) Network Internet Card (NIC) Berdasarkan tipe bus, ada beberapa tipe network interface card (nic) atau network card, yaitu ISA dan PCI. Saat ini jenis network card yang banyak digunakan, yaitu PCI. 3) Pengkabelan 106 Jaringan komputer pada dasarnya adalah jaringan kabel, menghubungkan satu sisi dengan sisi yang lain, namun bukan berarti kurva tertutup, bisa jadi merupakan kurva terbuka dengan terminator diujungnya). Topologi jaringan dan jenis kabel yang umum digunakan dapat dilihat pada tabel berikut: Topologi Jaringan Jenis kabel yang umum digunakan Topologi Bus Coaxial, twisted pair, fiber Topologi Ring Twisted pair, fiber Topologi Star Twisted pair, fiber Setiap jenis kabel mempunyai kemampuan dan spesifikasi yang berbeda, oleh karena itu dibuatlah pengenalan tipe kabel. Ada tiga jenis kabel yang dikenal secara umum, yaitu: a) Kabel Coaxial 1. Thick coaxial cable (Kabel Coaxial “gemuk”) Dispesifikasikan berdasarkan standar IEEE 802.310BASE5, dimana kabel ini mempunyai diameter rata-rata 12mm, dan biasanya diberi warna kuning. Kabel jenis ini biasa disebut sebagai standard ethernet atau thick Ethernet, atau hanya disingkat ThickNet, atau bahkan hanya disebut sebagai yellow cable. 107 Spesifikasi dan aturan sebagai berikut : Setiap ujung harus diterminasi dengan terminator 50-ohm. Maksimum 3 segment dengan peralatan terhubung (attached devices) atau berupa populated segments. Setiap kartu jaringan mempunyai pemancar tambahan (external transceiver). Setiap segment maksimum berisi 100 perangkat jaringan, termasuk dalam hal ini repeaters. Maksimum panjang kabel per segment adalah 1.640 feet (atau sekitar 500 meter). Maksimum jarak antar segment adalah 4.920 feet (atau sekitar 1500 meter). Setiap segment harus diberi ground. Jarak maksimum antara tap atau pencabang dari kabel utama ke perangkat (device) adalah 16 feet (sekitar 5 meter). Jarak minimum antar tap adalah 8 feet (sekitar 2,5 meter). 2. Thin coaxial cable (Kabel Coaxial “Kurus”) Banyak dipergunakan di kalangan radio amatir, terutama untuk transceiver yang tidak memerlukan output daya yang besar. Untuk digunakan sebagai perangkat jaringan, kabel coaxial jenis ini harus memenuhi standar IEEE 802.3 10BASE2, dimana diameter rata-rata berkisar 5mm dan biasanya berwarna hitam atau warna gelap lainnya. Jika diimplementasikan dengan Tconnector dan terminator dalam sebuah jaringan, harus mengikuti aturan sebagai berikut : Setiap ujung kabel diberi terminator 50-ohm. Panjang maksimal kabel adalah 1,000 feet (185 meter) per segment. Setiap segment maksimum terkoneksi sebanyak 30 perangkat jaringan (devices). 108 Kartu jaringan cukup menggunakan transceiver yang onboard, tidak perlu tambahan transceiver, kecuali untuk repeater. Maksimum ada 3 segment terhubung satu sama lain (populated segment). Setiap segment sebaiknya dilengkapi dengan satu ground. Panjang minimum antar TConnector adalah 1,5 feet (0.5 meter). Maksimum panjang kabel dalam satu segment adalah 1,818 feet (555 meter). b) Fiber Optic Harga dan proses pemasangannya lebih sulit. Namun demikian, jaringan yang menggunakan FO dari segi kehandalan dan kecepatan tidak diragukan. Kecepatan pengiriman data dengan media FO lebih dari 100Mbps dan bebas pengaruh lingkungan. c) Twisted Pair Ethernet Kabel Twisted Pair ini terbagi menjadi dua jenis yaitu shielded twisted pair (STP) dan unshielded twisted pair (UTP). STP adalah jenis kabel yang memiliki selubung pembungkus sedangkan UTP tidak mempunyai selubung pembungkus. Untuk koneksinya kabel jenis ini menggunakan konektor RJ-11 atau RJ-45. Kategori kabel Type Feature Type CAT 1 UTP Analog (biasanya digunakan di perangkat telephone pada umumnya dan pada jalur ISDN –integrated service digital networks. Juga untuk menghubungkan modem dengan line telepon) Type CAT 2 UTP Up to 1 Mbits (sering digunakan pada topologi token ring) Type CAT 3 UTP, STP 16 Mbits data transfer (sering digunakan pada topologi token ring atau 10BaseT) 109 Type CAT 4 UTP, STP 20 Mbits data transfer (biasanya digunakan pada topologi token ring) Type CAT 5 100 Mbits data transfer / 22 db Type CAT 5enhanced UTP, STP 1 Gigabit Ethernet up to 100 meters - 4 copper pairs (kedua jenis CAT5 sering digunakan pada topologi token ring 16Mbps, Ethernet 10Mbps atau pada Fast Ethernet 100Mbps) Type CAT 6 Up to 155 MHz or 250 MHz 2,5 Gigabit Ethernet up to 100 meters or 10 Gbit/s up to 25 meters . 20,2 db (Gigabit Ethernet) Type CAT 7 Up to 200 MHz or 700 Mhz Giga-Ethernet / 20.8 db (Gigabit Ethernet) UTP Cable (khususnya CAT5 / CAT5e) Untuk penggunaan koneksi komputer, dikenal 2 buah tipe penyambungan kabel UTP ini, yaitu straight cable dan crossover cable. Fungsi masing-masing jenis koneksi ini berbeda, straight cable digunakan untuk menghubungkan client ke HUB/Router, sedangkan crossover cable digunakan untuk menghubungkan client ke client atau dalam kasus tertentu digunakan untuk menghubungkan HUB ke HUB. Straigt Cable Menghubungkan ujung satu dengan ujung lain dengan satu warna. Standar Pemasangan Kabel UTP pada Konektor RJ-45. 110 Pin 1 wire color: White/orange Pin 2 wire color: Orange Pin 3 wire color: White/green Pin 6 wire color: Blue Pin 4 wire color: White/blue Pin 5 wire color: Green Pin 7 wire color: White/brown Pin 8 wire color: Brown INSTALISASI PERANGKAT LUNAK 1. Membaca Manual Instalasi Setup Apa sih Membaca Manual Instalasi Setup itu? Maksudnya ialah membaca tata cara / langkah-langkah dalam melakukan instalasi suatu aplikasi / software. Ini semacam buku panduan dalam menginstall aplikasi / software sehingga dapat berjalan dengan baik dan benar. 2. Koneksi Kendali ke Piranti Maksudnya disini adalah bagaimana cara sebuah perangkat lunak / software dapat mengendalikan sebuah hardware / perangkat keras. Seperti pada contoh driver pada sebuah laptop. Tanpa sebuah driver perangkat – perangkat keras seperti WiFi Adapter, Soundcard, VGA Card, dll. Tidak akan bisa berjalan dengan baik tanpa adanya kendali dari sebuah perangkat lunak. 3. Pengaturan Fungsi Jaringan Jaringan komputer (jaringan) adalah sebuah sistem yang terdiri atas komputerkomputer yang didesain untuk dapat berbagi sumber daya (printer, CPU), berkomunikasi (surel, pesan instan), dan dapat mengakses informasi(peramban web). Tujuan dari jaringan komputer adalah agar dapat mencapai tujuannya, setiap bagian dari jaringan komputer dapat meminta dan memberikan layanan (service). Pihak yang 111 meminta/menerima layanan disebut client dan yang memberikan/mengirim layanan disebut server. Desain ini disebut dengan sistem client-server, dan digunakan pada hampir seluruh aplikasi jaringan komputer. 4. Pengaturan Peripheral Lain Sebelum itu kita harus tau terlebih dahulu apa itu peripheral? Peripheral komputer adalah komponen tambahan yang berfungsi untuk mendukung kerja komputer sehingga fungsi kerja komputer menjadi maksimal. Peripheral terbagi menjadi 2 macam berdasarkan fungsi peripheral komputer tersebut, yaitu: • Peripheral utama, yaitu perangkat keras atau hardware yang harus ada jika kita megoperasikan komputer sehingga peripheral ini tidak dapat dipisahkan dengan komputer utama, contohnya: mouse, keyboard dan monitor. • Peripheral Pendukung, yaitu perangkat keras atau hardware yang tidak harus ada pada saat pengoperasian komputer, sehingga peripheral ini merupakan perangkat tambahan untuk memaksimalkan kerja komputer, contohnya: printer, scaner, modem, dan lain-lain. Setiap peripheral mempunyai peran dan fungsi masing-masing sehingga saling membantu sama lain. Dari macam peripheral diatas dapat digaris bawahi bahwa setiap peripheral saling mendukung kerja satu sama lain antara komponen peripheral utama maupun komponen peripheral pendukung. sebagai contoh untuk melakukan perintah print pada printer maka diperlukan keyboard atau mouse untuk memasukan intruksi agar komputer dapat melakukan perintah print. 112