1. Trang chủ
  2. » Giáo Dục - Đào Tạo

cấu trúc, sử dụng, nguyên lý, phân tích mã nguồn hacao

48 200 1

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 48
Dung lượng 1,38 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

* Kernel ₋ Là trung tâm điều khiển của hệ điều hành Hacao, chứa các mã điều khiển hoạt động toàn bộ hệ thống ₋ Được thiết kế theo dạng modul nên có kích thước thật của Kernel rất nhỏ ₋ C

Trang 1

CẤU TRÚC, SỬ DỤNG, NGUYÊN LÝ, PHÂN TÍCH MÃ NGUỒN HACAO

Trang 3

1. Giới thiệu về hacao và Lịch sử phát triển

2. Cấu trúc hệ thống tập tin

I Tổng quan về hacao

Trang 4

* Giới thiệu:

₋ Là một bản phân phối linux dành cho người dùng tiếng việt và tiếng anh 

₋ Đây là bản phân phối Linux hỗ trợ tiếng Việt có kích thước nhỏ nhất cho đến thời điểm hiện tại

₋ Tất cả các phần mềm trong Hacao Linux đều mang giấy phép mã nguồn mở

1 Giới thiệu về hacao và

Lịch sử phát triển

Trang 7

* Các phiên bản hacao

₋ Hacao Linux 1.06

₋ Hacao Linux 2.0

₋ Hacao Linux 2.01 Professional

₋ Hacao Linux 2.12 Professional

₋ Hacao Linux 2.16 Professional

₋ Hacao Linux 4.21

₋ Hacao Linux 2009 CE

1 Giới thiệu về hacao và

Lịch sử phát triển

Trang 9

* Kernel

₋ Là trung tâm điều khiển của hệ điều hành Hacao, chứa các mã điều khiển hoạt động toàn

bộ hệ thống

₋ Được thiết kế theo dạng modul nên có kích thước thật của Kernel rất nhỏ

₋ Chỉ tải những bộ phận cần thiết lên bộ nhớ nên không lãng phí bộ nhớ

₋ Có thể truy xuất tới toàn bộ tính năng phần cứng của máy

2 Cấu trúc hệ thống tập tin

Trang 11

* Cây thư mục

2 Cấu trúc hệ thống tập tin

Trang 12

₋ /bin > chứa các tập tin nhị phân của người dùng

₋ /sbin > chứa các tập tin nhị phân của hệ thống

₋ /etc > chứa các tập tin cấu hình

₋ /dev > chứa các tập tin thiết bị

₋ /proc > chứa thông tin về các tiến trình

2 Cấu trúc hệ thống tập tin

Trang 13

₋ /var > chứa các tập tin biến

₋ /tmp > chứa các tập tin tạm

₋ /usr >chứa các chương trình của người dùng

₋ /home > chứa thư mục nhà của người dùng

₋ /boot > chứa các tập tin dành cho quá trình khởi động

2 Cấu trúc hệ thống tập tin

Trang 14

₋ /lib > chứa các thư viện của hệ thống

₋ /opt > chứa các chương trình khác (cài thêm, tự build, )

₋ /mnt > dành cho việc mount các thiết bị

₋ /media > dành cho các thiết bị di động như : usb,

₋ /srv > chứa dữ liệu của các dịch vụ

2 Cấu trúc hệ thống tập tin

Trang 15

II Cài đặt sử dụng

Bước 1

Trang 16

II Cài đặt sử dụng

Bước 2

Trang 17

Bước 3

II Cài đặt sử dụng

Trang 18

II Cài đặt sử dụng

Bước 4

Trang 19

II Cài đặt sử dụng

Bước 5

Trang 22

* Tạo một tiến trình - lệnh fork

 int fork() tạo ra một tiến trình con

 Giá trị trả lại là 0 cho tiến trình con và dấu hiệu pid cho tiến trình cha Giá trị sẽ là -1 nếu không tạo được tiến trình mới

 Tiến trình con và cha sẽ có cùng đoạn mã, tuy nhiên tiến trình con vẫn khác tiến trình cha ở pid, thời gian xử lý

1 Quản lý tiến trình

Trang 23

* Dừng một tiến trình 

 Dùng lệnh kill của Shell để chấm dứt hoạt động của một tiến trình Ví dụ khi muốn dừng tiến trình 234 ta dùng lệnh: kill 234

 C cũng có lệnh kill như sau: 

int kill(pid, sig); 

int pid; là dấu hiệu nhận biết của một tiến trình. 

int sig; hằng tín hiệu giao tiếp tiến trình. 

1 Quản lý tiến trình

Trang 24

* Hiển thị sự hoạt động của các tiến trình

 Với lệnh đơn giản top, ta có thể hiển thị sự hoạt động của các tiến trình, đặc biệt là các thông tin về tài nguyên hệ thống cũng như việc sử dụng tài nguyên đó của từng tiến trình

1 Quản lý tiến trình

Trang 25

1 Quản lý tiến trình

Trang 27

Giao tiếp giữa các tiến trình 

• Việc giao tiếp giữa các tiến trình được thực hiện thông qua các tín hiệu chuẩn của hệ thống

• Tín hiệu là một sự ngắt quãng logic được gửi đến các tiến trình bởi hệ thống để thông báo cho chúng về những sự việc không bình thường trong môi trường hoạt động của chúng, nó cũng cho phép các tiến trình liên lạc với nhau

1 Quản lý tiến trình

Trang 28

• Một tín hiệu (trừ SIGKILL) có thể được xem xét theo ba cách khác nhau: 

• Tiến trình có thể được bỏ qua: đó là sự bỏ qua khi một tiến trình đang được sử dụng ở phần nền

• Tiến trình có thể được thực hiện:khi nhận được 1 tín hiệu, việc thực hiện 1 tiến trình được chuyển về một quy trình do người sử dụng xác định trước, sau đó trở lại nơi nó bị ngắt

• Lỗi có thể được tiến trình trả về sau khi nhận được tín hiệu này.Dưới đây là một số tín hiệu thường gặp

1 Quản lý tiến trình

Trang 31

* Liên lạc giữa hai tiến trình

 Các tiến trình có thể liên lạc trực tiếp với nhau bằng cách sử dụng các lệnh phát và nhận tín hiệu

 Nhược điểm:

‒ Một tín hiệu có thể bị bỏ qua, kết thúc một tiến trình hoặc bị chặn lại

‒ Các tín hiệu có quyền rất lớn, khi đến chúng làm ngắt quãng công việc hiện tại

1 Quản lý tiến trình

Trang 32

* Liên lạc qua "đường ống

 Ống dẫn là một cơ chế cơ bản để liên lạc gián tiếp giữa các tiến trình

 Là các file đặc biệt (FIFO), ở đó các thông tin được truyền đi 1 đầu và thoát ra ở một đầu khác

 Đặc điểm

‒ Chỉ mang tính chất tạm thời, chỉ tồn tại trong thời gian thực hiện của một tiến trình tạo

ra nó

1 Quản lý tiến trình

Trang 33

 Muốn tạo ra một ống dẫn phải bắt đầu bằng một lệnh đặc biệt: pipe()

 Nhiều tiến trình có thể viết và đọc trên cùng một ống dẫn Tuy nhiên, không có cơ chế

để phân biệt thông tin cho các tiến trình ở đầu ra

 Dung lượng ống dẫn bị hạn chế (khoảng 4KB)

 Các tiến trình liên lạc qua ống dẫn phải có mối quan hệ họ hàng và các ống dẫn nối phải được mở trước khi tạo ra các tiến trình con

 Không thể tự thay đổi vị trí thông tin trong ống

1 Quản lý tiến trình

Trang 34

• Giá trị trả về là 0 nếu thành công, -1 nếu thất bại. 

• p_desc[0] : chứa các số hiệu mô tả nhờ đó có thể đọc trong ống dẫn. 

• p_desc[1] : chứa các số hiệu mô tả nhờ đó có thể viết trong ống dẫn

1 Quản lý tiến trình

Trang 35

 Hacao linux thiết đặt mặc định là người dùng root để tăng cường khả năng kiểm soát tối đa nhất cho bạn

2 Quản lý người dùng

Trang 38

chỉ cần chọn phần mềm và nhấn nút “Install” để chương trình tự động download & cài đặt đối với Dotpup và nhấn mũi tên qua phải để cài đặt đối với Pupget và nhấn mũi tên qua trái cho phần mềm cần gỡ bỏ

3 Quản lý ứng dụng

Trang 40

* Cài đặt một gói phần mềm đơn lẻ

 Đối với các phần mềm khác không có dạng *.pup thì bạn hãy cài bổ sung các phần hỗ trợ bung nén các gói phần mềm dạng RPM, DEB, có tên là “unpm” hay “undeb” trong phần quản lý phần mềm

 Sau khi bạn cài đặt các phần mềm hỗ trợ trên thì bạn có thể bung nén các file phần mềm thuộc các dạng trên bằng lệnh: unrpm *.rpm hay undeb *.deb vào “/”

3 Quản lý ứng dụng

Trang 43

Lúc khởi động Hacao hoạt động như thế nào?

 File initrd.gz được nạp vào bộ nhớ RAM

IV Phân tích mã nguồn

Trang 45

IV Phân tích mã nguồn

Trang 46

 Hình ảnh minh họa

IV Phân tích mã nguồn

Trang 48

CẢM ƠN THẦY VÀ CÁC BẠN ĐÃ LẮNG NGHE

Ngày đăng: 29/08/2017, 09:10

TỪ KHÓA LIÊN QUAN

TRÍCH ĐOẠN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w