Anda di halaman 1dari 6

2.

1
Kenyamanan: OS membuat komputer lebih nyaman digunakan.
Efisiensi: OS memungkinkan sumber daya sistem komputer dapat digunakan secara efisien.
Kemampuan untuk berkembang: OS harus dibangun sedemikian rupa untuk memungkinkan
pengembangan, pengujian, dan pengenalan fungsi sistem baru yang efektif tanpa mengganggu
layanan.
Mari kita periksa ketiga aspek OS ini pada gilirannya.

2.2
Kernel adalah suatu perangkat lunak yang menjadi bagian utama dari sebuah sistem operasi
komputer, tugasnya yaitu melayani bermacam-macam program aplikasi untuk mengakses perangkat
keras (hardware) komputer secara aman.

Ada juga definisi kernel yang lainnya adalah suatu perangkat lunak yang membuat komunikasi atau
mediator antara aplikasi dan perangkat keras (hardware), yang menyediakan pelayanan sistem
seperti pengaturan memori untuk proses yang sedang berjalan, pengaturan file, pengaturan input-
output dan masih banyak lagi fungsi tambahan yang lainnya.

Jadi intinya adalah kernel merupakan suatu penghubung antara software dan hardware. Itulah
beberapa penjelasan tentang kernel semoga dapat memberikan pencerahan atau dapat di pahami.

A. Berikut ini fungsi kernel

Fungsi dari kernel :

Berfungsi melayani bermacam-macam program aplikasi untuk mengakses perangkat keras


(hardware) komputer secara aman.
Karena akses terhadap perangkat keras (hardware) terbatas, sedangkan terdapat lebih dari satu
program yang harus dilayani dalam waktu yang bersamaan, maka kernel juga mempunyai tugas
untuk mengatur kapan serta berapa lama suatu program dapat menggunakan satu bagian perangkat
keras tersebut. Hal ini dinamakan dengan multiplexing.
Membantu meneksekusi aplikasi dan mendukungnya dengan fitur abstraksi perangkat keras
(hardware).

2.3
1. 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.
Contoh nya adalah menjalankan browser bersamaan dengan media player atau programm pengolah
gambar seperti photoshop.
Yang di maksud dengan multi programming di sini adalah CPU menjalankan beberapa program
sekaligus

2. Multiprocessing
Multiprocessing adalah istilah teknologi informasi dalam bahasa Inggris yang merujuk kepada
kemampuan pemrosesan komputer yang dilakukan secara serentak. Hal ini dimungkinkan dengan
menggunakan dua CPU atau lebih dalam sebuah sistem komputer. Istilah ini juga dapat merujuk
kepada dukungan sebuah sistem untuk mendukung lebih dari satu prosesor dan mengalokasikan
tugas kepada prosesor-prosesor tersebut.
Multiprocessing juga kadang merujuk kepada kemampuan eksekusi terhadap beberapa proses
perangkat lunak dalam sebuah sistem secara serentak, jika dibandingkan dengan sebuah proses
dalam satu waktu, meski istilah multiprogramming lebih sesuai untuk konsep ini. Multiprocessing
sering diimplementasikan dalam perangkat keras (dengan menggunakan beberapa CPU sekaligus),
sementara multiprogramming sering digunakan dalam perangkat lunak. Sebuah sistem mungkin
dapat memiliki dua kemampuan tersebut, salah satu di antaranya, atau tidak sama sekali.
Contoh nya adalah pada zaman sekarang banyak processor yang sudah berteknologi dual core
sampai quad core. ini bertujuan untuk hemat waktu
Maksudnya adalah core dalam processor menjalankan tugas nya masing2

3.Distributed Processing :
Mengerjakan semua proses pengolahan data secara bersama antara komputer pusat dengan beberapa
komputer yang lebih kecil dan saling dihubungkan melalui jalur komunikasi. Setiap komputer
tersebut memiliki prosesor mandiri sehingga mampu mengolah sebagian data secara terpisah,
kemudian hasil pengolahan tadi digabungkan menjadi satu penyelesaian total. Jika salah satu
prosesor mengalami kegagalan atau masalah yang lain akan mengambil alih tugasnya.

4. Multitasking
Multitasking adalah pemrosesan beberapa tugas pada waktu yang bersamaan. Sebagai contoh, jika
seseorang sedang menyetir, bertelepon lewat ponsel, dan sambil merokok secara bersamaan, maka
orang tersebut melakukan multitasking.
Multitasking merupakan mekanisme kerja komputer. CPU komputer dapat menangani beberapa
proses dalam waktu yang sama secara akurat. Proses yang dikerjakan tergantung pada instruksi
yang diberikan oleh software komputer. Oleh sebab itu, untuk memanfaatkan kemampuan CPU
secara maksimal, software yang digunakan juga harus memiliki kemampuan multitasking. Saat ini,
berbagai software sistem operasi sudah memiliki kemampuan multitasking. Itulah sebabnya, saat ini
Anda bisa browsing di halaman web SmitDev, chatting, sambil mendengarkan musik secara
bersamaan.
Contohnya adalah, dalam OS windows, pada saat kita membuka task manager, terdapat task task
yang sedang berjalan, di sini kita melihat bahwa seakan2 CPU menjalankan secara bersamaan,
tetapi ternyata tidak.
Konsekuensi dari proses-proses yang berjalan secara konkuren pada suatu sistem multitasking?
Berikut sejumlah pengaruh yang mungkin terjadi antara proses-2 yg berjalan bersamaan :
1. Proses tidak saling memengaruhi.
Ini terjadi pada proses-2 yang tdk saling berhubungan dan tdk saling bekerja sama, kecuali
dlm hal berbagi pakai processor. Contoh aplikasi MS.Word dengan Media Player berjalan
bersamaan
2. Proses saling memengaruhi secara tdk langsung.
Ini terjadi pada proses-proses yg tdk saling bekerja sama ttp mengakses sumberdaya yang
sama sehingga proses-2 tsb saling mempengaruhi satu sama lain. Contoh MS.Word dan Notepad
sedang membuka suatu berkas yang sama.
3. Proses saling memengaruhi secara langsung.
Ini terjadi pd proses-2 yg saling bekerja sama utk mencapai suatu tujuan khusus. Contoh
jika kita membuka IE kita akan bekerja sama dengan web server.
5. Timesharing
Time sharing juga disebut sebagai Multitasking, dimana pengertian ini bisa disamakan dengan
multiprogramming, hanya saja waktu prosesnya dibatasi. Waktu maksimum yang digunakan CPU
disebut quantum time. Keuntungan time sharing adalah tingkat kebersamaannya menjadi tinggi.
Time sharing memerlukan pengaturan kerja input dan output. Secara normal, CPU sanggup
memproses lebih dari satu data dalam setiap detik. Dimana pada saat itu, input dan output device
juga harus siap untuk memberikan data ataupun menerima hasil proses secara cepat. Oleh karena itu
diperlukan adanya penjadwalan kerja yang baik. Banyak switched yang bisa bekerja secara
otomatis untuk mengatur semuanya dalam waktu yang bersamaan.
Contoh paling sederhana adalah pada saat terjadi jaringan antara client dengan server

2.4
Definisi Proses adalah keadaan ketika sebuah program sedang di eksekusi.
2.1
Kenyamanan: Sistem operasi membuat komputer lebih nyaman digunakan.
Efisiensi: Sistem operasi memungkinkan sumber daya sistem komputer digunakan dengan cara
yang efisien.
Kemampuan untuk berkembang: Sistem operasi harus dibangun sedemikian rupa sehingga
memungkinkan pengembangan, pengujian, dan pengenalan fungsi sistem yang efektif tanpa
mengganggu layanan.
2.2
Kernel adalah bagian dari sistem operasi yang mencakup bagian perangkat lunak yang paling
banyak digunakan. Umumnya, kernel dipelihara secara permanen di memori utama. Kernel berjalan
dalam mode istimewa dan merespons panggilan dari proses dan interupsi dari perangkat.

2.3
Multiprogramming adalah mode operasi yang menyediakan eksekusi interleaved dari dua atau lebih
program komputer oleh satu prosesor.
2.4
Sebuah proses adalah sebuah program dalam eksekusi. Sebuah proses dikendalikan dan dijadwalkan
oleh sistem operasi.
2.5
Konteks eksekusi, atau status proses, adalah data internal dimana sistem operasi dapat mengawasi
dan mengendalikan proses. Informasi internal ini terpisah dari prosesnya, karena sistem operasi
memiliki informasi yang tidak diijinkan untuk prosesnya. Konteksnya mencakup semua informasi
yang dibutuhkan oleh sistem operasi untuk mengelola proses dan bahwa prosesor perlu
menjalankan proses dengan benar. Konteksnya mencakup isi berbagai register prosesor, seperti
program counter dan data register. Ini juga mencakup informasi penggunaan ke sistem operasi,
seperti prioritas proses dan apakah prosesnya menunggu penyelesaian acara I / O tertentu.

The execution context, or process state, is the internal data by which the operating system is able to
supervise and control the process. This internal information is separated from the process, because
the operating system has information not permitted to the process. The context includes all of the
information that the operating system needs to manage the process and that the processor needs to
execute the process properly. The context includes the contents of the various processor registers,
such as the program counter and data registers. It also includes information of use to the operating
system, such as the priority of the process and whether the process is waiting for the completion of
a particular I/O event.

2.6
Isolasi proses: Sistem operasi harus mencegah proses independen agar tidak mengganggu memori
masing-masing, baik data maupun instruksi.
Alokasi dan pengelolaan otomatis: Program harus dialokasikan secara dinamis di hierarki memori
sesuai kebutuhan. Alokasi harus transparan kepada programmer. Dengan demikian, programmer
terbebas dari masalah yang berkaitan dengan keterbatasan memori, dan sistem operasi dapat
mencapai efisiensi dengan menetapkan memori ke pekerjaan hanya jika diperlukan.
Dukungan pemrograman modular: Pemrogram harus dapat mendefinisikan modul program, dan
untuk membuat, menghancurkan, dan mengubah ukuran modul secara dinamis.
Perlindungan dan kontrol akses: Berbagi memori, pada setiap tingkat hirarki memori, menciptakan
potensi untuk satu program untuk mengatasi ruang memori lain. Hal ini diinginkan saat sharing
dibutuhkan oleh aplikasi tertentu.

Long-term storage: Many application programs require means for storing information for extended
periods of time, after the computer has been powered down.
Penyimpanan jangka panjang: Banyak program aplikasi memerlukan sarana untuk menyimpan
informasi untuk waktu yang lama, setelah komputer dimatikan.

2.1
Convenience: An operating system makes a computer more convenient to use.
Efficiency: An operating system allows the computer system resources to be used in an efficient
manner.
Ability to evolve: An operating system should be constructed in such a way as to permit the
effective development, testing, and introduction of new system functions without interfering with
service.
2.2
The kernel is a portion of the operating system that includes the most heavily used portions of
software. Generally, the kernel is maintained permanently in main memory. The kernel runs in a
privileged mode and responds to calls from processes and interrupts from devices.

2.3
Multiprogramming is a mode of operation that provides for the interleaved execution of two or
more computer programs by a single processor.
2.4
A process is a program in execution. A process is controlled and scheduled by the operating system.
2.5
The execution context, or process state, is the internal data by which the operating system is able to
supervise and control the process. This internal information is separated from the process, because
the operating system has information not permitted to the process. The context includes all of the
information that the operating system needs to manage the process and that the processor needs to
execute the process properly. The context includes the contents of the various processor registers,
such as the program counter and data registers. It also includes information of use to the operating
system, such as the priority of the process and whether the process is waiting for the completion of
a particular I/O event.

2.6
Process isolation: The operating system must prevent independent processes from interfering with
each other's memory, both data and instructions. Automatic allocation and management: Programs
should be dynamically allocated across the memory hierarchy as required. Allocation should be
transparent to the programmer. Thus, the programmer is relieved of concerns relating to memory
limitations, and the operating system can achieve efficiency by assigning memory to jobs only as
needed. Support of modular programming: Programmers should be able to define program modules,
and to create, destroy, and alter the size of modules dynamically. Protection and access control:
Sharing of memory, at any level of the memory hierarchy, creates the potential for one program to
address the memory space of another. This is desirable when sharing is needed by particular
applications.

A program references a word by means of a virtual address consisting of a page number and an
offset within the page. Each page of a process may be located anywhere in main memory. The
paging system provides for a dynamic mapping between the virtual address used in the program and
a real address, or physical address, in main memory.
Sebuah program merujuk sebuah kata dengan menggunakan alamat virtual yang terdiri dari nomor
halaman dan offset di dalam halaman. Setiap halaman proses dapat ditemukan di manapun di
memori utama. Sistem paging menyediakan pemetaan dinamis antara alamat virtual yang digunakan
dalam program dan alamat sebenarnya, atau alamat fisik, di memori utama.
Performance: If the work to be done by a computer can be organized so that some portions
of the work can be done in parallel, then a system with multiple processors will yield greater
performance than one with a single processor of the same type. This is illustrated in Figure
2.12. With multiprogramming, only one process can execute at a time; meanwhile all other
processes are waiting for the processor. With multiprocessing, more than one process can be
running simultaneously, each on a different processor.
Availability: In a symmetric multiprocessor, because all processors can perform the same
functions, the failure of a single processor does not halt the system. Instead, the system can
continue to function at reduced performance.
Incremental growth: A user can enhance the performance of a system by adding an
additional processor.
Scaling: Vendors can offer a range of products with different price and performance
characteristics based on the number of processors configured in the system.
1. Kinerja: Jika pekerjaan yang dilakukan oleh komputer dapat diatur sedemikian rupa
sehingga beberapa bagian pekerjaan dapat dilakukan secara paralel, maka sebuah sistem
dengan beberapa prosesor akan menghasilkan kinerja yang lebih baik daripada satu dengan
satu prosesor dengan tipe yang sama. Hal ini diilustrasikan pada Gambar 2.12. Dengan
multiprogramming, hanya satu proses yang dapat dijalankan pada satu waktu; Sementara
semua proses lainnya sedang menunggu prosesor. Dengan multiprocessing, lebih dari satu
proses bisa berjalan bersamaan, masing-masing pada prosesor yang berbeda.
2. Ketersediaan: Dalam multiprosesor simetris, karena semua prosesor dapat melakukan fungsi
yang sama, kegagalan prosesor tunggal tidak menghentikan sistem. Sebagai gantinya, sistem
dapat terus berfungsi dengan kinerja rendah.
3. Pertumbuhan inkremental: Seorang pengguna dapat meningkatkan kinerja suatu sistem
dengan menambahkan prosesor tambahan.
4. Scaling: Vendor dapat menawarkan berbagai produk dengan harga dan karakteristik kinerja
yang berbeda berdasarkan jumlah prosesor yang dikonfigurasi dalam sistem.

2.3 bawah
With time sharing, the concern is turnaround time. Time-slicing is preferred because it gives all
processes access to the processor over a short period of time. In a batch system, the concern is with
throughput, and the less context switching, the more processing time is available for the processes.
Therefore, policies that minimize context switching are favored
Dengan sharing waktu, perhatiannya adalah waktu turnaround. Pengiris waktu lebih disukai karena
memberi semua proses akses ke prosesor dalam waktu singkat. Dalam sistem batch, perhatiannya
adalah dengan throughput, dan switching konteks yang kurang, semakin banyak waktu pemrosesan
yang tersedia untuk prosesnya. Oleh karena itu, kebijakan yang meminimalkan perpindahan konteks
disukai

What is the purpose of system calls, and how do system calls relate to the OS and to the concept of
dual-mode (kernel-mode and user-mode) operation?

With a time sharing system, the primary concern is turnaround time. A round-robin scheduler would
given every process a chance torun on the CPU for a short time, and reduce the average turnaround
time. If the scheduler instead let one job run until completion, then the first job wouldhave a short
turnaround time, but later ones would have to wait for a long time.
In a batch system, the primary concern is throughput. In this case, the time spent switching between
jobs is wasted, so a moreefficient scheduling algorithm would be first-come, first-served, and let
each job run on the processor as long as it wants.