• Advanced Systems Programming - Lesson 5: The kernel’s task listAdvanced Systems Programming - Lesson 5: The kernel’s task list

    Multi-tasking • Modern operating systems allow multiple users to share a computer’s resources • Users are allowed to run multiple tasks • The OS kernel must protect each task from interference by other tasks, while allowing every task to take its turn using some of the processor’s available time Stacks and task-descriptors • To manage mult...

    pdf29 trang | Chia sẻ: candy98 | Ngày: 01/12/2020 | Lượt xem: 1160 | Lượt tải: 0

  • Advanced Systems Programming - Lesson 4: UNIX’s “grand illusion”Advanced Systems Programming - Lesson 4: UNIX’s “grand illusion”

    How Linux makes a hardware device appear to be a ‘file’Basic char-driver components Background • To appreciate the considerations that have motivated the over-all Linux driver’s design requires an understanding of how normal application-programs get their access to services that the operating system offers • This access is indirect – throug...

    pdf34 trang | Chia sẻ: candy98 | Ngày: 01/12/2020 | Lượt xem: 1156 | Lượt tải: 0

  • Advanced Systems Programming - Lesson 3: Creating a device-file nodeAdvanced Systems Programming - Lesson 3: Creating a device-file node

    An introduction to some privileged Linux system-calls (needed for an upcoming programming exercise)A device-driver example • We want to build a simple device-driver, one that would let ordinary applications read and/or write to the CMOS memory (e.g. to adjust the date or time-of-day) • This will require that we have a so-called device ‘spec...

    pdf15 trang | Chia sẻ: candy98 | Ngày: 01/12/2020 | Lượt xem: 1144 | Lượt tải: 0

  • Advanced Systems Programming - Lesson 2: On working with LKMsAdvanced Systems Programming - Lesson 2: On working with LKMs

    Using Linux Kernel Modules to quickly export privileged kernel information to ordinary usersPrivileged kernel information • Users ordinarily are prohibited from seeing what goes on inside a running Linux kernel • But we can use kernel modules to override normal restrictions on kernel data access • The handiest mechanism for doing this is to...

    pdf26 trang | Chia sẻ: candy98 | Ngày: 01/12/2020 | Lượt xem: 1277 | Lượt tải: 0

  • Advanced Systems Programming - Lesson 1: IntroductionAdvanced Systems Programming - Lesson 1: Introduction

    Some important prerequisites • You are acquainted with x86 architecture • You can execute Linux/UNIX commands • You know how to use a text-editing tool • You can write programs in the C language • You can print out a program’s source-fileTypical C layout • Basic structure of a C program: – Comment-banner (showing title and abstract) – Prepr...

    pdf25 trang | Chia sẻ: candy98 | Ngày: 01/12/2020 | Lượt xem: 1155 | Lượt tải: 0

  • Bài giảng Lập trình Java - Bài 15: Thiết kế hướng đối tượng - Bùi Trọng TùngBài giảng Lập trình Java - Bài 15: Thiết kế hướng đối tượng - Bùi Trọng Tùng

    • Mô hình MVC • Giới thiệu một số biểu đồ UML 1. MÔ HÌNH MVC MVC là gì? • Mô hình thiết kế phần mềm 3 thành phần: Model – View – Control • Model: • Mô hình hóa các đối tượng chứa dữ liệu cần xử lý • Cung cấp các phương thức để truy cập dữ liệu • Mô hình hóa các hoạt động nghiệp vụ • View: • Cung cấp giao diện cho người dùng nhập/xuất dữ ...

    pdf18 trang | Chia sẻ: candy98 | Ngày: 01/12/2020 | Lượt xem: 712 | Lượt tải: 0

  • Bài giảng Lập trình Java - Bài 14: Lập trình với CSDL trong Java - Bùi Trọng TùngBài giảng Lập trình Java - Bài 14: Lập trình với CSDL trong Java - Bùi Trọng Tùng

    • Các khái niệm cơ bản về CSDL quan hệ • Cú pháp SQL cơ bản • Lập trình với CSDL trong Java 1. KHÁI NIỆM CƠ BẢN VỀ CSDL QUAN HỆ Các khái niệm cơ bản • CSDL là một tập hợp các dữ liệu có mối liên hệ logic và được lưu trữ theo một mô hình nào đó • Hệ quản trị CSDL là hệ thống phần mềm cho phép tạo lập, quản lý và cung cấp các thao tác để làm ...

    pdf24 trang | Chia sẻ: candy98 | Ngày: 01/12/2020 | Lượt xem: 689 | Lượt tải: 0

  • Bài giảng Lập trình Java - Bài 13: Lập trình Socket trong Java - Bùi Trọng TùngBài giảng Lập trình Java - Bài 13: Lập trình Socket trong Java - Bùi Trọng Tùng

    • Cơ bản về mạng máy tính • URL • Lập trình socket trong Java 1. CƠ BẢN VỀ MẠNG MÁY TÍNH Mạng máy tính là gì? • Tập hợp các máy tính kết nối với nhau dựa trên một kiến trúc nào đó để có thể trao đổi dữ liệu • Máy tính: máy trạm, máy chủ, bộ định tuyến • Kết nối bằng một phương tiện truyền • Theo một kiến trúc mạng Mạng máy tính là gì?...

    pdf37 trang | Chia sẻ: candy98 | Ngày: 01/12/2020 | Lượt xem: 805 | Lượt tải: 0

  • Bài giảng Lập trình Java - Bài 12: Một sô cấu trúc dữ liệu trong Java - Bùi Trọng TùngBài giảng Lập trình Java - Bài 12: Một sô cấu trúc dữ liệu trong Java - Bùi Trọng Tùng

    • Danh sách liên kết (Linked List) • Ngăn xếp (Stack) • Hàng đợi (Queue) • Cây (Tree) 1. DANH SÁCH LIÊN KẾT (LINKED-LIST) Mảng vs Danh sách liên kết(DSLK) • Hạn chế của mảng

    pdf43 trang | Chia sẻ: candy98 | Ngày: 01/12/2020 | Lượt xem: 900 | Lượt tải: 0

  • Bài giảng Lập trình Java - Bài 11: Thuật toán Đệ quy - Bùi Trọng TùngBài giảng Lập trình Java - Bài 11: Thuật toán Đệ quy - Bùi Trọng Tùng

    • Thuật toán đệ quy và hàm đệ quy là gì? • Thuật toán đệ quy hoạt động như thế nào? • Một số thuật toán đệ quy đơn giản 1. THUẬT TOÁN ĐỆ QUY LÀ GÌ? Khái niệm “đệ quy” • Đối tượng đệ quy: là đối tượng mà một phần hoặc toàn bộ đối tượng được định nghĩa thông qua chính nó • Quy nạp toán học • Quá trình đệ quy: là quá trình mà một phần hoặc t...

    pdf13 trang | Chia sẻ: candy98 | Ngày: 01/12/2020 | Lượt xem: 655 | Lượt tải: 0