BSD进程间通信编程入门,主要讲socket编程.pdf
上传人:qw****27 上传时间:2024-09-12 格式:PDF 页数:23 大小:52KB 金币:15 举报 版权申诉
预览加载中,请您耐心等待几秒...

BSD进程间通信编程入门,主要讲socket编程.pdf

BSD进程间通信编程入门,主要讲socket编程.pdf

预览

免费试读已结束,剩余 13 页请下载文档后查看

15 金币

下载此文档

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

Introductory4.4BSDIPCPSD:20-1AnIntroductory4.4BSDInterprocessCommunicationTutorialStuartSechrestComputerScienceResearchGroupComputerScienceDivisionDepartmentofElectricalEngineeringandComputerScienceUniversityofCalifornia,BerkeleyABSTRACTBerkeleyUNIX†4.4BSDoffersseveralchoicesforinterprocesscommunication.Toaidthepro-grammerindevelopingprogramswhicharecomprisedofcooperatingprocesses,thedifferentchoicesarediscussedandaseriesofexampleprogramsarepresented.Theseprogramsdemonstrateinasimplewaytheuseofpipes,socketpairs,socketsandtheuseofdatagramandstreamcommunication.Theintentofthisdocumentistopresentafewsimpleexampleprograms,nottodescribethenetworkingsysteminfull.1.GoalsFacilitiesforinterprocesscommunication(IPC)andnetworkingwereamajoradditiontoUNIXintheBerkeleyUNIX4.2BSDrelease.Thesefacilitiesrequiredmajoradditionsandsomechangestothesys-teminterface.ThebasicideaofthisinterfaceistomakeIPCsimilartofileI/O.InUNIXaprocesshasasetofI/Odescriptors,fromwhichonereadsandtowhichonewrites.Descriptorsmayrefertonormalfiles,todevices(includingterminals),ortocommunicationchannels.Theuseofadescriptorhasthreephases:itscreation,itsuseforreadingandwriting,anditsdestruction.Byusingdescriptorstowritefiles,ratherthansimplynamingthetargetfileinthewritecall,onegainsasurprisingamountofflexibility.Often,theprogramthatcreatesadescriptorwillbedifferentfromtheprogramthatusesthedescriptor.Forexampletheshellcancreateadescriptorfortheoutputofthe‘ls’commandthatwillcausethelistingtoappearinafileratherthanonaterminal.PipesareanotherformofdescriptorthathavebeenusedinUNIXforsometime.Pipesallowone-waydatatransmissionfromoneprocesstoanother;thetwoprocessesandthepipemustbesetupbyacommonancestor.TheuseofdescriptorsisnottheonlycommunicationinterfaceprovidedbyUNIX.Thesignalmech-anismsendsatinyamountofinformationfromoneprocesstoanother.Thesignaledprocessreceivesonlythesignaltype,nottheidentityofthesender,andthenumberofpossiblesignalsissmall.Thesignalsemanticslimittheflexibilityofthesign