03 03 Processes Part 3 — Transcript
Full transcript
- 0:08[Music]
- 0:20all right
- 0:22so next would be the multitasking in
- 0:25mobile system
- 0:27okay so let's talk about
- 0:29an ios here so some mobile systems
- 0:31example the early versions of ios
- 0:34okay allow only one process to run and
- 0:38then others are suspended so we look at
- 0:40it as multitasking because multiple
- 0:42processes are being executed but they
- 0:45are not executed all at the same time
- 0:48all right so that's what i said earlier
- 0:50the concept here is that the cpu can
- 0:52execute process one
- 0:54one job at a time
- 0:56okay or one process at a time
- 0:59so due to screen real estate user
- 1:01interface limits ios provides for a
- 1:04single foreground process
- 1:06controlled by uh user interface
- 1:09and multiple background processors so
- 1:11these are in the memory running but not
- 1:14on the display and with its limits
- 1:17okay
- 1:18so for android
- 1:20android runs foreground and background
- 1:22with fewer limits so background
- 1:24processes uses a service to perform
- 1:26tasks
- 1:28okay
- 1:29while the service can keep running even
- 1:31if the bracket process is suspended
- 1:33so service has no user interface
- 1:37and it uses only a small amount of
- 1:39memory
- 1:41okay
- 1:44next
- 1:45so operations under processes
- 1:48so systems
- 1:50must provide mechanism for
- 1:52process creation and
- 1:55process termination
- 1:57okay
- 1:58now let's talk about process creation
- 1:59first
- 2:01so in process creation there might be a
- 2:03parent process
- 2:05creating a child or children processes
- 2:08which in turn
- 2:10create other processes forming a tree of
- 2:13processes
- 2:14you've got the parent you've got the
- 2:17root
- 2:18and then you've got different branches
- 2:20and then each branch has a tree or as a
- 2:24leave
- 2:24or leaf
- 2:26okay
- 2:27so
- 2:28that forms a tree of a process
- 2:31so generally
- 2:32process identified and managed via
- 2:35process identifier
- 2:38so resource sharing options
- 2:40is available so the parent and the
- 2:42children
- 2:44share all the resources
- 2:46so we're talking about process and
- 2:48thread relationships here
- 2:50okay
- 2:51so children share subset of the parent
- 2:54resources
- 2:55or the parent and child share no
- 2:58resources at all
- 2:59okay
- 3:00now on the execution options so the
- 3:03parent and children execute concurrently
- 3:06all at the same time
- 3:07okay so next would be the parent waits
- 3:11until the children
- 3:12terminate
- 3:14can we terminate the parent without
- 3:16terminating the children or the child
- 3:18first the answer is no
- 3:20okay
- 3:21we have to ensure or the operating
- 3:23system has to ensure that all the
- 3:25children processes has ended before we
- 3:27terminate
- 3:29a parent
- 3:33next process creation so the child
- 3:36duplicate of parent
- 3:39this is in terms of outer space and the
- 3:42child has a program loaded into it
- 3:44so in unix okay when you say fork
- 3:48this is a system call
- 3:51that creates a new process
- 3:53okay so basically everything in an
- 3:55operating system so if you want the
- 3:57operating operating system to do
- 3:59something you just have to issue a
- 4:01system call
- 4:02okay a system called to execute or to
- 4:05create a new process
- 4:07a system called to close the application
- 4:09or terminate the applications so
- 4:11basically everything in the operating
- 4:13system is
- 4:15in the principle of system calls
- 4:18okay
- 4:19and in unix
- 4:21to create a new process
- 4:23means fork
- 4:26okay
- 4:27exec
- 4:28is a system called for
- 4:30uh executing the program okay so after
- 4:33the fork
- 4:34so the process
- 4:36is replaced
- 4:37from the memory
- 4:39space with a new program so we call it
- 4:42exec
- 4:42so the parent
- 4:44process calls weight
- 4:46waiting for the child to
- 4:48terminate
- 4:51all right
- 4:54next so you've got a three of processes
- 4:57in linux so we have mentioned about the
- 4:59three of processes earlier okay
- 5:02so
- 5:03processes may create other process
- 5:07through appropriate system calls such as
- 5:09fork or spoon
- 5:11okay
- 5:12so the process which does the creating
- 5:15is termed the parent
- 5:17of the other process
- 5:19so which is termed as its child
- 5:23okay so each process is given an integer
- 5:26identifier
- 5:27okay we have here a process id
- 5:30or the pid
- 5:33okay
- 5:34so
- 5:35the parent pid is also stored on each of
- 5:38the process
- 5:40okay
- 5:41so on a typical unix systems the process
- 5:44scheduler is termed sched
- 5:46and is given a pid of zero
- 5:50all right so the first thing it does at
- 5:54system startup time
- 5:55is to launch init
- 5:58or initialize
- 6:00which gives the process pid equals one
- 6:03okay
- 6:04the init or initialize then launches all
- 6:07system demons
- 6:09and user logins and becomes the ultimate
- 6:11parent for all the processes here
- 6:15okay so depending on the system
- 6:17implementation
- 6:18a system process may receive some amount
- 6:21of shared resources
- 6:23with its parent
- 6:25so the child processes may or may not
- 6:29be limited to subsets
- 6:31of the resources originally allocated to
- 6:33a parent
- 6:35so preventing runaway children
- 6:37from consuming all of certain system
- 6:41resources
- 6:43all right
- 6:46okay so i have here a c program for king
- 6:50separate process so this is written in c
- 6:53okay
- 6:54so it shows a typical process tree for
- 6:57linux system and other systems will have
- 6:59similar
- 7:00do not identical trees
- 7:03okay referring to the previous diagram
- 7:06okay
- 7:07next would be creating a separate
- 7:09process via the windows api okay so
- 7:12mostly
- 7:14the operating systems are made of or
- 7:16made from the c or c c language c plus
- 7:19plus
- 7:20okay
- 7:21so in here it shows more complicated
- 7:24process for windows okay
- 7:26so you'll have sort of um pointers
- 7:30all right or memory by reference
- 7:33which must provide all the parameter
- 7:36information
- 7:37for new process as part of the forking
- 7:39process
- 7:41okay
- 7:42next would be process termination
- 7:45so how do we terminate a process so we
- 7:47just close the application
- 7:50okay then we are terminating a process
- 7:53so process may be terminated by the
- 7:55system for a variety of reasons
- 7:57including first
- 7:59the inability of the system to deliver
- 8:00necessary system resources
- 8:05okay
- 8:06in response to a kill command
- 8:08or other unhandled process interrupt so
- 8:11the parent may kill its children
- 8:15if the task assigned to them is no
- 8:17longer needed
- 8:18so again we say kill here
- 8:20okay so we mean termination we mean we
- 8:24close the application
- 8:26okay
- 8:27so on unix systems or panned processes
- 8:31are generally inherited by init
- 8:35which then proceeds to kill them
- 8:38the unix no hop command allows a child
- 8:41to continue executing after the parent
- 8:43has exited
- 8:45okay
- 8:46so
- 8:49that is in the process termination
- 8:51concepts in unix
- 8:54all right
- 8:56next when a process terminates
- 8:58all of its system resources are freed up
- 9:01open files flashed and closed okay so
- 9:05the process termination status and
- 9:07execution times
- 9:08are returned to the parent if the parent
- 9:10is waiting for the child to terminate or
- 9:13eventually
- 9:14return to init
- 9:16if the process becomes an orpan
- 9:20okay so we have here the term orphan
- 9:24process which are trying to terminate
- 9:26but which cannot because their parent
- 9:29is not wanting for them
- 9:31and termed zombies
- 9:33okay so if no parent is waiting did not
- 9:36invoke the weight the process is what we
- 9:38call a zombie
- 9:40if the parent is terminated without
- 9:42invoking weight the process is called an
- 9:44orphan
- 9:45okay so these are eventually inherited
- 9:48by init as orphans and killed off
- 9:51so note that modern unique shells do not
- 9:54produce as many our puns and zombies as
- 9:57the older systems do
- 10:00all right so we have that term zombie
- 10:02and rpa
- 10:05okay
- 10:07so next would be the android process
- 10:10importance hierarchy
- 10:12okay
- 10:13so mobile operating system often have
- 10:16determinate process to reclaim the
- 10:18system resources such as the memory
- 10:21from most to least important so
- 10:22foreground process visible process
- 10:24service processes
- 10:26background and empty processes
- 10:28okay so android will begin terminating
- 10:30the process that are least important
- 10:33okay so take note that maybe you are
- 10:35experiencing a fast
- 10:37uh low bet on a mobile devices
- 10:41and maybe without noticing it you have a
- 10:43lot of processes running on your system
- 10:46okay so we can store we we can save the
- 10:49resource okay by closing the
- 10:51applications
- 10:52which you don't need
- 10:54okay
- 10:55so and with that
- 10:57okay so we are freeing the resources
- 11:00specifically the ram
- 11:04all right
- 11:06next let's talk about the multi-process
- 11:09architecture so let's talk about the
- 11:11chrome browser okay so many websites
- 11:14active content such as javascript flash
- 11:17html5 okay so to provide rich media
- 11:21and dynamic web browsing experience
- 11:25unfortunately
- 11:26this web application may contain
- 11:29software bugs
- 11:31which result in sluggish response
- 11:34and can never cause the browser to cross
- 11:37okay
- 11:39now
- 11:40the google chrome browser
- 11:42is a multi-process with three different
- 11:45types of processes
- 11:46okay you've got a browser
- 11:49okay so process manages user interface
- 11:52disk and network io
- 11:54you also have the renderer okay so the
- 11:57process
- 11:58renders web pages
- 12:00deals with html and javascript
- 12:03a new renderer created for each website
- 12:05opened
- 12:07okay
- 12:08runs in sandbox
- 12:09restricting disk and io or specifically
- 12:12the network io minimizing the effect of
- 12:15the security exploits
- 12:18all right
- 12:20so the advantage of a multi-process
- 12:22approach is that the website run in
- 12:25isolation from one computer
- 12:27so if the website crosses it only
- 12:30okay affects or only its renderer
- 12:33process is affected
- 12:36okay
- 12:36so all other processes remain unharmed
- 12:39so furthermore
- 12:40render our process which is mentioned
- 12:43earlier running in a sandbox which means
- 12:46that the access to disk and network io
- 12:49is restricted
- 12:50okay minimizing
- 12:52the effects of any security exploits
- 12:55here
- 12:58okay
- 12:59so each tab in a chrome represents a
- 13:02separate process
- 13:15[Music]
- 13:23you
About this transcript
This page contains the full transcript of 03 03 Processes Part 3 by Santelmo, generated from the public captions YouTube serves with the video. The transcript has 1,546 words across 338 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.