PEMROGRAMAN SISTEM
APA ITU SISTEM?
SISTEM satu set entitas yang berinteraksi atau saling bergantung membentuk keseluruhan yang terpadu. Suatu jaringan kerja dari prosedur-prosedur yang saling berhubungan, berkumpul bersama-sama untuk melakukan suatu kegiatan atau untuk menyelesaikan suatu sasaran tertentu
komponen-komponen dalam sistem KOMPUTER perangkat keras/hardware, perangkat lunak/software, prosedur-prosedur/procedure, perangkat manusia/brainware, dan informasi/information
FUNGSI-FUNGSI TEKNOLOGI input, proses/process, output, penyimpanan/storage dan komunikasi/communication
APA ITU PEMROGRAMAN SISTEM? Merupakan kegiatan untuk membuat / memprogram perangkat lunak sistem (system software)
System PROGRAMMING vs application PROGRAMMING menghasilkan perangkat lunak yang menyediakan layanan untuk perangkat keras, scandisk, defrag, Application PROGRAMMING menghasilkan perangkat lunak yang menyediakan layanan bagi pengguna, misalkan pengolah kata, word, excel, SIM,
Tipe - SYSTEM PROGRAM Sistem operasi (sebagai contoh terkemuka Microsoft Windows, Mac OS X dan Linux), yang memungkinkan bagian-bagian dari sebuah komputer untuk bekerja bersama-sama melakukan tugas-tugas seperti mentransfer data antara memori dan disk atau output rendering ke monitor, menjalankan aplikasi. program utility yang membantu untuk menganalisis, engkonfigurasi, mengoptimalkan, dan memelihara komputer. Komputer BIOS dan device firmware, yang menyediakan fungsionalitas dasar untuk mengoperasikan dan mengendalikan perangkat keras atau dibangun terhubung ke komputer. Membangun Software development Tool, seperti compiler, linkers, debugger.
SYSTEM PROGRAMMING SYSTEM SOFTWARE
SYSTEM SOFTWARE
BAHASA PEMROGRAMAN? Assembly C Window API
aSSEMBLY MOV AL, 61h
C LANGUANGE C adalah bahasa pemrograman yang dikembangkan di tahun 1972 oleh Dennis Ritchie di Bell Telephone Laboratories untuk digunakan di Unix operating system.[2] C dikembangkan untuk mengimplementasikan system software,[3] dan berkembang sampai pada pembuatan application software.
API ? API (Application Programmers Interface) adalah satu set fungsi Windows sudah ditetapkan untuk mengendalikan tampilan dan perilaku setiap Windows elemen. fungsi-fungsi ini merangkum seluruh fungsi lingkungan Windows.
WINDOW API merupakan kumpulan fungsi-fungsi eksternal yang disediakan library windows untuk mengatur kemampuan dan tingkah laku setiap element di Windows (dari tampilan di desktop hingga alokasi memory) sehingga dapat dimanfaatkan suatu program untuk meningkatkan kemampuan program. Contoh: untuk pengaksesan registry windows dengan fasilitas built in visual basic sangat sukar dilakukan, tetapi dengan adanya fasilitas API untuk registry dari library advapi32.dll, pengaksesan tersebut menjadi lebih mudah.
PENGGUNAAN WINDOW API DI vb » Application (9) » Arc (5) » AVI (5) » Bitmap (16) » Brush (6) » Caret (3) » Character (8) » Clipboard (7) » Color (1) » Compress (4) » Console (11) » Cryptographic (15) » Currency (1) » Cursor (13) » Date/Time (11) » DDE (7) » Device (19) » Display (5) » DLL (7) » Drives (8) » Ellipse (4) » File (39) » Font (10) » FTP (10) » HotKey (2) » Icon (9) » ImageList (1) » Inet (0) » INI-Files (6) » Internet (27) » Joystick (5) » Keyboard (11) » Memory (7) » Menu (20) » MIDI (5) » Network (20) » Objects (8) » Pen (2) » Picture (1) » Polygon (9) » Ports (2) » Printer (17) » Process (9) » Rectangle (27) » Registry (15) » ScrollBar (11) » Sound (28) » Strings (10) » System (59) » Tape (6) » Text (6) » Timer (8) » Triangle (1) » Wait (3) » Window (39)
CONTOH PENGGUNAAN WINDOW API DI vb Private Const CF_TEXT = 1 Private Declare Function GetClipboardData Lib "user32" (ByVal wFormat As Long) As Long Private Declare Function CloseClipboard Lib "user32" () As Long Private Declare Function OpenClipboard Lib "user32" (ByVal hwnd As Long) As Long Private Declare Function lstrlen Lib "kernel32" Alias "lstrlenA" (ByVal lpString As Long) As Long Private Declare Sub CopyMemory Lib "kernel32" Alias "RtlMoveMemory" (pDst As Any, pSrc As _ Long, ByVal ByteLen As Long) Private Sub Form_Load() Dim hStrPtr As Long, lLength As Long, sBuffer As String OpenClipboard Me.hwnd hStrPtr = GetClipboardData(CF_TEXT) If hStrPtr <> 0 Then lLength = lstrlen(hStrPtr) If lLength > 0 Then sBuffer = Space$(lLength) CopyMemory ByVal sBuffer, ByVal hStrPtr, lLength MsgBox sBuffer, vbInformation End If End If CloseClipboard End Sub
MEMBACA STATUS MEMORY Private Type MEMORYSTATUS dwLength As Long dwMemoryLoad As Long dwTotalPhys As Long dwAvailPhys As Long dwTotalPageFile As Long dwAvailPageFile As Long dwTotalVirtual As Long dwAvailVirtual As Long End Type Private Declare Sub GlobalMemoryStatus Lib "kernel32" (lpBuffer As MEMORYSTATUS) Private Sub Form_Load() Dim MemStat As MEMORYSTATUS 'retrieve the memory status GlobalMemoryStatus MemStat MsgBox "You have" + Str$(MemStat.dwTotalPhys / 1024) + " Kb total memory and" + _ Str$(MemStat.dwAvailPageFile / 1024) + " Kb available PageFile memory." End Sub
MEMATIKAN PROSES YANG SEDANG BERJALAN Private Declare Sub ExitProcess Lib "kernel32" (ByVal uExitCode As Long) Private Declare Function GetExitCodeProcess Lib "kernel32" (ByVal hProcess As Long, lpExitCode As Long) As Long Private Declare Function GetCurrentProcess Lib "kernel32" () As Long Private Sub Form_Load() 'end this process ExitProcess GetExitCodeProcess(GetCurrentProcess, 0) End Sub
MEMBUKA FILE Const MAX_FILENAME_LEN = 260 Private Declare Function FindExecutable Lib "shell32.dll" Alias "FindExecutableA" (ByVal lpFile As String, _ ByVal lpDirectory As String, ByVal lpResult As String) As Long Private Sub Form_Load() Dim i As Integer, s2 As String Const sFile = "C:\\Windows\\Readme.txt" 'Check if the file exists If Dir(sFile) = "" Or sFile = "" Then MsgBox "File not found!", vbCritical Exit Sub End If 'Create a buffer s2 = String(MAX_FILENAME_LEN, 32) 'Retrieve the name and handle of the executable, associated with this file i = FindExecutable(sFile, vbNullString, s2) If i > 32 Then MsgBox Left$(s2, InStr(s2, Chr$(0)) - 1) Else MsgBox "No association found !" End If End Sub