Timesharing
Sejarah Time Sharing
Time Sharing Sistem sendiri ditemukan oleh Christopher Strachy pada tahun 1959. Baru pada tahun 1961, pertama kali sistem yang benar-benar berbentuk time sharing system dilakukan di MIT (Massachusetts Institute of Technology) dan diberi nama CTSS (Compatible Time Sharing System) yang bisa melayani sebanyak 8 pemakai dengan menggunakan komputer IBM 7090. Pada Time Sharing Sistem tiap-tiap User dilayani oleh komputer dengan bergiliran dalam waktu yang sangat cepat. Sehingga tiap pemakai komputer tidak merasa bahwa komputer melayani beberapa pemakai sekaligus secara bergiliran.
Konsep ini pertama kali dijelaskan publik pada awal 1957 oleh Bob Bemer sebagai bagian dari sebuah artikel di Majalah Kontrol Otomatis. Proyek pertama untuk menerapkan sistem time-sharing diprakarsai oleh John McCarthy pada tahun 1957 akhir, pada IBM dimodifikasi 704, dan kemudian pada komputer IBM 7090 tambahan diubah. Meskipun ia pergi untuk bekerja pada proyek MAC dan proyek lainnya, salah satu hasil proyek, yang dikenal sebagai Sistem Compatible Time-Sharing atau CTSS, telah didemonstrasikan pada bulan November 1961. CTSS memiliki klaim yang baik untuk menjadi sistem time-sharing pertama dan tetap digunakan sampai 1973. Lawan lain untuk sistem time-sharing pertama menunjukkan adalah PLATO II, diciptakan oleh Donald Bitzer pada demonstrasi publik di Robert Allerton Park dekat University of Illinois pada awal 1961. Bitzer telah lama mengatakan bahwa proyek PLATO akan mendapatkan hak paten pada waktu-sharing jika hanya University of Illinois sudah tahu bagaimana proses aplikasi paten lebih cepat, tetapi pada waktu paten universitas sangat sedikit dan jauh antara, mereka mengambil waktu yang lama untuk disampaikan. Sistem time-sharing pertama yang sukses adalah Dartmouth Time Sharing System.
Konsep ini pertama kali dijelaskan publik pada awal 1957 oleh Bob Bemer sebagai bagian dari sebuah artikel di Majalah Kontrol Otomatis. Proyek pertama untuk menerapkan sistem time-sharing diprakarsai oleh John McCarthy pada tahun 1957 akhir, pada IBM dimodifikasi 704, dan kemudian pada komputer IBM 7090 tambahan diubah. Meskipun ia pergi untuk bekerja pada proyek MAC dan proyek lainnya, salah satu hasil proyek, yang dikenal sebagai Sistem Compatible Time-Sharing atau CTSS, telah didemonstrasikan pada bulan November 1961. CTSS memiliki klaim yang baik untuk menjadi sistem time-sharing pertama dan tetap digunakan sampai 1973. Lawan lain untuk sistem time-sharing pertama menunjukkan adalah PLATO II, diciptakan oleh Donald Bitzer pada demonstrasi publik di Robert Allerton Park dekat University of Illinois pada awal 1961. Bitzer telah lama mengatakan bahwa proyek PLATO akan mendapatkan hak paten pada waktu-sharing jika hanya University of Illinois sudah tahu bagaimana proses aplikasi paten lebih cepat, tetapi pada waktu paten universitas sangat sedikit dan jauh antara, mereka mengambil waktu yang lama untuk disampaikan. Sistem time-sharing pertama yang sukses adalah Dartmouth Time Sharing System.
Pengertian Time sharing
Time-sharing adalah berbagi sumber daya komputasi antara banyak pengguna melalui multiprogramming dan multi-tasking. Time sharing memungkinkan komputer komputer besar memproses banyak tugas secara simultan, dengan memberikan potongan waktu pada masing-masing tugas, dan beralih dari satu tugas ke tugas lainnya dengan cepat.
Time Sharing merupakan Metode yang dipakai dalam sistem operasi yang memungkinkan sejumlah pemakai dapat berinteraksi dengan proses yang dibuatnya secara bergantian dengan jumlah waktu yang sama.
Time sharing merupakan pengembangan lebih lanjut dari multiprogramming. Dengan memungkinkan sejumlah besar pengguna untuk berinteraksi bersamaan dengan satu komputer, time-sharing secara dramatis menurunkan biaya menyediakan kemampuan komputasi, memungkinkan bagi individu dan organisasi untuk menggunakan komputer tanpa memiliki satu, dan mempromosikan penggunaan komputer dan interaktif pengembangan aplikasi interaktif baru.
Proses Time Sharing
Pada Time Sharing System beberapa terminal terhubung secara seri ke sebuah host komputer. Dalam proses TSS mulai nampak perpaduan teknologi komputer dan teknologi telekomunikasi yang pada awalnya berkembang sendiri- sendiri. Dalam proses ini beberapa host komputer mengerjakan sebuah pekerjaan besar secara paralel untuk melayani beberapa terminal yang tersambung secara seri disetiap host komputer. Dalam proses distribusi mutlak diperlukan perpaduan atau kerjasama yang mendalam antara teknologi komputer dan telekomunikasi, karena selain proses yang harus didistribusikan, semua host komputer wajib melayani terminal-terminalnya dalam satu perintah dari komputer pusat.
. Proses merupakan unit kerja terkecil yang secara individu memiliki sumber daya-sumber daya dan dijadwalkan sistem operasi. Setelah sebuah program dimuat dari media penyimpanan, sebuah instance dari program dijalankan. Instance ini disebut sebuah proses. Sebuah proses memiliki memorinya sendiri, disebut ruang alamat proses (process address space). Ruang alamat proses memiliki dua area penting: area teks dan area data.
Area teks adalah kode program yang sebenarnya; digunakan untuk memberitahukan sistem apa yang harus dilakukan. Area data digunakan untuk menyimpan data konstan dan juga runtime. Sistem operasi memberikan waktu bagi setiap proses untuk dieksekusi. Pada sistem dengan prosesor tunggal, proses tidak sepenuhnya berjalan secara bersamaan. Pada kenyataannya, sebuah penjadwal pada kernel membagi waktu CPU pada semua proses, memberikan sebuah ilusi bahwa proses-proses dijalankan secara bersamaan. Proses ini disebut dengan time-sharing. Pada sistem dengan lebih dari satu CPU atau inti CPU, lebih dari satu proses dapat berjalan bersamaan, tetapi konsep time-sharing masih dipakai untuk membagi waktu CPU yang ada pada setiap proses. Proses-proses baru dibuat dengan menduplikasi proses yang sedang berjalan dengan system call fork system call.
Kernel akan merespon terhadap panggilan ini dengan menduplikasi proses, menamai proses lain sebagai induk (parent), dan proses lain sebagai anak (child). Fork bisa digunakan oleh sebuah program untuk membuat dua proses yang berjalan secara bersamaan pada mesin dengan banyak prosesor. Namun, hal ini seringkali tidak ideal, karena kedua proses akan memiliki alamat ruang prosesnya masing-masing. Duplikasi pertama dari memori proses cukup memakan waktu, dan sangat susah untuk melakukan share data diantara dua proses. Masalah ini diselesaikan oleh sebuah konsep yang disebut multithreading. Multithreading berarti banyak instance dari area teks dapat dijalankan pada waktu yang bersamaan, melakukan pertukaran area data. Instance ini disebut thread dapat dieksekusi secara parallel pada banyak CPU.
. Proses merupakan unit kerja terkecil yang secara individu memiliki sumber daya-sumber daya dan dijadwalkan sistem operasi. Setelah sebuah program dimuat dari media penyimpanan, sebuah instance dari program dijalankan. Instance ini disebut sebuah proses. Sebuah proses memiliki memorinya sendiri, disebut ruang alamat proses (process address space). Ruang alamat proses memiliki dua area penting: area teks dan area data.
Area teks adalah kode program yang sebenarnya; digunakan untuk memberitahukan sistem apa yang harus dilakukan. Area data digunakan untuk menyimpan data konstan dan juga runtime. Sistem operasi memberikan waktu bagi setiap proses untuk dieksekusi. Pada sistem dengan prosesor tunggal, proses tidak sepenuhnya berjalan secara bersamaan. Pada kenyataannya, sebuah penjadwal pada kernel membagi waktu CPU pada semua proses, memberikan sebuah ilusi bahwa proses-proses dijalankan secara bersamaan. Proses ini disebut dengan time-sharing. Pada sistem dengan lebih dari satu CPU atau inti CPU, lebih dari satu proses dapat berjalan bersamaan, tetapi konsep time-sharing masih dipakai untuk membagi waktu CPU yang ada pada setiap proses. Proses-proses baru dibuat dengan menduplikasi proses yang sedang berjalan dengan system call fork system call.
Kernel akan merespon terhadap panggilan ini dengan menduplikasi proses, menamai proses lain sebagai induk (parent), dan proses lain sebagai anak (child). Fork bisa digunakan oleh sebuah program untuk membuat dua proses yang berjalan secara bersamaan pada mesin dengan banyak prosesor. Namun, hal ini seringkali tidak ideal, karena kedua proses akan memiliki alamat ruang prosesnya masing-masing. Duplikasi pertama dari memori proses cukup memakan waktu, dan sangat susah untuk melakukan share data diantara dua proses. Masalah ini diselesaikan oleh sebuah konsep yang disebut multithreading. Multithreading berarti banyak instance dari area teks dapat dijalankan pada waktu yang bersamaan, melakukan pertukaran area data. Instance ini disebut thread dapat dieksekusi secara parallel pada banyak CPU.
Time Sharing System (TSS) merupakan konsep distribusi proses berdasarkan waktu, ini merupakan bentuk pertama pengaplikasian jaringan (network) komputer. Pada sistem TSS beberapa terminal terhubung secara seri ke sebuah host komputer. Time-sharing dikembangkan dari kesadaran bahwa sementara setiap pengguna tunggal tidak efisien, sekelompok besar pengguna bersama-sama tidak. Hal ini disebabkan pola interaksi, dalam banyak kasus pengguna masuk semburan informasi diikuti oleh jeda yang panjang, tapi sekelompok pengguna yang bekerja pada saat yang sama akan berarti bahwa jeda dari satu pengguna akan digunakan oleh aktivitas yang lain . Mengingat ukuran kelompok yang optimal, proses keseluruhan bisa sangat efisien. Demikian pula, irisan kecil dari waktu yang dihabiskan menunggu disk, tape, atau input jaringan dapat diberikan kepada pengguna lain.
Beberapa perusahaan mulai menyediakan layanan time-sharing sebagai biro jasa. Awal digunakan sistem Teletype K/ASR-33s atau K/ASR-35s dalam lingkungan ASCII, dan Selectric mesin tik IBM terminal berbasis di lingkungan EBCDIC. Mereka akan terhubung ke komputer pusat dengan dial-up modem Bell 103A atau modem akustik ditambah beroperasi pada 10-15 karakter per detik. Kemudian terminal dan modem didukung 30-120 karakter per detik. Sistem time-sharing akan menyediakan lingkungan operasi yang lengkap, termasuk berbagai bahasa pemrograman prosesor, berbagai paket perangkat lunak, penyimpanan file, pencetakan massal, dan penyimpanan off-line. Pengguna yang dibebankan sewa terminal, biaya selama berjam-jam waktu terhubung, biaya untuk detik waktu CPU, dan biaya untuk kilobyte-bulan penyimpanan disk.
Sistem yang umum digunakan untuk time-sharing termasuk SDS 940, PDP-10, dan IBM 360. Perusahaan yang menyediakan layanan ini termasuk GE GEISCO, IBM anak Layanan Biro Corporation, Tymshare (didirikan pada 1966), Nasional CSS (didirikan pada 1967 dan dibeli oleh Dun & Bradstreet di 1979), Dial Data (dibeli oleh Tymshare pada tahun 1968), dan Bolt , Beranek, dan Newman. Pada tahun 1968, ada 32 biro jasa seperti melayani NIH sendiri [1]. Panduan Auerbach untuk Timesharing 1973 Edisi 125 daftar layanan timesharing berbeda dengan menggunakan peralatan dari Burroughs, CDC, DEC, HP, Honeywell, IBM, RCA, Univac dan XDS.
Banyak pemikiran diberikan pada tahun 1970 untuk sumber daya komputer terpusat yang ditawarkan sebagai utilitas komputasi, sama dengan utilitas listrik atau telepon. asli Ted Nelson “Xanadu” hypertext repositori dibayangkan sebagai layanan tersebut. Ini menjadi jelas sebagai industri komputer tumbuh bahwa tidak ada konsolidasi seperti sumber daya komputasi akan terjadi sebagai sistem time sharing. Beberapa berpendapat bahwa bergerak melalui komputasi client-server ke server terpusat dan virtualisasi menyajikan pasar untuk utilitas komputasi lagi. Keamanan tidak menjadi isu utama untuk sistem pemrosesan batch terpusat yang umum saat paradigma time-sharing muncul. Tidak jauh lebih dari username keamanan diperlukan pada berbagai kampus. User Komersial, terutama di kategori keuangan dan ritel, menuntut keamanan jauh lebih tinggi dan juga mengangkat isu-isu yang sedang dibahas saat ini sebagai perusahaan mempertimbangkan outsourcing .
Dengan bangkitnya microcomputing pada awal tahun 1980, time-sharing memudar ke latar belakang karena mikroprosesor individu cukup murah yang satu orang bisa memiliki semua waktu CPU yang didedikasikan sepenuhnya untuk kebutuhan mereka, bahkan ketika idle. Internet telah membawa konsep umum kembali waktu-sharing ke popularitas. peternakan Mahal server perusahaan costing jutaan dapat host ribuan pelanggan semua berbagi sumber daya umum yang sama. Seperti dengan terminal serial awal, website beroperasi terutama di semburan kegiatan diikuti oleh periode waktu idle. Sifat meledak memungkinkan layanan yang akan digunakan oleh pelanggan banyak situs sekaligus, dan tidak satupun dari mereka melihat adanya keterlambatan dalam komunikasi sampai server mulai menjadi sangat sibuk.
Beberapa perusahaan mulai menyediakan layanan time-sharing sebagai biro jasa. Awal digunakan sistem Teletype K/ASR-33s atau K/ASR-35s dalam lingkungan ASCII, dan Selectric mesin tik IBM terminal berbasis di lingkungan EBCDIC. Mereka akan terhubung ke komputer pusat dengan dial-up modem Bell 103A atau modem akustik ditambah beroperasi pada 10-15 karakter per detik. Kemudian terminal dan modem didukung 30-120 karakter per detik. Sistem time-sharing akan menyediakan lingkungan operasi yang lengkap, termasuk berbagai bahasa pemrograman prosesor, berbagai paket perangkat lunak, penyimpanan file, pencetakan massal, dan penyimpanan off-line. Pengguna yang dibebankan sewa terminal, biaya selama berjam-jam waktu terhubung, biaya untuk detik waktu CPU, dan biaya untuk kilobyte-bulan penyimpanan disk.
Sistem yang umum digunakan untuk time-sharing termasuk SDS 940, PDP-10, dan IBM 360. Perusahaan yang menyediakan layanan ini termasuk GE GEISCO, IBM anak Layanan Biro Corporation, Tymshare (didirikan pada 1966), Nasional CSS (didirikan pada 1967 dan dibeli oleh Dun & Bradstreet di 1979), Dial Data (dibeli oleh Tymshare pada tahun 1968), dan Bolt , Beranek, dan Newman. Pada tahun 1968, ada 32 biro jasa seperti melayani NIH sendiri [1]. Panduan Auerbach untuk Timesharing 1973 Edisi 125 daftar layanan timesharing berbeda dengan menggunakan peralatan dari Burroughs, CDC, DEC, HP, Honeywell, IBM, RCA, Univac dan XDS.
Banyak pemikiran diberikan pada tahun 1970 untuk sumber daya komputer terpusat yang ditawarkan sebagai utilitas komputasi, sama dengan utilitas listrik atau telepon. asli Ted Nelson “Xanadu” hypertext repositori dibayangkan sebagai layanan tersebut. Ini menjadi jelas sebagai industri komputer tumbuh bahwa tidak ada konsolidasi seperti sumber daya komputasi akan terjadi sebagai sistem time sharing. Beberapa berpendapat bahwa bergerak melalui komputasi client-server ke server terpusat dan virtualisasi menyajikan pasar untuk utilitas komputasi lagi. Keamanan tidak menjadi isu utama untuk sistem pemrosesan batch terpusat yang umum saat paradigma time-sharing muncul. Tidak jauh lebih dari username keamanan diperlukan pada berbagai kampus. User Komersial, terutama di kategori keuangan dan ritel, menuntut keamanan jauh lebih tinggi dan juga mengangkat isu-isu yang sedang dibahas saat ini sebagai perusahaan mempertimbangkan outsourcing .
Dengan bangkitnya microcomputing pada awal tahun 1980, time-sharing memudar ke latar belakang karena mikroprosesor individu cukup murah yang satu orang bisa memiliki semua waktu CPU yang didedikasikan sepenuhnya untuk kebutuhan mereka, bahkan ketika idle. Internet telah membawa konsep umum kembali waktu-sharing ke popularitas. peternakan Mahal server perusahaan costing jutaan dapat host ribuan pelanggan semua berbagi sumber daya umum yang sama. Seperti dengan terminal serial awal, website beroperasi terutama di semburan kegiatan diikuti oleh periode waktu idle. Sifat meledak memungkinkan layanan yang akan digunakan oleh pelanggan banyak situs sekaligus, dan tidak satupun dari mereka melihat adanya keterlambatan dalam komunikasi sampai server mulai menjadi sangat sibuk.
Contoh Penggunaan TSS
Salah satu penggunaan time sharing system ini dapat dilihat dalam pemakaian suatu teller terminal pada suatu bank. Bilamana seorang nasabah datang ke bank tersebut untuk menyimpan uang atau mengambil uang, maka buku tabungannya ditempatkan pada terminal. Dan oleh operator pada terminal tersebut dicatat melalui papan ketik (keyboard), kemudian data tersebut dikirim secara langsung ke pusat komputer, memprosesnya, menghitung jumlah uang seperti yang dikehendaki, dan mencetaknya pada buku tabungan tersebut untuk transaksi yang baru saja dilakukan.
Multiprogramming
Multiprogramming System
Multi programming system adalah dimana job-job disimpan di main memory di waktu yang sama dan CPU dipergunakan bergantian. Hal ini membutuhkan beberapa kemampuan tambahan yaitu : Penyediaan I/O routine oleh sistem, Pengaturan memori untuk mengalokasikan memory pada beberapa Job, penjadwalan CPU untuk memilih job mana yang akan dijalankan, serta pengalokasian hardware lain.
Multiprogramming berarti meletakkan lebih dari sebuah program di main memory. Cara ini dilakukan dengan membagi main memory menjadi beberapa partisi. Tiap partisi akan menyimpan sebuah program. Foreground partitions akan berisi program dengan prioritas yang lebih tinggi sedang background partitions akan berisi program dengan prioritas yang lebih rendah.
Meskipun setiap proses merupakan Entitiy yang berdiri sendiri, dan masing-masing memiliki program Counter dan status internal, beberapa proses sering kali harus berinteraksi dengan proses yang lain. Keluaran dari suatu proses dapat menjadi masukan bagi proses yang lain. Jika proses yang sedang menunggu masukan tidak menemukan masukan yang dikehendaki, proses tersebut diblok sampai masukan tersedia.
Pada saat proses diblok, secara logika proses tersebut tidak dapat dilanjutkan karena menuggu masukan yang belum tersedia. Dapat terjadi bahwa proses yang Ready dan dapat di-run terpaksa harus dihentikan karena sistem operasi arus waktu.
Multiprogramming
Multiprogramming adalah kegiatan menjalankan beberapa program pada memori pada satu waktu. Untuk meningkatkan keseluruhan kemampuan dari sistem komputer, para developer memperkenalkan konsep multiprogramming. Dengan multiprogramming, beberapa tugas disimpan dalam memori dalam satu waktu; CPU digunakan secara bergantian sehingga menambah utilisasi CPU dan mengurangi total waktu yang dibutuhkan untuk menyelesaikan tugas-tugas tersebut.
Melayani banyak program yang tidak ada hubungannya satu sama lain dan dijalankan sekaligus dalam satu komputer yang sama. Pelaksanaan instruksi yang diterapkan adalah:
- program dimuat ke dalam memori,
- program dijalankan sampai mengakses perangkat I/O,
- berpindah (switch) ke pekerjaan lain,
- langkah tersebut berulang terus menerus,
- untuk proses perpindahan (switching), dilaksanakan oleh software.
- program dimuat ke dalam memori,
- program dijalankan sampai mengakses perangkat I/O,
- berpindah (switch) ke pekerjaan lain,
- langkah tersebut berulang terus menerus,
- untuk proses perpindahan (switching), dilaksanakan oleh software.
Mengalokasikan CPU keproses lain untuk sementara proses dapat berada pada status berikut :
1. Submit : Proses baru saja dikirimkan oleh user dan masih menunggu untuk dilayani.
2. Running : Proses benar-benar menggunakan CPU pada saat itu.
3. Ready : Proses berhenti sementara untuk memberikan kesempatan pada proses lain untuk menggunakan CPU.
4. Blocked : Proses tidak dapat di-Run sampai terjadi kejadian eksternal yang sesuai (misalkan selesainya operasi input/output atau telah tersedianya data input).
5. Finished : Proses telah dilaksanakan secara sempurna.
Diantara status Running, Ready dan Blocked, hanya terdapat 4 kemungkinan perubahan status, yaitu :
1. Running ke Blocked : terjadi jika proses diblok, karna menunggu masukan atau menunggu selesainya aktiitas I/O
2. Running ke Ready : terjadi jika proses Scheduler menghentikan proses yang sedang running untuk memberikan kesempatan pada proses lain menggunakan CPU.
3. Blocked ke Ready: Terjadi jika ada kejadian eksternal yang menyebabkan proses dapat dijalankan kembali. Misalnya datangnya input atau selesainya suatu aktifitas I/O.
4. Ready ke Running: Terjadi jika proses siap untuk menggunakan CPU dan masukan yang sesuai untuk proses tersebut telah tiba.
Tidak ada komentar:
Posting Komentar