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

Mô hình hóa và kiểm chứng hệ thống tệp phân tán hadoop (hdfs) bằng cách sử dụng các tiến trình tuần tự của truyền thông (cps)

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 (1.42 MB, 68 trang )

BỘ GIÁO DỤC VÀ ĐÀO TẠO
TRƯỜNG ĐẠI HỌC NGUYỄN TẤT THÀNH

Lương Trường An
MƠ HÌNH HĨA VÀ KIỂM CHỨNG HỆ THỐNG
TỆP PHÂN TÁN HADOOP (HDFS) BẰNG CÁCH

SỬ DỤNG CÁC TIẾN TRÌNH TUẦN TỰ CỦA
TRUYỀN THÔNG (CSP)

LUẬN VĂN THẠC SĨ CÔNG NGHỆ THÔNG TIN

Thành phố Hồ Chí Minh – 2023

BỘ GIÁO DỤC VÀ ĐÀO TẠO
TRƯỜNG ĐẠI HỌC NGUYỄN TẤT THÀNH

Lương Trường An

MƠ HÌNH HĨA VÀ KIỂM CHỨNG HỆ THỐNG
TỆP PHÂN TÁN HADOOP (HDFS) BẰNG CÁCH

SỬ DỤNG CÁC TIẾN TRÌNH TUẦN TỰ CỦA
TRUYỀN THƠNG (CSP)

Chun ngành: Cơng nghệ thông tin
Mã số: 8480201

LUẬN VĂN THẠC SĨ CÔNG NGHỆ THÔNG TIN
NGƯỜI HƯỚNG DẪN KHOA HỌC:
PGS. TS. PHAN CÔNG VINH



Thành phố Hồ Chí Minh – 2023

i

LỜI CAM ĐOAN

Em cam đoan những kết quả nghiên cứu được trình bày trong luận văn hoàn toàn
trung thực. Tất cả các tài liệu tham khảo có nguồn gốc, xuất xứ rõ ràng. Luận văn đảm
bảo tính độc lập và khách quan theo đúng quy định của Khoa.

Thành phố Hồ Chí Minh, ngày 10 tháng 03 năm 2023
Tác giả luận văn

Lương Trường An

ii

LỜI CẢM ƠN

Trước khi trình bày nội dung chính của luận văn Thạc sĩ, em xin cảm ơn sâu sắc
tới thầy PGS.TS. Phan Cơng Vinh, Phó Trưởng khoa - khoa Cơng nghệ thơng tin -
Trường Đại học Nguyễn Tất Thành người đã tận tình dạy bảo, hướng dẫn em hồn thành
tốt luận văn này.

Em cũng xin cảm ơn chân thành đến thầy TS. Nguyễn Kim Quốc, Trưởng khoa
Công nghệ thông tin là cố vấn học tập và quý Thầy khoa Công nghệ thông tin, Viên sau
đại học - Trường Đại học Nguyễn Tất Thành đã dạy bảo em trong suốt quá trình học tập
tại Trường.


Nhân dịp này em xin gửi lời cảm ơn chân thành nhất tới gia đình, bạn bè, đồng
nghiệp đã ln động viên, cổ vũ, giúp đỡ em trong suốt quá trình học tập và thực hiện
luận văn tốt nghiệp.

Thành phố Hồ Chí Minh, ngày 10 tháng 03 năm 2023
Học viên

Lương Trường An

iii

MỤC LỤC

LỜI CAM ĐOAN .................................................................................................. i
LỜI CẢM ƠN .......................................................................................................ii
MỤC LỤC............................................................................................................iii
DANH SÁCH CÁC HÌNH..................................................................................vi
DANH MỤC KÝ HIỆU VÀ VIẾT TẮT ..........................................................vii
CHƯƠNG 1: GIỚI THIỆU ĐỀ TÀI .................................................................. 1

1.1. Lý do chọn đề tài............................................................................1
1.2. Mục đích nghiên cứu .....................................................................1

1.2.1. Mục tiêu tổng quát ..................................................................................... 1
1.2.2. Mục tiêu cụ thể ........................................................................................... 1

1.3. Đối tượng nghiên cứu và phạm vi nghiên cứu............................2

1.3.1. Đối tượng nghiên cứu................................................................................. 2
1.3.2. Phạm vi nghiên cứu.................................................................................... 2


1.4. Nhiệm vụ nghiên cứu.....................................................................2
1.5. Phương pháp nghiên cứu..............................................................2

1.5.1. Phương pháp lí luận................................................................................... 2
1.5.2. Phương pháp thực tiễn .............................................................................. 2

1.6. Những đóng góp mới của đề tài ...................................................3
1.7. Dự kiến kế hoạch nghiên cứu .......................................................3

CHƯƠNG 2: MÔ TẢ VỀ HỆ THỐNG TỆP PHÂN TÁN HADOOP, VÀ
KIẾN THỨC NỀN TẢNG VỀ CSP VÀ PAT.................................................... 4

2.1 Tổng quan về HDFS .......................................................................4

iv

2.2 Giới thiệu tóm tắt về CSP và PAT ................................................8

2.2.1. Tổng quan về ngơn ngữ đại số tiến trình CSP ........................................ 8
2.2.2. Tổng quát về bộ công cụ phân tích tiến trình PAT............................... 19
2.2.3 Mơ-đun CSP .............................................................................................. 24
CHƯƠNG 3: MƠ HÌNH HĨA HỆ THỐNG TỆP PHÂN TÁN HADOOP . 35

3.1 Tổng quan về mơ hình..................................................................35
3.2 ClientNode .....................................................................................35

3.2.1 ClientRead.................................................................................................. 35
3.2.2 ClientWrite ................................................................................................ 37


3.3 DataNode .......................................................................................40

3.3.1 DataRead.................................................................................................... 40
3.3.2 DataWrite................................................................................................... 40
3.3.3 DataHBeat.................................................................................................. 43

3.4 NameNode .....................................................................................44

3.4.1 NameRead .................................................................................................. 44
3.4.2 NameWrite ................................................................................................. 45
3.4.3 NameHBeat ................................................................................................ 46
CHƯƠNG 4: KIỂM CHỨNG MƠ HÌNH HỆ THỐNG TỆP PHÂN TÁN
HADOOP ............................................................................................................ 47

4.1 Cài đặt trong PAT ........................................................................47

4.1.1 Các bảng..................................................................................................... 47
4.1.2 Các tiến trình ............................................................................................. 48

4.2 Các thuộc tính ...............................................................................52

4.2.1 Không bế tắc(Deadlock Freedom) ........................................................... 52

v

4.2.2 Khoảng cách đường đi ngắn nhất (Minimal Distance Scheme) ........... 52
4.2.3 Loại trừ lẫn nhau (Mutual Exclusion), ................................................... 53
4.2.4 Lược đồ ghi một lần (Write-Once Scheme) ............................................ 53
4.2.5 Khả năng chịu lỗi (Robustness) ............................................................... 54


4.3 Kết quả đánh giá...........................................................................54

CHƯƠNG 5: KẾT LUẬN ................................................................................. 56

5.1. Kết luận ........................................................................................56
5.1. Hướng phát triển .........................................................................56

TÀI LIỆU THAM KHẢO ................................................................................. 57

vi

DANH SÁCH CÁC HÌNH

Hình 2.1: Tổng quan về Kiến trúc HDFS .......................................................... 5
Hình 2.2: Tổng quan về Đọc tệp ......................................................................... 6
Hình 2.3: Tổng quan về Ghi tệp.......................................................................... 7
Hình 2.4: Tổng quan về Cơ chế nhịp tim........................................................... 8
Hình 2.5: Kiến trúc PAT ................................................................................... 21
Hình 2.6: Trình biên tập PAT ........................................................................... 22
Hình 2.7: Chế độ chọn nhấp chuột và hàng loạt ............................................. 24
Hình 2.8: Mơ-đun CSP ...................................................................................... 25
Hình 3.1: Truyền thơng giữa các DataNode (DataNodes).............................. 41
Hình 3.2: Ba khả năng ghi dữ liệu (DataWrite) .............................................. 41
Hình 4.1: Mơ phỏng cho HDFS.........................................................................51
Hình 4.2: Kết quả xác minh cho HDFS............................................................55

vii

DANH MỤC KÝ HIỆU VÀ VIẾT TẮT


STT Chữ viết tắt Diễn giải tiếng Anh Diễn giải tiếng Việt

1 Hadoop Distributed File Hệ thống tệp phân tán Hadoop

HDFS

System

2 CSP Communicating Sequential Các tiến trình tuần tự của

Processes truyền thông

3 PAT Process Analysis Toolkit Bộ cơng cụ phân tích tiến trình

4 ID Index Chỉ mục

5 LTL Linear Temporal Logic Logic thời gian tuyến tính

6 HBeat Heart Beat Nhịp tim

7 HBeatInterval Heart Beat Interval Khoảng nhịp tim

8 WS Web Service Dịch vụ web

9 OCR Module Optical Character Mô-đun nhận dạng ký tự
Recognition Module quang học

10 NesC Module Module Checker for Mơ-đun kiểm tra mơ hình cho
Sensor Networks mạng cảm biến


11 RTS Real-time System Hệ thống thời gian thực

12 GFS Google File System Hệ thống tệp Google

1

CHƯƠNG 1: GIỚI THIỆU ĐỀ TÀI

1.1. Lý do chọn đề tài

Hadoop là một khung tham chiếu mã nguồn mở phân tán dành cho các ứng dụng
tính tốn dữ liệu qui mơ lớn [14, 15]. Lấy cảm hứng từ nghiên cứu của Google [6, 7], nó
cung cấp mơ hình lập trình MapReduce và hệ thống tệp phân tán Hadoop (Hadoop
Distributed File System - HDFS). Hiện nay, nhiều công ty, như Amazon, AOL, Yahoo!,
Facebook và New York Times [4, 5], đã sử dụng thành công Hadoop. HDFS [2, 3, 9],
như là một khung tham chiếu của các ứng dụng Hadoop, cung cấp khả năng truy xuất
thông lượng cao cho các dữ liệu của ứng dụng và thích hợp cho các ứng dụng có tập dữ
liệu lớn. Dưới khung tham chiếu này, dữ liệu phân tán trên một số lượng lớn các máy có
thể được xử lý một cách hiệu quả.

Luận văn này được phát triển từ bài báo của PGS.TS.Phan Công Vinh [1]. Nội
dung trong đề tài được tổ chức như sau. Trong Chương 1, sẽ giới thiệu về đề tài luận
văn. Chương 2 sẽ mô tả về Hệ thống tệp phân tán Hadoop, và kiến thức nền tảng về CSP
và PAT. Chúng ta sẽ mơ hình hóa Hệ thống tệp phân tán Hadoop trong Chương 3. Trong
Chương 4, chúng ta kiểm chứng mơ hình Hệ thống tệp phân tán Hadoop. Cuối cùng,
chúng ta cung cấp các nhận xét kết luận và hướng phát triển trong Chương 5.

1.2. Mục đích nghiên cứu
1.2.1. Mục tiêu tổng quát


Mơ hình hóa được hệ thống tệp phân tán Hadoop bằng ngôn ngữ đại số tiến trình
CSP nhằm mục đích nghiên cứu và cải thiện các hạn chế của hệ thống tệp phân tán.

1.2.2. Mục tiêu cụ thể

Thông qua việc mơ hình hóa và kiểm chứng mạng do Hệ thống tệp phân tán Hadoop
bằng ngơn ngữ đại số tiến trình CSP, sẽ hoàn thành luận văn tốt nghiệp.

2

1.3. Đối tượng nghiên cứu và phạm vi nghiên cứu
1.3.1. Đối tượng nghiên cứu

Mô hình hóa và kiểm chứng Hệ thống tệp phân tán Hadoop bằng cách sử dụng
ngơn ngữ đại số tiến trình CSP.

1.3.2. Phạm vi nghiên cứu

Sử dụng ngơn ngữ đại số tiến trình CSP và PAT để kiểm tra mơ hình và kiểm
chứng các mơ hình đáp ứng năm thuộc tính, đó là tính khơng có bế tắc (Deadlock
Freedom), khoảng cách đường đi ngắn nhất (Minimal Distance Scheme), loại trừ lẫn
nhau (Mutual Exclusion), lượt đồ ghi một lần (Write-Once Scheme) và khả năng chịu
lỗi (Robustness).

1.4. Nhiệm vụ nghiên cứu

Nghiên cứu Hệ thống tệp phân tán Hadoop.
Nghiên cứu ngôn ngữ đại số tiến trình CSP và sử dụng bộ cơng cụ phân tích tiến
trình để kiểm tra mơ hình PAT.
Mơ hình hóa Hệ thống tệp phân tán Hadoop.

Kiểm chứng tính khơng có bế tắc, khoảng cách đường đi ngắn nhất, loại trừ lẫn
nhau, đồ ghi một lần và khả năng chịu lỗi.
Thực nghiệm đánh giá tính khả thi và hiệu quả của đề tài trên bộ công cụ phân
tích tiến trình để kiểm tra mơ hình PAT

1.5. Phương pháp nghiên cứu
1.5.1. Phương pháp lí luận

Nghiên cứu lý thuyết Hệ thống tệp phân tán Hadoop, Ngơn ngữ đại số tiến trình
CSP, PAT và các tài liệu có liên quan.

Phân tích và tổng hợp.

1.5.2. Phương pháp thực tiễn

Phân tích và tổng hợp kinh nghiệm: đề xuất PAT thực nghiệm.

3

Phương pháp hỏi ý kiến chuyên gia.
Phương pháp tốn học: Ngơn ngữ tiến trình CSP.

1.6. Những đóng góp mới của đề tài

Sử dụng kiến trúc đa điều khiển và CSP để mơ hình hóa Hệ thống tệp phân tán
Hadoop. Bằng cách sử dụng PAT để kiểm tra mơ hình, kiểm chứng các mơ hình đáp ứng
năm thuộc tính, đó là khơng có bế tắc, khoảng cách đường đi ngắn nhất, loại trừ lẫn nhau,
đồ ghi một lần và khả năng chịu lỗi.

1.7. Dự kiến kế hoạch nghiên cứu


Giai đoạn 1: Nghiên cứu lý thuyết Hệ thống tệp phân tán Hadoop và các tài liệu
có liên quan.

Giai đoạn 2: Nghiên cứu ngơn ngữ đại số tiến trình CSP và PAT và các tài liệu
có liên quan.

Giai đoạn 3: Sử dụng đại số tiến trình CSP để mơ hình hóa Hệ thống tệp phân
tán Hadoop.

Giai đoạn 4: Thực nghiệm bằng cách sử dụng PAT để kiểm chứng Hệ thống tệp
phân tán Hadoop.

Giai đoạn 5: Kết luận và phát triển.
Giai đoạn 6: Viết các chương báo cáo và hoàn thiện luận văn.

4

CHƯƠNG 2: MÔ TẢ VỀ HỆ THỐNG TỆP PHÂN TÁN
HADOOP, VÀ KIẾN THỨC NỀN TẢNG VỀ CSP VÀ PAT

Apache Hadoop hay Hadoop là một software framework hỗ trợ các ứng dụng
phân tán dữ liệu chuyên sâu theo một giấy phép miễn phí. Nó cho phép các ứng dụng
làm việc với hàng ngàn máy tính tính tốn độc lập và petabyte dữ liệu. Hadoop được bắt
nguồn từ các bài báo MapReduce của Google và Google File System (GFS) [17].

Hadoop là một trong những dự án hàng đầu của Apache, được xây dựng và được
sử dụng bởi một cộng đồng những người đóng góp tồn cầu, viết bằng ngơn ngữ lập
trình Java. Yahoo! đã đóng góp lớn nhất cho dự án, và Hadoop được sử dụng rộng rãi
trên khắp các doanh nghiệp.


Hệ thống tệp phân tán Hadoop (HDFS) là một hệ thống quản lý tệp phân tán có
khả năng chịu lỗi cao, cung cấp khả năng truy cập thơng lượng cao vào dữ liệu ứng dụng
và thích hợp cho các ứng dụng có tập dữ liệu lớn. Ngoài ra, chúng ta cũng giới thiệu liên
quan đến CSP và PAT.

2.1 Tổng quan về HDFS

HDFS là hệ thống tệp phân tán chính được các ứng dụng Hadoop sử dụng. Hình
2.1 minh họa cấu trúc HDFS [2, 3, 17]. Như chúng ta thấy trong Hình 2.1, HDFS có kiến
trúc kiểu master/slave. Trong chương này, chúng ta chủ yếu tập trung vào cụm HDFS
với một NameNode đơn là một máy chủ master quản lý siêu dữ liệu của tệp và quy định
việc truy xuất tệp của người dùng HDFS, và nhiều DataNodes lưu trử dữ liệu thật.

5

Metadata ops Metadata
NameNode
Client Client
Block ops
Write

Read

DataNodes Blocks

Hình 2.1: Tổng quan về Kiến trúc HDFS
Trong HDFS, một tệp được chia thành một hoặc nhiều khối và các khối này được
lưu trên các DataNodes. NameNode xác định ánh xạ của các khối này vào các
DataNodes. Nó cũng thực hiện các tác vụ liên quan đến hệ thống tệp như mở, đóng và

đặt lại tên tệp. DataNodes có trách nhiệm xử lý các yêu cầu đọc và ghi từ các người dùng
HDFS. DataNodes cũng thực hiện việc tạo ra, xóa bỏ và sao chép khối dựa theo chỉ thị
từ NameNode.
Kế tiếp, chúng ta sẽ mô tả luồng của các tác vụ đọc, ghi và cơ chế nhịp đập trái
tim trong HDFS liên quan đến đặc tả của chúng ta.
Hình 2.2 thể hiện luồng của một tác vụ đọc. Có ba nodes đại diện cho ba thành
phần của HDFS đang tương tác. Khi chương trình người dùng yêu cầu đọc một tệp, chuỗi
hành động sau đây sẽ xảy ra:

1. Chương trình bắt đầu khi người dùng yêu cầu đọc một tệp. Để lấy vị trí

6

của các khối chứa tệp, ClientNode gửi fileInfo đến NameNode .
2. NameNode tìm các khối và datanodes lưu các khối này và sắp xếp các

datanodes này theo khoảng cách tăng dần với người dùng. Sau khi sắp xếp,
NameNode gởi blockLocation tới ClientNode.
3. ClientNode chọn một datanode khả dụng phụ thuộc vào blockLocation và
gởi blockInfo tới datanode được chọn. DataNode gửi blockData đến
ClientNode .

ClientNode 1.fileInfo NameNode
2.blockLocation
3.blockInfo 5.checksumOk

4.blockData

DataNode


Hình 2.2: Tổng quan về Đọc tệp
4. ClientNode gởi thông điệp checksumOk tới DataNode, thông báo rằng dữ

liệu đã được đọc thành công.
Hình 2.3 cho thấy quy trình của một thao tác ghi. Ba nút đại diện cho ba thành
phần của HDFS đang tương tác. Ở đây, nó liên quan đến giao tiếp giữa hai DataNode.
Khi chương trình người dùng yêu cầu ghi một tệp, chuỗi hành động sau sẽ xảy ra:

1. Chương trình bắt đầu với yêu cầu ghi. Để tạo một tệp ClientNode gởi
fileName tới NameNode.

2. NameNode kiểm tra xem coi tệp có trên hệ thống tệp hay khơng. Nếu tệp
không tồn tại và được tạo ra thành công, NameNode sẽ tạo ra một khế ước
tệp với ClientNode và cấp phát datanodes để lưu các khối của tệp. Sau đó,
NameNode gởi DInfo tới ClientNode.

3. ClientNode chọn một datanode khả dụng phụ thuộc vào DInfo và gởi

7

blockinfo tới DataNode được chọn.
4. Nhận xong blockinfo, DataNode được chọn sẽ gởi Ok để báo ClientNode

hãy gởi dữ liệu.
5. ClientNode gởi dữ liệu của các khối blockData tới DataNode được chọn,

DataNode được chọn gởi blockData tới DataNode thứ hai trong đường
dẫn. Sau đó DataNode thứ hai sẽ gởi blockData tới DataNode cuối cùng.
6. Khi nhận được thông điệp Ack từ các datanodes khác, DataNode được
chọn gởi Ack để thông báo ClientNode rằng dữ liệu đã được ghi thành

công.
7. ClientNode gởi Complete tới NameNode, thơng báo hãy xóa bỏ khế ước
tệp.

ClientNode 1.fileName NameNode
2.DInfo

7.Complete

3.blockInfo 5.blockData

4.Ok 6.Ack

5 5

DataNode DataNode DataNode
6

6

Hình 2.3: Tổng quan về Ghi tệp
Hình 2.4 thể hiện luồng của một nhịp đập trái tim. Một đồng hồ được trừu tượng

8

hóa như một tiến trình CSP Clock(i).
1. DataNode gửi một yêu cầu đến Clock (i).
2. Clock(i) trả thời gian hiện hành i về DataNode. Nếu khoảng thời gian giữa
i và lastTime lớn hơn HBeatInterval, thì nó sẽ thực hiện bước 3. Ngược
lại, nó sẽ lập lại bước 1 và 2. Ở đây, lastTime chỉ thời gian của nhịp đập

sau cùng và HBeatInterval chỉ khoảng thời gian giữa hai nhịp đập.
3. DataNode gửi heartbeat đến NameNode.
4. NameNode trả về một command cho DataNode.

Clock(i)

1.request
2.i

ClientNode 3.heartbeat NameNode
4.command

Hình 2.4: Tổng quan về Cơ chế nhịp tim

2.2 Giới thiệu tóm tắt về CSP và PAT

Trình bày các khái niệm lý thuyết về ngôn ngữ đại số tiến trình CSP và PAT.

2.2.1. Tổng quan về ngôn ngữ đại số tiến trình CSP
2.2.1.1. Giới thiệu

CSP, là viết tắt của Communicating Sequential Processes - Tổng quan về các tiến
trình tuần tự của truyền thông [8], được đưa ra trong phần này. CSP có thể được sử dụng
để minh họa các hệ thống đồng thời một cách dễ dàng để thể hiện các hệ thống một cách
trực quan và nền tảng toán học chặt chẽ. Nó đã được sử dụng để kiểm chứng một số giao

9

thức và hệ thống thành công [11, 12, 13, 16]. CSP được hình thành để xác định và lập


luận về các hệ thống tương tranh có các tiến trình thành phần tương tác với nhau bằng

cách truyền thông.

Chú giải các ký hiệu trong ngôn ngữ đại số CSP

Logic

Ký hiệu Ý nghĩa Ví dụ

= bằng 𝑥=𝑥

≠ khác biệt với 𝑥 ≠ 𝑥+1

 kết thúc một ví dụ hoặc chứng minh

¬𝑃 không phải 𝑃 (𝑃 không đúng) ¬3 ≥ 5

∃𝑥  𝑃 tồn tại một 𝑥 sao cho 𝑃 ∃𝑥  𝑥 > 𝑦

∀𝑥  𝑃 với mọi 𝑥, 𝑃 ∀𝑥  𝑥 < 𝑥 + 1

Tập hợp Ý nghĩa Ví dụ
Ký hiệu là phần tử của 𝑁𝑎𝑝𝑜𝑙𝑒𝑜𝑛 ∈ 𝑚𝑎𝑛𝑘𝑖𝑛𝑑
∈ không phải là phần tử của 𝑁𝑎𝑝𝑜𝑙𝑒𝑜𝑛 ∉ 𝑚𝑎𝑛𝑘𝑖𝑛𝑑
∉ tập hợp rỗng (khơng có phần tử) ¬ 𝑛𝑎𝑝𝑜𝑙𝑒𝑜𝑛 ∈ {}
{} tập hợp của tất cả 𝑥 sao cho 𝑃(𝑥) {𝑎} = {𝑥 | 𝑥 = 𝑎}
{𝑥 | 𝑃(𝑥)} tập hợp của 𝑥 trong A sao cho 𝑃(𝑥)
𝑥 ∶ 𝐴 | 𝑃(𝑥)}


Các hàm Ý nghĩa Ví dụ
Ký hiệu 𝑓 là một hàm ánh xạ từng phần tử của 𝐴 𝑠𝑝𝑢𝑎𝑟𝑒: ℕ ⟶ ℕ
𝑓: 𝐴 ⟶ 𝐵 với một phần tử của 𝐵
phần tử của 𝐵 mà 𝑓 ánh xạ 𝑥 (trong 𝐴)
𝑓(𝑥)

10

f(x)| P(x)} tập hợp được tạo thành bằng cách áp (𝜆𝑥  𝑓(𝑥))(18) = 𝑓(18)
dụng 𝑓 với mọi 𝑥 sao cho 𝑃(𝑥)
{𝑥 | 𝑃(𝑥)} tập hợp của tất cả 𝑥 sao cho 𝑃(𝑥)
𝜆𝑥  𝑓(𝑥) hàm ánh xạ từng giá trị của x thành 𝑓(𝑥)

Các sự kiện đặt biệt

Ký hiệu Ý nghĩa

 thành công (chấm dứt thành công)

𝑙. 𝑎 tham gia vào sự kiện a bởi một tiến trình có tên 𝑙

𝑐. 𝑣 truyền thông giá trị 𝑣 trên kênh 𝑐

𝑙. 𝑐 kênh 𝑐 của một tiến trình có tên 𝑙

𝑙. 𝑐. 𝑣 truyền thông của một tin nhắn 𝑣 trên kênh 𝑙. 𝑐

Các tiến trình Ý nghĩa
Ký hiệu bảng chữ cái của tiến trình 𝑃
𝛼𝑃 tập hợp các thông điệp được truyền tải trên kênh c

𝛼𝑐 𝑎 rồi đến 𝑃
𝑎⟶𝑃 𝑃 song song với 𝑄
𝑃||𝑄 𝑃 hoặc 𝑄 (không xác định)
𝑃⊓𝑄 lựa chọn 𝑃 hoặc 𝑄
𝑃𝑄 𝑃 khơng có 𝑄
𝑃\𝑄 𝑃 xen kẽ với 𝑄
𝑃|||𝑄 𝑃 đồng bộ với 𝑄
𝑃|[𝑋]|𝑄 trên (kênh) 𝑏 đầu ra (giá trị của) 𝑒
𝑏! 𝑒 trên (kênh) 𝑏 đầu vào cho 𝑥
𝑏? 𝑥

11

𝑃⊲𝑏⊳𝑄 lựa chọn có điều kiện giữa 𝑃 và 𝑄
𝑃; 𝑄 𝑃 (thành công) theo sau là 𝑄
𝑃∆𝑄 𝑃 bị ngắt bởi 𝑄

Tiến trình
Một tiến trình thể hiện một kiểu hành vi trong đó nó đưa ra những sự kiện nhất

định để đồng bộ hóa với mơi trường của nó.
 Mỗi sự kiện tạo thành một sự tương tác giữa tiến trình và mơi trường của nó.
 Nếu tương tác không xảy ra, thì tiến trình sẽ bị chặn.
Trong trường hợp của một máy bán hàng tự động đơn giản, có hai loại sự kiện:
xu – việc nhét đồng xu vào khe của máy bán hàng tự động;
socola – chiết xuất sô cô la từ bộ phân phối của máy.

Trong trường hợp máy bán hàng tự động phức tạp hơn, có thể có nhiều sự kiện
hơn:
vao1xu – việc chèn một xu;

vao2xu – việc chèn một đồng xu hai xu;
nho – chiết xuất một chiếc bánh quy nhỏ hoặc bánh quy;
lon – chiết xuất một chiếc bánh quy lớn hoặc bánh quy;
ra1xu – trích một xu để thay đổi.

Tập hợp tên các sự kiện được coi là có liên quan đến mơ tả cụ thể của một đối
tượng được gọi là bảng chữ cái. Bảng chữ cái là thuộc tính được xác định trước vĩnh
viễn của một đối tượng. Về mặt logic, một đối tượng không thể tham gia vào một sự kiện
ngồi bảng chữ cái của nó. Chẳng hạn, một chiếc máy bán hàng tự động được thiết kế
để bán sô cô la không thể bất ngờ cung cấp một chiếc máy bay đồ chơi. Vì một chiếc
máy được thiết kế để bán sơ cơ la thực sự có thể khơng bao giờ làm như vậy, có lẽ vì nó


×