intTypePromotion=1
zunia.vn Tuyển sinh 2024 dành cho Gen-Z zunia.vn zunia.vn
ADSENSE

chương8 :Liên lạc giữa các tiến trình

Chia sẻ: SamSung | Ngày: | Loại File: PDF | Số trang:29

90
lượt xem
15
download
 
  Download Vui lòng tải xuống để xem tài liệu đầy đủ

Tham khảo tài liệu 'chương8 :liên lạc giữa các tiến trình', công nghệ thông tin, hệ điều hành phục vụ nhu cầu học tập, nghiên cứu và làm việc hiệu quả

Chủ đề:
Lưu

Nội dung Text: chương8 :Liên lạc giữa các tiến trình

  1. BAØI GIẢNG 8 : LIEÂN LAÏC GIÖÕA CAÙC TIEÁN TRÌNH CÔ CHEÁ ? CÔ TRAO ÑOÅI THOÂNG TIN GIÖÕA CAÙC TIEÁN TRÌNH VAÁN ÑEÀ ? GÆAI PHAÙP ? 12/16/2007 Trần Hạnh Nhi 1
  2. Nhu Caàu Lieân Laïc Q Chia seû thoâng tin L P R JOB Phoái hôïp xöû lyù P L R1 Q R2 12/16/2007 Trần Hạnh Nhi 2
  3. Caùc cô cheá lieân laïc Chia seû taøi nguyeân chung Signal Pipe Shared Memory Trao ñoåi thoâng ñieäp Message Socket 12/16/2007 Trần Hạnh Nhi 3
  4. IPC theo nguyeân taéc chia seû taøi nguyeân chung User Process User Process shared resources OS - Kernel Caùc tieán trình chia seû Memory File System Space Communication Facilities, Common communication protocol 12/16/2007 Trần Hạnh Nhi 4
  5. Signal Signal Meaning Handler OS Ñònh nghóa tröôùc khi thöïc hieän lieân laïc SIGINT, SIGSTOP… Signal SIGUSR1, SIGUSER2 Hoã trôï lieân laïc Kernel vôùi User Process Signal handler Process Error Timer Child Process keát thuùc… Signal Action User process vôí nhau Terminate Process Process Suspend, Resume… 12/16/2007 Trần Hạnh Nhi 5
  6. Name Value Function SIGHUP 1 Terminal hangup SIGINT 2 Interrupt by user: generated by < CTRL C > SIGQUIT 3 Quit by user: generated by < CTRL \ > SIGFPE 8 Floating point error such as divide by zero SIGKILL 9 Kill the process SIGUSR1 10 User defined signal 1 SIGSEGV 11 Segment violation: process has tried to access memory not assigned to it SIGUSR2 12 User defined signal 2 SIGALRM 14 Timer set with alarm() function has timed out SIGTERM 15 Termination request SIGCHLD 17 Child process termination signal SIGCONT 18 Continue after a SIGSTOP or SIGSTP signal SIGSTOP 19 Stop the process SIGTSTP 20 Terminal stop: generated by < CTRL Z > SIGWINCH 28 Change of window size
  7. Nhaän xeùt Signals L Lieân laïc khoâng ñoàng boä SH Khoâng bieát tröôùc thôøi ñieåm Thieáu tin caäy Q Quiz : OK Sig A B Khoâng cho pheùp trao ñoåi döõ lieäu L Q ? Result 12/16/2007 Trần Hạnh Nhi 7
  8. Pipes AB AB L Q B……….A WritePipe() ReadPipe() Pipe Kernel buffer (File) coù kích thöôùc giôùi haïn (4K, 8K…) HÑH cung caáp haøm WritePipe & ReadPipe WritePipe khi Pipe ñaày ? ReadPipe khi Pipe roãng ? Phaûiù xeùt ñeán caùc khaû naêng ñoàng boä Hoã trôï lieân laïc (UNIX original ) Giöõa 2 tieán trình Cha - Con Moät chieàu Khoâng caáu truùc (byte transfer) 12/16/2007 Trần Hạnh Nhi 8
  9. Nhaän xeùt Pipe Öu ñieåm : Cho pheùp trao ñoåi döõ lieäu khoâng caáu truùc Khuyeát ñieåm Chi phí thöïc hieän cao (system call) Lieân laïc giöõa 2 tieán trình Lieân laïc moät chieàu Pipe trong caùc HÑH hieän ñaïi : Anomynous Pipe : This… Named Pipe : Unix , Windows NT… Truyeàn döõ lieäu coù caáu truùc Lieân laïc 2 chieàu 12/16/2007 Trần Hạnh Nhi 9
  10. Shared Memory Shared Memory: Laø moät phaàn khoâng gian nhôù khoâng thuoäc sôû höõu cuûa tieán trình naøo Ñöôïc HÑH taïo ra Caùc tieán trình coù theå aùnh xaï ñòa chæ vaøo khoâng gian chia seû naøy ñeå truy xuaát döõ lieäu (nhö ñoái vôùi khoâng gian noäi boä) Khoâng giôùi haïn soá löôïng tieán trình, chieàu trao ñoåi, vaø thöù töï truy caäp Maâu thuaãn truy xuaát - > nhu caàu ñoàng boä 12/16/2007 Trần Hạnh Nhi 10
  11. IPC theo nguyeân taéc trao ñoåi thoâng ñieäp User Process User Process OS-Kernel OS-Kernel Network Khoâng coù boä nhôù chung Caàn coù ñöôøng keát noái giöõa caùc maùy tính 12/16/2007 Trần Hạnh Nhi 11
  12. Message Message Döõ lieäu coù caáu truùùc Caáu truùc vaø thoâng dòch msg ñöôïc thoûa thuaän giöõa 2 tieán trình lieân laïc HÑH cung caáp 2 primitive chính send(destination, message) receive(source, message) Caùc vaán ñeà quan taâm : Direct or indirect addressing Blocking or non-blocking communication Reliable or unreliable communication Buffered or un-buffered communication 12/16/2007 Trần Hạnh Nhi 12
  13. Ñònh daïng Message 12/16/2007 Trần Hạnh Nhi 13
  14. Nhaän xeùt message Laø cô cheá IPC toång quaùt Hoã trôï lieân laïc giöõa caùc tieán trính treân cuøng maùy Hoã trôï lieän laïc giöõa caùc tieán trính trong heä thoáng phaân taùn Lieân laïc giöõa caùc heä thoáng khoâng ñoàng nhaát ? 12/16/2007 Trần Hạnh Nhi 14
  15. Lieân laïc giöõa caùc heä thoáng khoâng ñoàng nhaát Máy A Send( ) //UNIX P1 Receive( ) //WIN (UNIX) Máy B P2 (Windows) 12/16/2007 Trần Hạnh Nhi 15
  16. Socket Endpoint cuûa moät keát noái 2 chieàu Töông ñöông vôùi moät network interface (hardware) Cho pheùp caùc öùng duïng “plug in” vaøo maïng moät caùch aån duï Laø moät giao dieän laäp trình maïng Cho pheùp caùc tieán trình lieân laïc 2 chieàu vôùi nhau Thieát laäp lieân laïc : taïo 2 socket, keát noái chuùng vôùi nhau Socket description Söû duïng moät transport protocol Caàn ñaëc taû IPaddress vaø port keát noái Ñöôïc hoã trôï ñaàu tieân trong Berkeley socket Laø söï môû roäng cuûa nhaäp xuaát file tröøu töôïng Hieän nay ñöôïc hoã trôï trong haàu heát HÑH hieän ñaïi 12/16/2007 Trần Hạnh Nhi 16
  17. 12/16/2007 Trần Hạnh Nhi 17
  18. Socket Communication 12/16/2007 Trần Hạnh Nhi 18
  19. Lieân laïc giöõa caùc heä thoáng khoâng ñoàng nhaát Máy A P1 Send( ) Socket (UNIX) Máy B Receive( ) Socket P2 (Windows) 12/16/2007 Trần Hạnh Nhi 19
  20. Lieân laïc thoâng qua Socket Hoã trôï 2 phöông thöùc lieân laïc Connection-oriented (TCP/IP) Stream Reliable Bi-directional communication Connectionless (UDP/IP) Datagram Unreliable Bi-directional communication Cho pheùp lieân laïc giöõa caùc tieán trình treân caùc maïng khoâng ñoàng nhaát 12/16/2007 Trần Hạnh Nhi 20
ADSENSE

CÓ THỂ BẠN MUỐN DOWNLOAD

 

Đồng bộ tài khoản
2=>2