YouTube2Text

03 06 Processes Part 6 — Transcript

by Santelmo · 1,442 words · 342 segments · language en · Watch on YouTube

Full transcript

  1. 0:08[Music]
  2. 0:20okay so next are pipes
  3. 0:23so what are pipes
  4. 0:24pipes are one of the earliest and
  5. 0:26simplest channel of communication
  6. 0:28between unix processes
  7. 0:31okay
  8. 0:32so there are four key considerations for
  9. 0:34implementing pipes
  10. 0:37first
  11. 0:38unidirectional or bi-directional
  12. 0:40communication
  13. 0:41right
  14. 0:43next is
  15. 0:45is bi-directional operation or
  16. 0:47communication half duplex or full duplex
  17. 0:50okay
  18. 0:52now next would be
  19. 0:54must a relationship such as parent child
  20. 0:56exist between the processes
  21. 1:00okay and last
  22. 1:02is can pipes communicate over a network
  23. 1:05or only on the same machine
  24. 1:07so the following sections examine these
  25. 1:09issues on unix and windows
  26. 1:12so you've got what's called an ordinary
  27. 1:14pipes and the name pipes
  28. 1:17okay
  29. 1:17now let's talk about the ordinary pipes
  30. 1:19here
  31. 1:21ordinary pipes are unidirectional
  32. 1:24with a reading and and writing in
  33. 1:27so if bi-directional
  34. 1:30meaning two-way
  35. 1:31okay communications are needed then a
  36. 1:34second pipe is required
  37. 1:38okay
  38. 1:40so unix pipes are accessible as files
  39. 1:43using the standard read and write system
  40. 1:46calls
  41. 1:47so the ordinary pipes are only
  42. 1:49accessible within the process that
  43. 1:51created them so typically a prior
  44. 1:54apparent okay creates the pipe before
  45. 1:57forking off a child
  46. 1:59so when the child inherits open files
  47. 2:02from each parent
  48. 2:03including the pipe files
  49. 2:06a channel of communication is
  50. 2:08established
  51. 2:09so each process
  52. 2:11parent and child should first close the
  53. 2:13ends of the pipe
  54. 2:15that they are not using so for example
  55. 2:18if the parent is waiting
  56. 2:20to the pipe and the child is reading
  57. 2:23then the parent should close the reading
  58. 2:25end
  59. 2:26of its pipe after the fork and the child
  60. 2:29should close the
  61. 2:31writing end
  62. 2:33so in windows
  63. 2:35windows calls this anonymous pipes so
  64. 2:38ordinary pipes and unix anonymous pipes
  65. 2:41and windows
  66. 2:43okay
  67. 2:44next how about the name pipes
  68. 2:48so name pipes support bi-directional
  69. 2:51communication so communication between
  70. 2:53a non-parent child related process
  71. 2:56and persistence after the process
  72. 2:59which created them exist
  73. 3:01so multiple processes can also share a
  74. 3:04named pipe
  75. 3:05typically
  76. 3:06one reader and multiple writers
  77. 3:10okay so in unix
  78. 3:12named pipes are termed
  79. 3:14pifos
  80. 3:16okay appear as ordinary files in the
  81. 3:19system so in windows
  82. 3:22named pipes provide richer
  83. 3:23communications duplex
  84. 3:26specifically full duplex is supported
  85. 3:29so process may reside on the same or
  86. 3:31different machines
  87. 3:33and created and manipulated using the
  88. 3:37create name type
  89. 3:39connect name type read file and write
  90. 3:42file
  91. 3:43system calls
  92. 3:46okay
  93. 3:49all right so a lot of technical terms
  94. 3:52and technical discussions okay
  95. 3:54all about processes
  96. 3:56okay and
  97. 3:58a lot more technical discussions on the
  98. 4:00next chapter
  99. 4:02okay
  100. 4:03now communications in the client server
  101. 4:05systems
  102. 4:06so how do we communicate computers with
  103. 4:09ourselves to be the client
  104. 4:12to the server which is the provider of
  105. 4:13service
  106. 4:14okay so we have two it's added we use
  107. 4:17sockets
  108. 4:18or the remote procedure calls sockets
  109. 4:21earlier
  110. 4:22is termed as port
  111. 4:24or
  112. 4:25mailboxes okay
  113. 4:27now what is a socket
  114. 4:30so a socket is defined as an endpoint
  115. 4:32for communication
  116. 4:34a socket is an end point for
  117. 4:37communication so that means
  118. 4:39every applications that is capable of
  119. 4:41having a communication
  120. 4:43over the network has a socket
  121. 4:46example
  122. 4:47when you use or when you browse the
  123. 4:49internet you are using http
  124. 4:51so you are using a port 80 socket
  125. 4:55or if it is an https you are using a
  126. 4:58port 443 seconds
  127. 5:01okay
  128. 5:02so two process communications are
  129. 5:04communicating over the network often use
  130. 5:06a pair of connected sockets as mentioned
  131. 5:08earlier
  132. 5:09so software that is designed for a
  133. 5:11client server operation may also use
  134. 5:14sockets for communication between two
  135. 5:16processes
  136. 5:17running on the same computer for example
  137. 5:20the ui for a database program may
  138. 5:22communicate with a backend database
  139. 5:24manager using sockets
  140. 5:26again when you see sockets just to make
  141. 5:28it clear
  142. 5:29sockets are port numbers
  143. 5:32these are the address of the
  144. 5:34applications
  145. 5:35residing on your
  146. 5:36computer okay so if your computer has a
  147. 5:39physical address called mac address
  148. 5:42and the logical address called ip
  149. 5:45address
  150. 5:46your computer's application or the
  151. 5:48application inside your computer
  152. 5:50has watched called address named socket
  153. 5:53or port
  154. 5:55okay
  155. 5:59next
  156. 6:01so this is an example of a socket
  157. 6:02communication okay so if you'll observe
  158. 6:05here we have here a socket 1625 in a
  159. 6:08socket
  160. 6:09um
  161. 6:1180
  162. 6:12right so you've got the communication
  163. 6:14between the host
  164. 6:16at 146 86 520
  165. 6:19communicating to the server at 161 25
  166. 6:221988
  167. 6:24okay
  168. 6:25so take note that
  169. 6:26with socket communication okay
  170. 6:29so
  171. 6:30it is not only the ip address which is
  172. 6:32being used in the process but it
  173. 6:34includes or integrates the part number
  174. 6:37or socket numbers
  175. 6:38okay
  176. 6:39so
  177. 6:40in cisco
  178. 6:42we are dealing with a lot of port
  179. 6:44numbers
  180. 6:45especially when we're talking about the
  181. 6:47access lists
  182. 6:48okay
  183. 6:49so the communication channels via
  184. 6:51sockets may be one or
  185. 6:54uh two of the major forms okay it's
  186. 6:57either tcp connection oriented
  187. 7:00transmission control protocol
  188. 7:02and udp
  189. 7:04so i guess you you remember
  190. 7:06already what are these sockets for
  191. 7:10okay
  192. 7:12now
  193. 7:13sockets in java
  194. 7:15so there are three types of sockets as
  195. 7:18mentioned earlier you've got the
  196. 7:20connection oriented tcp
  197. 7:22it is a reliable communication okay so
  198. 7:25there it's
  199. 7:26called reliable because
  200. 7:27this requires
  201. 7:29an acknowledgement
  202. 7:30okay
  203. 7:31connectionless are udp this is said to
  204. 7:34be non-reliable
  205. 7:36but java has this multicast socket
  206. 7:40okay so data can be sent to multiple
  207. 7:43recipients
  208. 7:46okay
  209. 7:46so sockets are considered a low-level
  210. 7:48communication channel
  211. 7:50and process may often choose to use
  212. 7:52something at a higher level such as
  213. 7:55those covered in
  214. 7:56the next two sections
  215. 7:58okay
  216. 8:00now the figure
  217. 8:03client server systems illustrated here
  218. 8:07okay so for determining the current date
  219. 8:09using
  220. 8:10sockets in java
  221. 8:13okay
  222. 8:16now
  223. 8:18next would be
  224. 8:19the remote procedure calls or rpcs
  225. 8:22okay
  226. 8:23so remote procedure call abstracts
  227. 8:25procedure calls between process or
  228. 8:28processes of network systems again
  229. 8:31uses ports for service differentiation
  230. 8:34again so don't be confused with the
  231. 8:36ports sockets mailbox they are all the
  232. 8:39same
  233. 8:40okay
  234. 8:41next the general concept of rpc is to
  235. 8:44make procedure calls similarly to
  236. 8:46calling on ordinary local procedures in
  237. 8:49programming
  238. 8:50except the procedure being called
  239. 8:53lies on remote machines
  240. 8:55so implementation involves what you call
  241. 8:58stubs
  242. 8:59okay
  243. 9:00on either end of the communication so
  244. 9:02the local process calls on the stab
  245. 9:04much as it would call upon
  246. 9:07a local procedure
  247. 9:08so the rpc system package up marshalls
  248. 9:12okay the parameters of the procedure
  249. 9:14call and transmits them to the remote
  250. 9:17system
  251. 9:19on the other remote
  252. 9:20side the rpc daemon accepts the
  253. 9:23parameters and calls upon the
  254. 9:24appropriate
  255. 9:25a remote procedure
  256. 9:27to perform
  257. 9:29the requested work
  258. 9:31so any results
  259. 9:33should be returned from the package up
  260. 9:36and sent back to the rpc systems to the
  261. 9:39local system
  262. 9:41so which then unpackages
  263. 9:44and returns the result to the local
  264. 9:46calling procedures
  265. 9:49so on windows
  266. 9:51this tab code compiled from
  267. 9:53specification written in the microsoft
  268. 9:55interface definition language
  269. 9:57rmitl
  270. 10:00okay
  271. 10:01next
  272. 10:04so
  273. 10:05one potential difficulty
  274. 10:08is the formatting of data on local
  275. 10:10versus remote systems
  276. 10:12okay
  277. 10:13so the resolution of this problem
  278. 10:15generally involves an agreed-upon
  279. 10:17intermediary format such as the xdr
  280. 10:20okay or the external data representation
  281. 10:24all right so another issue is
  282. 10:26identifying the procedure on the remote
  283. 10:28system particularly the rpc is destined
  284. 10:32for
  285. 10:33so remote procedure calls
  286. 10:35are identified by ports
  287. 10:38though not the same ports as the sockets
  288. 10:41port described earlier
  289. 10:44okay so one solution is for the calling
  290. 10:47procedures to know the port number they
  291. 10:49wish to communicate with
  292. 10:52on the remote system so this is
  293. 10:54problematic as the port number would be
  294. 10:56compiled into code
  295. 10:58and it makes breakdown if the remote
  296. 11:00systems cannot
  297. 11:02change their port numbers
  298. 11:05okay so more commonly matchmakers
  299. 11:08process is employed
  300. 11:10which acts like a telephone directory
  301. 11:12service
  302. 11:14okay so the local process must first
  303. 11:16contact the matchmaker
  304. 11:19of the remote system
  305. 11:21so at a well-known port numbers
  306. 11:24okay so which looks up
  307. 11:27the desired port number and return set
  308. 11:29so the local process can then choose and
  309. 11:32use that information
  310. 11:34to contact direct remote procedure
  311. 11:38so this operation involves
  312. 11:40an extra step but
  313. 11:43it's more flexible
  314. 11:45okay so an example of the matchmaker
  315. 11:48process
  316. 11:49is illustrated here
  317. 11:53okay so this is how
  318. 11:55the client
  319. 11:57and the server
  320. 11:58communicate with each other
  321. 12:00by using the remote procedure calls
  322. 12:04so one common example of the system
  323. 12:06based on rpc calls is the network file
  324. 12:08system
  325. 12:10okay messages are passed to read
  326. 12:14write delete
  327. 12:16rename or check status
  328. 12:19or might be for ordinary local disk
  329. 12:22access requests
  330. 12:24okay
  331. 12:25so
  332. 12:26we have a long day with a discussion of
  333. 12:29this chapter because we have a lot of
  334. 12:31technical discussions and technical
  335. 12:33terms here
  336. 12:34okay thanks so much for the next chapter
  337. 12:38so
  338. 12:39that's the end of the video
  339. 12:41thank you for sticking around
  340. 12:44have a great day
  341. 12:54[Music]
  342. 13:02you

About this transcript

This page contains the full transcript of 03 06 Processes Part 6 by Santelmo, generated from the public captions YouTube serves with the video. The transcript has 1,442 words across 342 segments, with the original timestamps preserved so you can click any line to jump to that moment in the embedded player.

What you can do with it

Use the transcript to take notes, quote the speaker, build a study guide, generate a summary with ChatGPT or Claude via the YouTube Summary tool, or export it as a timed subtitle file with YouTube to SRT. You can also re-open it in the transcriber to translate the transcript into 100+ languages.

Free YouTube transcript tool

YouTube2Text is a free YouTube transcript generator — no signup, no daily limit. Paste any YouTube link and get the full transcript instantly, with timestamps, click-to-jump, translation to 100+ languages, AI prompts for ChatGPT, Claude, and Gemini, and exports to TXT, SRT, VTT, or Markdown.