Bangladesh Agricultural Research Institute(BARI)
Post: Assistant Maintenance Engineer
Exam Date: 10.05.2024
Multithreading is a technique where a single process is divided into multiple smaller execution units called threads that run concurrently.
Thread: A thread is a lightweight process and the smallest unit of execution within a process.
Working: Multiple threads run simultaneously within the same process and share resources like CPU, memory, and I/O.
Purpose: It improves performance, responsiveness, and efficient resource utilization.
Concurrency: Multithreading enables concurrency or parallelism within a process.
Example: In a web browser, each tab works as a thread; in MS Word, one thread handles typing while another handles formatting.
Multithreading হলো এমন একটি technique যেখানে একটি process-কে একাধিক ছোট execution unit (thread)-এ ভাগ করা হয় এবং এই thread-গুলো একসাথে কাজ করে।
Thread Thread হলো একটি lightweight process এবং process-এর সবচেয়ে ছোট execution unit।
Working: একাধিক thread একই process-এর মধ্যে একসাথে চলে এবং CPU, memory ও I/O resource share করে।
Purpose: এটি performance বৃদ্ধি করে, system-এর response দ্রুত করে এবং resource efficient করে।
Concurrency: Multithreading-এর মাধ্যমে একটি process-এর মধ্যে concurrency বা parallelism অর্জন করা যায়।
Example: Browser-এ প্রতিটি tab একটি thread-এর মতো কাজ করে; MS Word-এ একটি thread typing handle করে এবং অন্যটি formatting করে।
Advantages of CPU Scheduling Algorithm
Better CPU Utilization: Keeps the CPU busy by efficiently managing processes.
Improved Throughput: Increases the number of processes completed in a given time.
Reduced Waiting Time: Minimizes the waiting time of processes in the ready queue.
Faster Response Time: Provides quick response to user requests, especially in interactive systems.
Fair Resource Allocation: Ensures all processes get fair access to CPU resources.
CPU Scheduling Algorithm-এর সুবিধা
Better CPU Utilization: CPU-কে সর্বদা ব্যস্ত রাখে এবং efficientভাবে process পরিচালনা করে।
Improved Throughput: নির্দিষ্ট সময়ে বেশি সংখ্যক process সম্পন্ন করতে সাহায্য করে।
Reduced Waiting Time: Ready queue-তে process-এর অপেক্ষার সময় কমায়।
Faster Response Time: User-এর request-এ দ্রুত response দেয়, বিশেষ করে interactive system-এ।
Fair Resource Allocation: সব process-এর মধ্যে CPU resource সমানভাবে বণ্টন নিশ্চিত করে।
Common TCP/UDP Service Names:
TCP services:
• HTTP (Web) – Port 80
• HTTPS – Port 443
• FTP – Port 21
• SMTP – Port 25
• Telnet – Port 23
UDP services:
• DNS – Port 53
• DHCP – Port 67/68
• TFTP – Port 69
• SNMP – Port 161

Network Address Translation
Purpose of Firewall in Computer Network
The main purpose of a firewall is to protect a computer network by monitoring and controlling incoming and outgoing network traffic.
Security: Prevents unauthorized access from external networks.
Traffic Control: Allows or blocks data packets based on predefined rules.
Protection: Protects the system from hackers, malware, and cyber attacks.
Access Management: Controls which users or applications can access the network.
Firewall-এর মূল উদ্দেশ্য
Firewall-এর প্রধান উদ্দেশ্য হলো network-কে সুরক্ষিত রাখা এবং incoming ও outgoing traffic নিয়ন্ত্রণ করা।
Security: বাইরের unauthorized access প্রতিরোধ করে।
Traffic Control: নির্দিষ্ট নিয়ম অনুযায়ী data packet allow বা block করে।
Protection: hacker, malware এবং cyber attack থেকে system-কে রক্ষা করে।
Access Management: কোন user বা application network access করতে পারবে তা নিয়ন্ত্রণ করে।
So, for a 12-port switch:
Collision domains = 12
• Bus Topology
• Star Topology
• Ring Topology
• Mesh Topology
BGP stands for Border Gateway Protocol
The device that operates at the Network Layer (Layer 3) of the OSI model is a Router.
The Round Robin (RR) scheduling algorithm is a Preemptive scheduling algorithm.
Type: It is a preemptive algorithm.
Working: Each process is given a fixed time slice called time quantum.
Preemption: If a process does not finish within its time quantum, it is preempted and moved to the end of the ready queue.
Advantage: Ensures fair CPU allocation among processes.
Round Robin (RR) scheduling algorithm একটি Preemptive scheduling algorithm।
Type: এটি একটি preemptive algorithm।
Working: প্রতিটি process-কে একটি নির্দিষ্ট সময় (time quantum) দেওয়া হয়।
Preemption: যদি process নির্দিষ্ট সময়ে শেষ না হয়, তাহলে তাকে stop করে ready queue-এর শেষে পাঠানো হয়।
Advantage: সব process-এর মধ্যে CPU সমানভাবে ভাগ করে দেয়।
The base of 5th generation computers is Artificial Intelligence (AI).
CIDR (Classless Inter-Domain Routing)
CIDR is a method used in IP addressing that allows flexible allocation of IP addresses instead of fixed classes.
Purpose: To efficiently use IP address space and reduce wastage.
Notation: Written as IP address followed by /prefix (e.g., 192.168.1.0/24).
Working: The prefix indicates the number of bits used for the network portion.
Advantage: Improves routing efficiency and reduces size of routing tables.
CIDR (Classless Inter-Domain Routing)
CIDR হলো IP addressing-এর একটি পদ্ধতি যেখানে fixed class-এর পরিবর্তে flexibleভাবে IP address বরাদ্দ করা হয়।
Purpose: IP address-এর সঠিক ব্যবহার নিশ্চিত করা এবং অপচয় কমানো।
Notation: IP address-এর পরে /prefix দিয়ে লেখা হয় (যেমন 192.168.1.0/24)।
Working: Prefix দ্বারা বোঝায় কতগুলো bit network অংশ হিসেবে ব্যবহৃত হচ্ছে।
Advantage: Routing efficient করে এবং routing table ছোট করে।
ARP (Address Resolution Protocol) is used to map an IP address to its corresponding MAC address in a network.
Main Function: Converts logical IP address into physical MAC address.
Working: When a device wants to send data, it broadcasts an ARP request to find the MAC address of the destination IP.
Response: The device with the matching IP sends back its MAC address (ARP reply).
Usage: Used in local area networks (LAN) for proper data delivery.
ARP (Address Resolution Protocol) network-এ একটি IP address কে তার সংশ্লিষ্ট MAC address-এ রূপান্তর করতে ব্যবহৃত হয়।
Main Function: Logical IP address-কে physical MAC address-এ convert করে।
Working: যখন কোনো device data পাঠাতে চায়, তখন এটি ARP request broadcast করে destination-এর MAC address খুঁজে বের করে।
Response: যেই device-এর IP মিলে যায়, সে তার MAC address পাঠিয়ে ARP reply দেয়।
Usage: এটি LAN-এ data সঠিকভাবে পৌঁছানোর জন্য ব্যবহৃত হয়।
Definition: A process is an independent program in execution; a thread is a smaller unit of a process.
Memory: Each process has its own memory space; threads share the same memory of the process.
Communication: Process communication is slower (IPC required); threads communicate faster as they share memory.
Overhead: Process creation is heavy and time-consuming; thread creation is lightweight and faster.
Execution: Processes run independently; threads run within a process and depend on it.
Example: Opening different applications = processes; multiple tasks inside one application = threads.
Definition: Process হলো একটি independent program যা execute হয়; Thread হলো process-এর ছোট অংশ।
Memory: প্রতিটি process-এর আলাদা memory থাকে; thread একই process-এর memory share করে।
Communication: Process-এর মধ্যে communication ধীর (IPC লাগে); thread দ্রুত communicate করে কারণ তারা memory share করে।
Overhead: Process তৈরি করা heavy এবং সময়সাপেক্ষ; thread তৈরি করা lightweight এবং দ্রুত।
Execution: Process স্বাধীনভাবে চলে; thread process-এর ভিতরে নির্ভরশীলভাবে চলে।
Example: আলাদা application = process; একটি application-এর ভিতরে একাধিক কাজ = thread।
