1 / 51

Evolusi System Software

Evolusi System Software. Languange Translators Batch Monitor Multiprogramming OS Time Sharing OS. LANGUAGE TRANSLATOR. Translator  : Program Komputer yang ditulis dalam programming language untuk mengubah satu program ke program lain yang secara fungsional adalah sama.

durin
Download Presentation

Evolusi System Software

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Evolusi System Software Languange Translators Batch Monitor Multiprogramming OS Time Sharing OS

  2. LANGUAGE TRANSLATOR • Translator : Program Komputer yang ditulisdalamprogramming languageuntukmengubahsatu program ke program lain yang secarafungsionaladalahsama.

  3. TIPE TRANSLATOR • If the translator translates a high level language into another high level language, it's called a translator. • Examples include Haxe, FORTRAN-to-Ada translators, CHILL-to-C++ translators, PASCAL-to-C translators, COBOL(DialectA)-to-COBOL(DialectB) translators. • If the translator translates a high level language into a lower level language it is called a compiler. • setiapbahasadapatditerjemahkanke high level language ataubahasa assembly.

  4. If the translator translates a high level language into an intermediate code which will be immediately executed it is called an interpreter. • If the translator translates target/machine code to source language it is called a decompiler. • Example: DCC, Boomerang Decompilers and Reverse Engineering Compiler(REC).

  5. If the translator translates assembly language to machine code it is called an assembler. Examples include MASM, TASM, NASM and FASM. • If the translator translates machine code into assembly language it is called a disassembler. Examples include gdb, IDA Pro and OllyDbg.

  6. Types of program translatorCompiler, Interpreter, Assembler dan Linker

  7. Pengertian Compiler • Compiler adalahsuatu program yang menerjemahkanbahasa program ( source code) kedalambahasaobjek (obyek code). Compiler menggabungkankeseluruhanbahasa program, mengumpulkannyadankemudianmenyusunnyakembali. • Kompliermemerlukanwaktuuntukmembuatsuatu program dapatdieksekusioleh computer, program yang dieksekusioleh compiler adalahdapatberjalanlebihcepatdibanding program yang diproduksioleh interpreter, disampingitujugabersifatindependen. • Contoh program yang menggunakan compiler adalah Visual Basic, Visual Delphi, dan Pascal.

  8. Tahap Kompilasi: • Pertama source code (program yang ditulis) dibaca ke memori computer. • Source code tersebut diubah menjadi objek code (bahasa Assembly). • Objek code di hubungkan dengan library yang dibutuhkan untuk membentuk file yang bisa dieksekusi.

  9. Pengertian Interpreter • Interpreter adalahPerangkatlunak yang mampumengeksekusi code program (yang ditulisoleh programmer) lalumenterjemahkannyakedalambahasamesin, sehinggamesinmelakukaninstruksi yang dimintaoleh programmer tersebut. Perintah-perintah yang dibuatoleh programmer tersebutdieksekusibarisdemibaris, sambilmengikutilogika yang terdapatdidalamkodetersebut. • Prosesinisangatberbedadengan compiler, dimanapada compiler, hasilnyasudahlangsungberupasatukesatuanperintahdalambentukbahasamesin, dimanaproses Interpreter (penterjemahan) dilaksanakansebelum program tersebutdieksekusi.

  10. Interpreter ataudalambahasa Indonesia dikenalsebagaiJuruBahasaberbedadengan Translator ataupenterjemahdalamsegi media yang dipakaiuntukmenerjemahkan. • Interpreter akanmenterjemahkanbahasasumberkedalambahasasasaransecaralangsungatau orally sementara translator akanmenerjemahkanbahasasumberkebahasasasaransecaratertulis. • Java dijalankanmenggunakan interpreter yaitu Java Virtual Machine (JVM). Hal inimenyebabkan source code Java yang telahdikompilasimenjadi Java bytecodesdapatdijalankanpada platform yang berbeda-beda.

  11. Pengertian Assembler • Bahasa rakitan (bahasa Inggris: assembly language) adalah bahasa pemrograman komputer tingkat rendah. • Bahasa assembly merupakan notasi untuk bahasa mesin yang dapat dibaca oleh manusia dan mempunyai instruksi berbeda-beda tergantung dari arsitektur komputer yang digunakan. (Setiap arsitektur komputer memiliki bahasa mesin yang berbeda-beda sehingga bahasa rakitannya pun berbeda-beda).

  12. Berbedadenganbahasapemrogramantingkattinggi, bahasa assembly ataurakitanbiasanyamemilikihubungan 1-1 denganinstruksibahasamesin, artinyaMnemonicyangditulisdi program denganbahasarakitanakanditerjemahkanmenjaditepatsatukodeoperasi yang dapatdimengertilangsungolehkomputer. • Padabahasatingkattinggi, satuperintahdapatditerjemahkanmenjadibeberapakodeoperasidalambahasamesin.

  13. Bahasaassembly adalahsebuah program yang terdiridariinstruksi-instruksi yang menggantikankode-kodebinerdaribahasamesindengan “mnemonik” yang mudahdiingat. • Misalnyasebuahinstruksipenambahandalambahasamesindengankode “10110011” yang dalambahasa assembly dapatdibuatdalaminstruksimnemonik ADD, sehinggamudahdiingatdibandingkandenganangka 0 dan 1, dalamsetiapinstruksimembutuhkansuatu operand baikberupa data langsungmaupunsuatulokasimemori yang menyimpan data yang bersangkutan.

  14. Bahasa assembly sering juga disebut kode sumber atau kode simbolik yang tidak dapat dijalankan oleh prosesor, sedangkan assembler adalah suatu program yang dapat menerjemahkan program bahasa assembly ke program bahasa mesin. bahasa mesin adalah kumpulan kode biner yang merupakan instruksi yang bisa dijalankan oleh komputer. Program bahasa mesin sering disebut sebagai kode objek.

  15. KelebihanBahasa Assembly: 1. Ketikadi-compile lebihkecilukuran 2. Lebihefisien/hematmemori 3. LebihcepatdieksekusiKesulitanBahasa Assembly: • Dalammelakukansuatupekerjaan, baris program relatiflebihpanjangdibandingbahasatingkattinggi • Relatiflebihsulituntukdipahamiterutamajikajumlahbarissudahterlalubanyak 3. Lebihsulitdalammelakukanpekerjaanrumit, misalnyaoperasimatematis.

  16. Pengertian Linker • Linker adalahsuatu program yang menterjemahkan program objek (bereksention OBJ) kebentuk program eksekusi (berekstension EXE atau COM). • Sedangkanuntukmembuat file object kebentuk file yang dapatdieksekusi (berekstension.COM atau.EXE) bisaandagunakan file TLINK.EXE.

  17. Perbedaanantara Compiler dengan Interpreter : a. Jikahendakmenjalankan program hasilkompilasidapatdilakukantanpabutuh source code. Kalau interpreter butuh source code. b. Jikadengankompiler, makapembuatankode yang bisadijalankanmesindilakukandalam 2 tahapterpisah, yaitu parsing ( pembuatankodeobjek ) dan linking ( penggabungankodeobjekdengan library ) . Kalau interpreter tidakadaprosesterpisah. c. JIka compiler membutuhkan linker untukmenggabungkankodeobjekdenganberbagaimacam library demimenghasilkansuatukode yang bisadijalankanolehmesin. Kalau interpreter tidakbutuh linker untukmenggabungkankodeobjekdenganberbagaimacam library.

  18. d. Interpreter cocokuntukmembuat / mengujicobamodul (sub-routine / program-program kecil ). Maka compiler agak repot karenauntukmengubahsuatumodul / kodeobjekkecil, makaharusdilakukanproses linking / penggabungankembalisemuaobjekdengan library yang diperlukan. e. Padakompilerbisadilakukanoptimisasi / peningkatankualitaskode yang bisadijalankan. Ada yang dioptimasisupayalebihcepat, ada yang supayalebihkecil, ada yang dioptimasiuntuksistemdenganbanyak processor. Kalau interpreter susahataubahkantidakbisadioptimasikan.

  19. PerbedaanantaraAssembler,InterpreterdanKompiler : • Assembler mengubahkode assembly menjadikodemesin. Interpreter mengubahkodetingkattinggimenjadi real-time kodemesindanmenyimpannyadimemoriuntukpengeksekusiansecaralangsung.Kompilermengubahkodetingkattinggimenjadi real-time kodemesinataubeberapakodetingkatmenengahdanmenyimpankedalamsebuah file untukbisadieksekusikemudian. • Interpreter merupakan translator yang menerjemahkanbahasa paling lambatdibandingkan assembler dankompiler. c.  Kompilermerupakan translator yang paling mudahuntukdigunakandalammenerjemahkanbahasadibandingkan interpreter dan assembler.

  20. Batch Monitor • Awalnya sistem komputer menjalankan program pada satu waktu mode operasi (one program at a time operating mode). Permulaan proses masih disetup oleh operator (user). • Batch monitor, merealisasikan proses dari sekumpulan pekerjaan • Kelemahan batch monitor : turn along time (waktu giliran) proses cukup lama.

  21. Batch Monitor • Batch Monitor is a software program created by Apple Computer for viewing and monitoring encoding tasks on a single or multiple computers. • It comes with Compressor. (sumber ; http://en.wikipedia.org/wiki/Batch_Monitor)

  22. Batch Monitor digunakan untuk memonitor perkembangan semua aktivitas transcoding batch, termasuk perkiraan sisa waktu transcoding untuk semua job.

  23. Sebagai seorang administrator, Anda dapat menggunakan Batch Monitor untuk memonitor kemajuan semua aktivitas untuk semua cluster pada jaringan. Anda dapat melihat penyelesaian proses setiap job dan informasi proses jobnya. • Setiap job proses juga dapat di stop, resume, or delete. • Jika Anda adalah pengguna client, Anda dapat menggunakan Batch Monitor untuk melihat dan mengatur batch Anda sendiri.

  24. The following batch-related information is displayed: • Name of the batch • Name of the parameter file used to run the batch • Status of the batch ("Ended", etc.) • Start and end time, respectively in the "Beginning at" and "Ending at" columns • Return code: "0" means that the batch executed correctly ; a code other than zero means that the batch has failed • Result of the batch execution (either "Succeeded" or "Failed“)

  25. Generic Batch Monitor Error Codes 1: Command line syntax error.2: Error in XML parameter file.3: Communication layer error.5: License acquisition error.6: Invalid library error.7: Error attempting to launch a batch requiring a graphic adapter on a machine without an adapter.9: Miscellaneous. Generic Batch Error Codes 0: Batch completely successful.4: Batch partially successful.8: Batch failed.20: Error checking licenses.21: Error accessing INPUT/OUTPUT.

  26. THE multiprogramming system • THE sistem multiprogramming adalah sistem operasi komputer yang dirancang oleh tim yang dipimpin oleh Edsger W. Dijkstra, dijelaskan dalam monograf di 1965-66 dan diterbitkan pada tahun 1968. • Dijkstra pernah bernama sistem; "THE“ singkatan dari "Technische Hogeschool Eindhoven", (dalam bahasa Belanda) dari Eindhoven University of Technology Belanda. • Sistem THE terutama sistem batch mendukung multitasking, Sistem ini tidak dirancang sebagai sistem operasi multi-user.

  27. Desain dari sistem multiprogramming THE signifikan bagi penggunaan sebuah struktur berlapis (Layer), di mana Layer "lebih tinggi“ bergantung pada Layer "rendah “ . Layer 0, bertanggung jawab untuk aspek multiprogramming dari sistem operasi. -Mengatur proses yang dialokasikan ke CPU, dan Memblokir proses yang diblokir pada Flag Register. Hal ini ditangani dengan interupsi. Ini adalah level terendah. Dalam istilah modern, ini adalah scheduler. Layer 1 , fokus dengan mengalokasikan memori untuk proses. Dalam istilah modern, ini adalah pager.

  28. Layer 2, berurusan dengan komunikasi antara sistem operasi dan perangkat I/O. • Layer 3, Mengatur semua perangkat I ​​/ O yang terhubung ke komputer. Ini termasuk informasi BUFFERING dari berbagai perangkat. • Layer 4, mengatur program-program user, yang meliputi menangani kompilasi, eksekusi, dan pencetakan program user.

  29. Multiprogramming Operating System • Pada arsitektur komputer klasik, instruksi IO dieksekusi oleh CPU, bersamaan dengan instruksi lain (aritmetika, logical, dll) • Penggunaan CPU dan IO channel secara bersamaan membutuhkan data independence yang akan dipanggil dari memori. • Ketika IO menjalankan sebuah program, CPU menjalankan komputasi untuk program yang lain : Multiprogramming

  30. Job 'A' tidak memanfaatkan waktu CPU karena melakukan operasi I/O . Sedangkan CPU sibuk menjalankan Job 'B'. • Job “C” menunggu untuk mendapatkan waktu proses CPU. • Jadi dalam keadaan ini CPU tidak akan pernah menganggur dan memanfaatkan maksimal waktu.

  31. Time Sharing Operating System • Dalam komputasi, time-sharing adalah proses berbagi sumber daya komputasi antara banyak user melalui multiprogramming and multitasking. • Diperkenalkan pada tahun 1960, dan muncul sebagai TOP model dari komputasi pada 1970-an, mewakili pergeseran teknologi besar dalam sejarah komputasi. • Konsep dibuat secara interactive computing, sehingga diperlukan program-program dengan waktu proses yang singkat. • Dengan interactive computing, komputer merespon input dari user dengan respon time yang singkat, karena setiap program memiliki waktu proses (waktu kuantum) yang tetap. Contoh : penjadwalan Round Robin

  32. Kegunaan Time Sharing OS • Memungkinkan banyak user untuk berinteraksi bersamaan dengan satu komputer(multi-user), • Menurunkan biaya penyediaan kemampuan komputasi, • memungkinkan bagi user dan organisasi untuk menggunakan komputer tanpa perlu kepemilikan.

  33. NEXT STRUKTUR REGISTER SETMIKROPROSESOR

  34. SELESAI

  35. As an administrator, you can use Batch Monitor to track the progress of all the batch activity for all the clusters on your network. You can see how close to completion each job is, along with other details, and you can stop, resume, or delete batches as well. If you are a client user, you can use Batch Monitor to view and manage your own batches.

  36. The following batch-related information is displayed: • Name of the batch • Name of the parameter file used to run the batch • Status of the batch ("Ended", etc.) • Start and end time, respectively in the "Beginning at" and "Ending at" columns • Return code: "0" means that the batch executed correctly ; a code other than zero means that the batch has failed • Result of the batch execution (either "Succeeded" or "Failed“)

  37. Generic Batch Monitor Error Codes 1: Command line syntax error.2: Error in XML parameter file.3: Communication layer error.5: License acquisition error.6: Invalid library error.7: Error attempting to launch a batch requiring a graphic adapter on a machine without an adapter.9: Miscellaneous. Generic Batch Error Codes 0: Batch completely successful.4: Batch partially successful.8: Batch failed.20: Error checking licenses.21: Error accessing INPUT/OUTPUT.

  38. THE multiprogramming system • The THE multiprogramming system was a omputer operating system designed by a team led by Edsger W. Dijkstra, described in monographs in 1965-66[1] and published in 1968.[2] • Dijkstra never named the system; "THE" is simply the abbreviation of "Technische Hogeschool Eindhoven", then the name (in Dutch) of the Eindhoven University of Technology of theNetherlands. • The THE system was primarily a batch system[3] that supported multitasking; it was not designed as a multi-useroperating system. It was much like the SDS 940, but "the set of processes in the THE system was static".[3]

  39. References • Jump up^Dijkstra, Edsger W. The structure of the 'THE'-multiprogramming system (EWD-196). E.W. Dijkstra Archive. Center for American History, University of Texas at Austin.(original; transcription) (Jun 14, 1965) • Jump up^Dijkstra, E.W. (1968), "The structure of the 'THE'-multiprogramming system", Communications of the ACM11 (5): 341–346, doi:10.1145/363095.363143 • ^ Jump up to:abcde Silberschatz, Abraham; Peterson, James L. (May 1988), "13: Historical Perspective", Operating System Concepts, p. 512 • http://en.wikipedia.org/wiki/THE_multiprogramming_system

  40. The design of the THE multiprogramming system is significant for its use of a layered structure, in which "higher" layers only depend on "lower'" layers: • Layer 0 was responsible for the multiprogramming aspects of the operating system. • It decided which process was allocated to the CPU, and accounted for processes that were blocked on semaphores. It dealt with interrupts and performed the context switches when a process change was required. This is the lowest level. • In modern terms, this was the scheduler. • Layer 1 was concerned with allocating memory to processes. In modern terms, this was the pager. • Layer 2 dealt with communication between the operating system and the console.

  41. Layer 3 managed all I/O between the devices attached to the computer. This included buffering information from the various devices. • Layer 4 consisted of user programs. There were 5 processes: in total, they handled the compilation, execution, and printing of users' programs. When finished, they passed control back to the schedule queue, which was priority-based, favoring recently started processes and ones that blocked because of I/O. • Layer 5 was the user (as Dijkstra notes, "not implemented by us").

  42. The code of the system was written in assembly language for the Dutch Electrologica X8 computer. This computer had 32kiloword core memory of 27-bit words,[3] a 512kword drum providing backing store for the LRU algorithm, paper tape readers, paper tape punches, and printers.

  43. Definition of Multiprogramming Operating SystemWRITTEN BY DINESH THAKURhttp://ecomputernotes.com/fundamental/disk-operating-system/multiprogramming-operating-system • To overcome the problem of underutilization of CPU and main memory, the multiprogramming was introduced. • The multiprogramming is interleaved execution of multiple jobs by the same computer. • In multiprogramming system, when one program is waiting for I/O transfer; there is another program ready to utilize the CPU. • So it is possible for several jobs to share the time of the CPU. But it is important to note that multiprogramming is not defined to be the execution of jobs at the same instance of time. • Rather it does mean that there are a number of jobs available to the CPU (placed in main memory) and a portion of one is executed then a segment of another and so on. A simple process of multiprogramming is shown in figure

  44. Multiprogramming is a common approach to resource management. • The essential components of a single-user operating system include a command processor, an input/ output control system, a file system, and a transient area. • A multiprogramming operating system builds on this base, subdividing the transient area to hold several independent programs and adding resource management routines to the operating system's basic functions.

  45. Time Sharing OS • In computing, time-sharing is the sharing of a computing resource among many users by means of multiprogramming andmulti-tasking. • Its introduction in the 1960s, and emergence as the prominent model of computing in the 1970s, represented a major technological shift in the history of computing.

More Related