www.glcnetworks.com
Managing
Process in
UNIX/Linux
GLC webinar, 24 Dec 2020
Achmad Mardiansyah
achmad@glcnetworks.com
GLC Networks, Indonesia
1
www.glcnetworks.com
Agenda
● Introduction
● UNIX process
● Process management
● Background vs foreground process
● Signal
● Live practice
● Q & A
2
www.glcnetworks.com
introduction
3
www.glcnetworks.com
What is GLC?
● Garda Lintas Cakrawala (www.glcnetworks.com)
● Based in Bandung, Indonesia
● Areas: Training, IT Consulting
● Certified partner for: Mikrotik, Ubiquity, Linux foundation
● Product: GLC radius manager
● Regular event
4
www.glcnetworks.com
Trainer Introduction
● Name: Achmad Mardiansyah
● Base: bandung, Indonesia
● Linux user since 1999, mikrotik user since 2007, UBNT
2011
● Mikrotik Certified Trainer
(MTCNA/RE/WE/UME/INE/TCE/IPv6)
● Mikrotik/Linux Certified Consultant
● Website contributor: achmadjournal.com, mikrotik.tips,
asysadmin.tips
● More info:
http://au.linkedin.com/in/achmadmardiansyah
5
www.glcnetworks.com
Past experiences
6
● 2020 (Congo DRC, Malaysia): IOT integration,
network automation
● 2019, Congo (DRC): build a wireless ISP from
ground-up
● 2018, Malaysia: network revamp, develop billing
solution and integration, setup dynamic routing
● 2017, Libya (north africa): remote wireless migration
for a new Wireless ISP
● 2016, United Kingdom: workshop for wireless ISP,
migrating a bridged to routed network
● 2015, West Kalimantan: supporting wireless
infrastructure project
www.glcnetworks.com
About GLC webinar?
● First webinar: january 1, 2010 (title:
tahun baru bersama solaris - new year
with solaris OS)
● As a sharing event with various topics:
linux, networking, wireless, database,
programming, etc
● Regular schedule
● Irregular schedule: as needed
● Checking schedule:
http://www.glcnetworks.com/schedule
● You are invited to be a presenter
○ No need to be an expert
○ This is a forum for sharing: knowledge,
experiences, information
7
www.glcnetworks.com
Please introduce yourself
● Your name
● Your company/university?
● Your networking experience?
● Your mikrotik experience?
● Your expectation from this course?
8
www.glcnetworks.com
UNIX process
9
www.glcnetworks.com
What is process
Process is an instance (execution) of a program.
Properties:
● OS will allocate resource to process (CPU, RAM)
● Have a process id
● Can have child process
Example:
● Executing command
● Running a GUI
● Open a browser, accessing URL
10
www.glcnetworks.com
Process type
● Foreground
○ Default mode when executing process
○ Will occupy console, cannot do anything else
● Background
○ Usually for daemon/services
○ Can be done using “&” during execution
Multitasking?
11
www.glcnetworks.com
Zombie and orphan process
● In normal situation:
○ when a child process is killed, the parent process is updated via a SIGCHLD signal. Then the
parent can do some other task or restart a new child as needed.
● In not normal situation:
○ parent process is killed before its child is killed.
○ the "parent of all processes," the init process, becomes the new PPID (parent process ID). In
some cases, these processes are called orphan processes.
● Zombie process (Z)
○ This is a zombie or defunct process
○ The process is dead and not being used
● Orphan processes.
○ They have completed execution but still find an entry in the process table.
●
●
12
www.glcnetworks.com
Process vs job
● Process
○
● Job:
○
13
www.glcnetworks.com
Process vs thread
● Process
○ Normal procss
● Thread
○ Aka LWP (lightweight process)
○ One process that is divided into several subprocess (aka. thread).
○ The subprocess is not called child process
14
www.glcnetworks.com
Process management
15
www.glcnetworks.com
Managing process
● Display process:
○ ps
○ Top
● job
● Send signal:
○ kill
16
www.glcnetworks.com
Sending signal to process
17
www.glcnetworks.com
What, why is signal?
● Signals are a limited form of inter-process communication (IPC)
● To send data/command between process
● Typically used in Unix, Unix-like, and other POSIX-compliant operating
systems.
18
www.glcnetworks.com
Example of signal
19
Signal Portable
number
Default action Description
SIGABRT 6 Terminate (core dump) Process abort signal
SIGALRM 14 Terminate Alarm clock
SIGBUS N/A Terminate (core dump) Access to an undefined portion of a memory object
SIGCHLD N/A Ignore Child process terminated, stopped, or continued
SIGCONT N/A Continue Continue executing, if stopped
SIGFPE 8 Terminate (core dump) Erroneous arithmetic operation
SIGHUP 1 Terminate Hangup
SIGILL 4 Terminate (core dump) Illegal instruction
SIGINT 2 Terminate Terminal interrupt signal
www.glcnetworks.com
LIVE practice
20
www.glcnetworks.com
preparation
● SSH client
● SSH parameters
○ SSH address
○ SSH port
○ SSH username
○ SSH password
21
www.glcnetworks.com
R1
AS11
R2
AS11
E2
E2
E3
E3
E6
R3
AS13
R4
AS13
E2
E2
E3
E3
E6
R5
AS15
R6
AS15
E2
E2
E3
E3
E6
R7
AS17
R8
AS17
E2
E2
E3
E3
E6
R9
AS19
R10
AS19
E2
E2
E3
E3
E6
SW86
192.168.86.X/24
R86
AS86
R85
AS85
R98
R88
AS88
R87
AS87
E6
E6
E3
E3
E5
E2
E5
E3
E3
E2
TOPOLOGY 1
LAB: Mikrotik
E6
E6
E2
E6 E6 E6
PC101
E2
PC102
E2
PC103
E2
PC104
E2
PC105
E2
PC106
E2
PC107
E2
PC108
E2
PC109
E2
PC110
www.glcnetworks.com
Q & A
23
www.glcnetworks.com
Interested? Just come to our training...
● Topics are arranged in systematic and logical way
● You will learn from experienced teacher
● Not only learn the materials, but also sharing experiences, best-practices, and
networking
24
www.glcnetworks.com
End of slides
● Thank you for your attention
● Please submit your feedback: http://bit.ly/glcfeedback
● Like our facebook page: https://www.facebook.com/glcnetworks
● Slide: http://www.slideshare.net/r41nbuw
● Recording (youtube): https://goo.gl/28ABHU
● Stay tune with our schedule
● Any questions?
25

Managing Process in UNIX/Linux