Presentasi sedang didownload. Silahkan tunggu

Presentasi sedang didownload. Silahkan tunggu

Evolusi System Software

Presentasi serupa


Presentasi berjudul: "Evolusi System Software"— Transcript presentasi:

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

2 LANGUAGE TRANSLATOR Translator : Program Komputer yang ditulis dalam  programming language untuk mengubah satu program ke program lain yang secara fungsional adalah sama.

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. setiap bahasa dapat diterjemahkan ke high level language atau bahasa 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 translator Compiler, Interpreter, Assembler dan Linker

7 Pengertian Compiler Compiler adalah suatu program yang menerjemahkan bahasa program ( source code) kedalam bahasa objek (obyek code). Compiler menggabungkan keseluruhan bahasa program, mengumpulkannya dan kemudian menyusunnya kembali. Komplier memerlukan waktu untuk membuat suatu program dapat di eksekusi oleh computer, program yang dieksekusi oleh compiler adalah dapat berjalan lebih cepat dibanding program yang diproduksi oleh interpreter, disamping itu juga bersifat independen. 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 adalah Perangkat lunak yang mampu mengeksekusi code program (yang ditulis oleh programmer) lalu menterjemahkannya ke dalam bahasa mesin, sehingga mesin melakukan instruksi yang diminta oleh programmer tersebut. Perintah-perintah yang dibuat oleh programmer tersebut dieksekusi baris demi baris, sambil mengikuti logika yang terdapat di dalam kode tersebut. Proses ini sangat berbeda dengan compiler, dimana pada compiler, hasilnya sudah langsung berupa satu kesatuan perintah dalam bentuk bahasa mesin, dimana proses Interpreter (penterjemahan) dilaksanakan sebelum program tersebut dieksekusi.

10 Interpreter atau dalam bahasa Indonesia dikenal sebagai Juru Bahasa berbeda dengan Translator atau penterjemah dalam segi media yang dipakai untuk menerjemahkan. Interpreter akan menterjemahkan bahasa sumber ke dalam bahasa sasaran secara langsung atau orally sementara translator akan menerjemahkan bahasa sumber ke bahasa sasaran secara tertulis. Java dijalankan menggunakan interpreter yaitu Java Virtual Machine (JVM). Hal ini menyebabkan source code Java yang telah dikompilasi menjadi Java bytecodes dapat dijalankan pada 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 Berbeda dengan bahasa pemrograman tingkat tinggi, bahasa assembly atau rakitan biasanya memiliki hubungan 1-1 dengan instruksi bahasa mesin, artinya Mnemonicyang ditulis di program dengan bahasa rakitan akan diterjemahkan menjadi tepat satu kode operasi yang dapat dimengerti langsung oleh komputer. Pada bahasa tingkat tinggi, satu perintah dapat diterjemahkan menjadi beberapa kode operasi dalam bahasa mesin.

13 Bahasa assembly adalah sebuah program yang terdiri dari instruksi-instruksi yang menggantikan kode-kode biner dari bahasa mesin dengan “mnemonik” yang mudah diingat. Misalnya sebuah instruksi penambahan dalam bahasa mesin dengan kode “ ” yang dalam bahasa assembly dapat dibuat dalam instruksi mnemonik ADD, sehingga mudah diingat dibandingkan dengan angka 0 dan 1, dalam setiap instruksi membutuhkan suatu operand baik berupa data langsung maupun suatu lokasi memori 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 Kelebihan Bahasa Assembly:
1. Ketika di-compile lebih kecil ukuran 2. Lebih efisien/hemat memori 3. Lebih cepat dieksekusi Kesulitan Bahasa Assembly: Dalam melakukan suatu pekerjaan, baris program relatif lebih panjang dibanding bahasa tingkat tinggi Relatif lebih sulit untuk dipahami terutama jika jumlah baris sudah terlalu banyak 3. Lebih sulit dalam melakukan pekerjaan rumit, misalnya operasi matematis.

16 Pengertian Linker Linker adalah suatu program yang menterjemahkan program objek (bereksention OBJ) ke bentuk program eksekusi (berekstension EXE atau COM). Sedangkan untuk membuat file object ke bentuk file yang dapat dieksekusi (berekstension.COM atau.EXE) bisa anda gunakan file TLINK.EXE.

17 Perbedaan antara Compiler dengan Interpreter :
a. Jika hendak menjalankan program hasil kompilasi dapat dilakukan tanpa butuh source code. Kalau interpreter butuh source code. b. Jika dengan kompiler, maka pembuatan kode yang bisa dijalankan mesin dilakukan dalam 2 tahap terpisah, yaitu parsing ( pembuatan kode objek ) dan linking ( penggabungan kode objek dengan library ) . Kalau interpreter tidak ada proses terpisah. c. JIka compiler membutuhkan linker untuk menggabungkan kode objek dengan berbagai macam library demi menghasilkan suatu kode yang bisa dijalankan oleh mesin. Kalau interpreter tidak butuh linker untuk menggabungkan kode objek dengan berbagai macam library.

18 d. Interpreter cocok untuk membuat / menguji coba modul (sub-routine / program-program kecil ). Maka compiler agak repot karena untuk mengubah suatu modul / kode objek kecil, maka harus dilakukan proses linking / penggabungan kembali semua objek dengan library yang diperlukan. e. Pada kompiler bisa dilakukan optimisasi / peningkatan kualitas kode yang bisa dijalankan. Ada yang dioptimasi supaya lebih cepat, ada yang supaya lebih kecil, ada yang dioptimasi untuk sistem dengan banyak processor. Kalau interpreter susah atau bahkan tidak bisa dioptimasikan.

19 Perbedaan antara Assembler,Interpreter dan Kompiler :
Assembler mengubah kode assembly menjadi kode mesin. Interpreter mengubah kode tingkat tinggi menjadi real-time kode mesin dan menyimpannya di memori untuk pengeksekusian secara langsung.Kompiler mengubah kode tingkat tinggi menjadi real-time kode mesin atau beberapa kode tingkat menengah dan menyimpan ke dalam sebuah file untuk bisa dieksekusi kemudian. Interpreter merupakan translator yang menerjemahkan bahasa paling lambat dibandingkan assembler dan kompiler. c.  Kompiler merupakan translator yang paling mudah untuk digunakan dalam menerjemahkan bahasa dibandingkan interpreter dan assembler.

20

21 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.

22 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 ;

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

24 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.

25 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“)

26 Generic Batch Monitor Error Codes 1: Command line syntax error
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.

27

28 THE multiprogramming system
THE sistem multiprogramming adalah sistem operasi komputer yang dirancang oleh tim yang dipimpin oleh Edsger W. Dijkstra, dijelaskan dalam monograf di 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.

29 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.

30 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.

31 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

32 Job 'A' tidak memanfaatkan waktu CPU karena melakukan operasi I/O
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.

33 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

34

35 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.

36 NEXT STRUKTUR REGISTER SET MIKROPROSESOR

37 SELESAI

38

39 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.

40 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“)

41 Generic Batch Monitor Error Codes 1: Command line syntax error
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.

42

43 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 [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]

44 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 ACM 11 (5): 341–346, doi: / ^ Jump up to:a b c d e Silberschatz, Abraham; Peterson, James L. (May 1988), "13: Historical Perspective", Operating System Concepts, p. 512

45 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.

46 Layer 3 managed all I/O between the devices attached to the computer
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").

47 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.

48 Definition of Multiprogramming Operating System WRITTEN BY DINESH THAKUR 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

49 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.

50 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.

51 Objective of Time Sharing OS
Memungkinkan banyak unser untuk berinteraksi bersamaan dengan satu komputer, By allowing a large number of users to interact concurrently with a single computer time-sharing dramatically lowered the cost of providing computing capability, made it possible for individuals and organizations to use a computer without owning one, and promoted the interactive use of computers and the development of new interactive applications.


Download ppt "Evolusi System Software"

Presentasi serupa


Iklan oleh Google