Tải bản đầy đủ (.pdf) (7 trang)

Bài giảng Lập trình hệ nhúng: Chương 4 - Phạm Văn Thuận

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (492.36 KB, 7 trang )

<span class='text_page_counter'>(1)</span><div class='page_container' data-page=1>

Chương 4. Các kỹ thuật lập trình nâng cao


4.1. Tiến trình (process) và cơ chế sử dụng signal
4.2. Lập trình xử lý đa tiến trình


4.3. Giới thiệu về luồng
4.4. Lập trình đa luồng


</div>
<span class='text_page_counter'>(2)</span><div class='page_container' data-page=2>

4.1. Tiến trình và cơ chế sử dụng signal


§ Khái niệm tiến trình


</div>
<span class='text_page_counter'>(3)</span><div class='page_container' data-page=3>

Khái

niệm tiến

trình



§ Tiến trình được tạo ra khi ta thực thi một chương
trình


§ Đa tiến trình cho phép nhiều chương trình cùng


thực thi và chia sẻ dữ liệu với nhau


§ Các tham số của một tiến trình


Lập trình hệ nhúng


§ Các tham số của một tiến trình


• PID (Process ID): số hiệu tiến trình


• PPID (Parent Process ID): số hiệu tiến trình cha
• Command: câu lệnh được gọi để thực thi tiến



trình


<b>ls –e –o pid,ppid,command</b>



</div>
<span class='text_page_counter'>(4)</span><div class='page_container' data-page=4>

PID, PPID



§<b>Lấy về</b> <b>PID: sử dụng</b> <b>hàm</b> <b>getpid()</b>


§<b>Lấy về</b> <b>PPID: sử dụng</b> <b>hàm</b> <b>getppid()</b>


§<b>Hàm getpid() và getppid() trả</b> <b>giá</b> <b>trị kiểu</b> <b>pid_t (bản</b>


</div>
<span class='text_page_counter'>(5)</span><div class='page_container' data-page=5>

Dừng tiến

trình



§ Cách 1: Sử dụng tổ hợp phím Ctrl + C


§ Cách 2: Sử dụng shell command


<b>kill</b>

<b>PID</b>



</div>
<span class='text_page_counter'>(6)</span><div class='page_container' data-page=6>

Tạo tiến

trình

mới



</div>
<span class='text_page_counter'>(7)</span><div class='page_container' data-page=7>

Tạo tiến

trình

mới



§ <b>Cách 2</b>: sử dụng hàm fork và exec


</div>

<!--links-->

×