{"id":3303,"date":"2025-06-06T14:23:23","date_gmt":"2025-06-06T14:23:23","guid":{"rendered":"https:\/\/diznr.com\/?p=3303"},"modified":"2025-06-06T14:23:23","modified_gmt":"2025-06-06T14:23:23","slug":"day-01part-08-operating-system-lecture-for-gate-for-computer-science-attributes-processes-of","status":"publish","type":"post","link":"https:\/\/www.reilsolar.com\/pdf\/day-01part-08-operating-system-lecture-for-gate-for-computer-science-attributes-processes-of\/","title":{"rendered":"Day 01Part 08- Operating system lecture for gate for computer science &#8211; Attributes of Processes."},"content":{"rendered":"<p>Day 01Part 08- Operating system lecture for gate for computer science &#8211; Attributes of Processes.<\/p>\n<p>[fvplayer id=&#8221;344&#8243;]<\/p>\n<h3 data-start=\"0\" data-end=\"73\"><strong data-start=\"4\" data-end=\"71\">\u00a0Attributes of Processes \u2013 Operating System (GATE CS Lecture)<\/strong><\/h3>\n<p data-start=\"75\" data-end=\"254\">A <strong data-start=\"77\" data-end=\"88\">process<\/strong> in an Operating System (OS) is an <strong data-start=\"123\" data-end=\"161\">instance of a program in execution<\/strong>. Every process has certain attributes that help the OS manage and schedule it efficiently.<\/p>\n<h3 data-start=\"261\" data-end=\"292\"><strong data-start=\"264\" data-end=\"290\">\u00a0What is a Process?<\/strong><\/h3>\n<p data-start=\"293\" data-end=\"691\">A <strong data-start=\"295\" data-end=\"306\">process<\/strong> is a program in execution, consisting of:<br data-start=\"348\" data-end=\"351\" \/><strong data-start=\"353\" data-end=\"384\">Program Code (Text Section)<\/strong> \u2013 The instructions to be executed.<br data-start=\"419\" data-end=\"422\" \/><strong data-start=\"424\" data-end=\"448\">Program Counter (PC)<\/strong> \u2013 Stores the next instruction to execute.<br data-start=\"490\" data-end=\"493\" \/><strong data-start=\"495\" data-end=\"504\">Stack<\/strong> \u2013 Contains function calls, return addresses, and local variables.<br data-start=\"570\" data-end=\"573\" \/><strong data-start=\"575\" data-end=\"583\">Heap<\/strong> \u2013 Dynamic memory allocation (e.g., malloc in C).<br data-start=\"632\" data-end=\"635\" \/><strong data-start=\"637\" data-end=\"653\">Data Section<\/strong> \u2013 Global variables and static data.<\/p>\n<h3 data-start=\"698\" data-end=\"734\"><strong data-start=\"701\" data-end=\"732\">\u00a0Attributes of a Process<\/strong><\/h3>\n<p data-start=\"736\" data-end=\"832\">Each process has a <strong data-start=\"755\" data-end=\"783\">unique set of attributes<\/strong> stored in the <strong data-start=\"798\" data-end=\"829\">Process Control Block (PCB)<\/strong>.<\/p>\n<h3 data-start=\"834\" data-end=\"861\"><strong data-start=\"838\" data-end=\"861\">1. Process ID (PID)<\/strong><\/h3>\n<ul data-start=\"862\" data-end=\"965\">\n<li data-start=\"862\" data-end=\"915\">A <strong data-start=\"866\" data-end=\"887\">unique identifier<\/strong> assigned to each process.<\/li>\n<li data-start=\"916\" data-end=\"965\">Used by the OS to track and manage processes.<\/li>\n<\/ul>\n<h3 data-start=\"967\" data-end=\"993\"><strong data-start=\"971\" data-end=\"991\">2. Process State<\/strong><\/h3>\n<p data-start=\"994\" data-end=\"1294\">A process can be in one of the following states:<br data-start=\"1042\" data-end=\"1045\" \/><strong data-start=\"1048\" data-end=\"1055\">New<\/strong> \u2013 Process is being created.<br data-start=\"1083\" data-end=\"1086\" \/><strong data-start=\"1089\" data-end=\"1098\">Ready<\/strong> \u2013 Waiting for CPU time.<br data-start=\"1122\" data-end=\"1125\" \/><strong data-start=\"1128\" data-end=\"1139\">Running<\/strong> \u2013 Currently executing on the CPU.<br data-start=\"1173\" data-end=\"1176\" \/><strong data-start=\"1179\" data-end=\"1200\">Waiting (Blocked)<\/strong> \u2013 Waiting for I\/O or other resources.<br data-start=\"1238\" data-end=\"1241\" \/><strong data-start=\"1244\" data-end=\"1258\">Terminated<\/strong> \u2013 Process has finished execution.<\/p>\n<p data-start=\"1296\" data-end=\"1401\"><strong data-start=\"1299\" data-end=\"1311\">Example:<\/strong> If a process is waiting for input from the keyboard, it moves to the <strong data-start=\"1381\" data-end=\"1392\">Waiting<\/strong> state.<\/p>\n<h3 data-start=\"1408\" data-end=\"1439\"><strong data-start=\"1412\" data-end=\"1439\">3. Program Counter (PC)<\/strong><\/h3>\n<ul data-start=\"1440\" data-end=\"1570\">\n<li data-start=\"1440\" data-end=\"1508\">Holds the <strong data-start=\"1452\" data-end=\"1470\">memory address<\/strong> of the next instruction to execute.<\/li>\n<li data-start=\"1509\" data-end=\"1570\">OS uses it to <strong data-start=\"1525\" data-end=\"1535\">resume<\/strong> a process after an interruption.<\/li>\n<\/ul>\n<h3 data-start=\"1577\" data-end=\"1601\"><strong data-start=\"1581\" data-end=\"1601\">4. CPU Registers<\/strong><\/h3>\n<ul data-start=\"1602\" data-end=\"1792\">\n<li data-start=\"1602\" data-end=\"1673\"><strong data-start=\"1604\" data-end=\"1617\">Includes:<\/strong> General-purpose registers, stack pointers, and flags.<\/li>\n<li data-start=\"1674\" data-end=\"1726\">These store temporary data needed for execution.<\/li>\n<li data-start=\"1727\" data-end=\"1792\">OS saves and restores registers during <strong data-start=\"1768\" data-end=\"1789\">context switching<\/strong>.<\/li>\n<\/ul>\n<h3 data-start=\"1799\" data-end=\"1839\"><strong data-start=\"1803\" data-end=\"1839\">5. Memory Management Information<\/strong><\/h3>\n<ul data-start=\"1840\" data-end=\"2091\">\n<li data-start=\"1840\" data-end=\"1891\">Defines how the process interacts with <strong data-start=\"1881\" data-end=\"1888\">RAM<\/strong>.<\/li>\n<li data-start=\"1892\" data-end=\"2091\">Includes:<br data-start=\"1903\" data-end=\"1906\" \/><strong data-start=\"1910\" data-end=\"1938\">Base and Limit Registers<\/strong> \u2013 Define memory boundaries.<br data-start=\"1966\" data-end=\"1969\" \/><strong data-start=\"1973\" data-end=\"1988\">Page Tables<\/strong> \u2013 Used in virtual memory systems.<br data-start=\"2022\" data-end=\"2025\" \/><strong data-start=\"2029\" data-end=\"2047\">Segment Tables<\/strong> \u2013 Used in segmentation memory management.<\/li>\n<\/ul>\n<p data-start=\"2093\" data-end=\"2211\"><strong data-start=\"2096\" data-end=\"2108\">Example:<\/strong> If a process tries to access memory outside its boundary, the OS generates a <strong data-start=\"2186\" data-end=\"2208\">segmentation fault<\/strong>.<\/p>\n<h3 data-start=\"2218\" data-end=\"2251\"><strong data-start=\"2222\" data-end=\"2251\">6. Accounting Information<\/strong><\/h3>\n<ul data-start=\"2252\" data-end=\"2395\">\n<li data-start=\"2252\" data-end=\"2395\">Stores process statistics like:<br data-start=\"2285\" data-end=\"2288\" \/>\u00a0CPU usage\u00a0<br data-start=\"2303\" data-end=\"2306\" \/>\u00a0Execution time\u00a0<br data-start=\"2326\" data-end=\"2329\" \/>Process priority\u00a0<br data-start=\"2352\" data-end=\"2355\" \/>\u00a0Number of I\/O operations performed<\/li>\n<\/ul>\n<p data-start=\"2397\" data-end=\"2496\"><strong data-start=\"2400\" data-end=\"2412\">Example:<\/strong> The OS uses this data for <strong data-start=\"2439\" data-end=\"2453\">scheduling<\/strong> and <strong data-start=\"2458\" data-end=\"2469\">billing<\/strong> in time-sharing systems.<\/p>\n<h3 data-start=\"2503\" data-end=\"2536\"><strong data-start=\"2507\" data-end=\"2536\">7. I\/O Status Information<\/strong><\/h3>\n<ul data-start=\"2537\" data-end=\"2691\">\n<li data-start=\"2537\" data-end=\"2594\">Tracks the <strong data-start=\"2550\" data-end=\"2571\">files and devices<\/strong> used by the process.<\/li>\n<li data-start=\"2595\" data-end=\"2691\">Includes:<br data-start=\"2606\" data-end=\"2609\" \/>\u00a0List of open files\u00a0<br data-start=\"2634\" data-end=\"2637\" \/>\u00a0I\/O device usage<\/li>\n<li data-start=\"2595\" data-end=\"2691\">\u00a0Network connections<\/li>\n<\/ul>\n<p data-start=\"2693\" data-end=\"2799\"><strong data-start=\"2696\" data-end=\"2708\">Example:<\/strong> If a process is reading a file, it stays in the <strong data-start=\"2757\" data-end=\"2768\">Waiting<\/strong> state until I\/O is complete.<\/p>\n<p data-start=\"2693\" data-end=\"2799\"><strong data-start=\"2809\" data-end=\"2844\">\u00a0Process Control Block (PCB)<\/strong><\/p>\n<p data-start=\"2845\" data-end=\"2948\">All <strong data-start=\"2849\" data-end=\"2871\">process attributes<\/strong> are stored in a data structure called the <strong data-start=\"2914\" data-end=\"2945\">Process Control Block (PCB)<\/strong>.<\/p>\n<table data-start=\"2950\" data-end=\"3403\">\n<thead data-start=\"2950\" data-end=\"2977\">\n<tr data-start=\"2950\" data-end=\"2977\">\n<th data-start=\"2950\" data-end=\"2962\">Attribute<\/th>\n<th data-start=\"2962\" data-end=\"2977\">Description<\/th>\n<\/tr>\n<\/thead>\n<tbody data-start=\"3005\" data-end=\"3403\">\n<tr data-start=\"3005\" data-end=\"3061\">\n<td>Process ID (PID)<\/td>\n<td>Unique identifier for the process<\/td>\n<\/tr>\n<tr data-start=\"3062\" data-end=\"3122\">\n<td>Process State<\/td>\n<td>New, Ready, Running, Waiting, Terminated<\/td>\n<\/tr>\n<tr data-start=\"3123\" data-end=\"3176\">\n<td>Program Counter<\/td>\n<td>Address of the next instruction<\/td>\n<\/tr>\n<tr data-start=\"3177\" data-end=\"3225\">\n<td>CPU Registers<\/td>\n<td>Store temporary process data<\/td>\n<\/tr>\n<tr data-start=\"3226\" data-end=\"3290\">\n<td>Memory Management Info<\/td>\n<td>Page tables, base &amp; limit registers<\/td>\n<\/tr>\n<tr data-start=\"3291\" data-end=\"3350\">\n<td>Accounting Info<\/td>\n<td>CPU time, priority, execution history<\/td>\n<\/tr>\n<tr data-start=\"3351\" data-end=\"3403\">\n<td>I\/O Info<\/td>\n<td>Files and devices used by the process<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p data-start=\"3405\" data-end=\"3473\"><strong data-start=\"3408\" data-end=\"3471\">The PCB is crucial for context switching between processes!<\/strong><\/p>\n<h3 data-start=\"3480\" data-end=\"3500\"><strong data-start=\"3483\" data-end=\"3498\">\u00a0Summary<\/strong><\/h3>\n<p data-start=\"3501\" data-end=\"3778\">\u00a0Every <strong data-start=\"3509\" data-end=\"3520\">process<\/strong> has attributes stored in the <strong data-start=\"3550\" data-end=\"3581\">Process Control Block (PCB)<\/strong>.<br data-start=\"3582\" data-end=\"3585\" \/>\u00a0Key attributes include <strong data-start=\"3610\" data-end=\"3688\">PID, Process State, Program Counter, CPU Registers, and Memory Information<\/strong>.<br data-start=\"3689\" data-end=\"3692\" \/>\u00a0The OS uses these attributes for <strong data-start=\"3727\" data-end=\"3775\">scheduling, execution, and memory management<\/strong>.<\/p>\n<p data-start=\"3780\" data-end=\"3853\" data-is-last-node=\"\" data-is-only-node=\"\">Would you like <strong data-start=\"3795\" data-end=\"3814\">GATE-level MCQs<\/strong> or more <strong data-start=\"3823\" data-end=\"3841\">detailed notes<\/strong> on this?<\/p>\n<h3 data-start=\"3780\" data-end=\"3853\"><a href=\"https:\/\/sriindu.ac.in\/wp-content\/uploads\/2023\/10\/R20CSE2202-OPERATING-SYSTEMS.pdf\" target=\"_blank\" rel=\"noopener\">Day 01Part 08- Operating system lecture for gate for computer science &#8211; Attributes of Processes.<\/a><\/h3>\n<h3 class=\"LC20lb MBeuO DKV0Md\"><a href=\"https:\/\/mrcet.com\/downloads\/digital_notes\/CSE\/II%20Year\/OPERATING%20SYSTEMS%20%20NOTES%20R18.pdf\" target=\"_blank\" rel=\"noopener\">OPERATING SYSTEMS LECTURE NOTES &#8230;<\/a><\/h3>\n<h3 class=\"LC20lb MBeuO DKV0Md\">OPERATING SYSTEM<\/h3>\n<h3 class=\"LC20lb MBeuO DKV0Md\"><a href=\"https:\/\/www.vssut.ac.in\/lecture_notes\/lecture1423726024.pdf\" target=\"_blank\" rel=\"noopener\">Operating System<\/a><\/h3>\n<p>Certainly! Let&#8217;s delve into the <strong>Attributes of Processes<\/strong> in Operating Systems, a fundamental topic for GATE Computer Science aspirants.<\/p>\n<hr \/>\n<h3>\ud83e\udde0 What is a Process?<\/h3>\n<p>A <strong>process<\/strong> is an active instance of a program in execution. It encompasses the program code, its current activity, and the resources allocated to it. Processes are managed by the operating system, which keeps track of their states and resources through a data structure known as the <strong>Process Control Block (PCB)<\/strong>.(Testbook, GeeksforGeeks, Testbook)<\/p>\n<hr \/>\n<h3>\ud83d\udccb Key Attributes of a Process (Stored in PCB)<\/h3>\n<p>The PCB contains essential information that allows the operating system to manage and control processes effectively. Here are the primary attributes:(GeeksforGeeks)<\/p>\n<ol>\n<li><strong>Process ID (PID)<\/strong>: A unique identifier assigned to each process.(GeeksforGeeks)<\/li>\n<li><strong>Process State<\/strong>: Indicates the current status of the process, such as:\n<ul>\n<li>New<\/li>\n<li>Ready<\/li>\n<li>Running<\/li>\n<li>Waiting<\/li>\n<li>Terminated(Wikipedia, GeeksforGeeks, Scribd, YouTube)<\/li>\n<\/ul>\n<\/li>\n<li><strong>Program Counter (PC)<\/strong>: Holds the address of the next instruction to be executed for the process.(Wikipedia)<\/li>\n<li><strong>CPU Registers<\/strong>: Stores the contents of all process-specific registers during execution.(BYJU&#8217;S)<\/li>\n<li><strong>Memory Management Information<\/strong>: Details about memory allocation for the process, including pointers to segment or page tables.<\/li>\n<li><strong>Accounting Information<\/strong>: Includes data like the amount of CPU used, time limits, and job or process numbers.(Wikipedia)<\/li>\n<li><strong>I\/O Status Information<\/strong>: Lists of I\/O devices allocated to the process, open files, and other I\/O-related information.(Wikipedia)<\/li>\n<li><strong>Priority<\/strong>: Determines the scheduling priority of the process.(Naukri)<\/li>\n<li><strong>List of Open Files<\/strong>: Tracks files that the process has opened during its execution.<\/li>\n<li><strong>List of Open Devices<\/strong>: Monitors devices that the process is currently using.(Gate Vidyalay)<\/li>\n<\/ol>\n<p>These attributes are crucial for context switching, allowing the operating system to save the state of a process and resume it later.(GeeksforGeeks)<\/p>\n<hr \/>\n<h3>\ud83d\udd04 Process States and Transitions<\/h3>\n<p>A process undergoes various states during its lifecycle:(GeeksforGeeks)<\/p>\n<ul>\n<li><strong>New<\/strong>: The process is being created.<\/li>\n<li><strong>Ready<\/strong>: The process is ready to run and waiting for CPU allocation.<\/li>\n<li><strong>Running<\/strong>: The process is currently being executed.<\/li>\n<li><strong>Waiting<\/strong>: The process is waiting for some event to occur (e.g., I\/O completion).<\/li>\n<li><strong>Terminated<\/strong>: The process has finished execution.(BYJU&#8217;S)<\/li>\n<\/ul>\n<p>The operating system manages transitions between these states based on scheduling algorithms and resource availability.<\/p>\n<hr \/>\n<h3>\ud83d\udcda Further Reading<\/h3>\n<p>For a more in-depth understanding, you can refer to the following resources:<\/p>\n<ul>\n<li>Process in Operating System &#8211; BYJU&#8217;S<\/li>\n<li>Process Control Block | Process Attributes &#8211; Gate Vidyalay<\/li>\n<li>Process in Operating System | GeeksforGeeks<\/li>\n<\/ul>\n<hr \/>\n<p>If you have any more questions or need further clarification on any topic, feel free to ask!<\/p>\n<h3><a href=\"https:\/\/inf107.telecom-paris.fr\/lectures\/lecture-part3-1-os-intro.pdf\" target=\"_blank\" rel=\"noopener\">Day 01Part 08- Operating system lecture for gate for computer science &#8211; Attributes of Processes.<\/a><\/h3>\n<h3 class=\"LC20lb MBeuO DKV0Md\"><a href=\"https:\/\/www.mbit.edu.in\/wp-content\/uploads\/2020\/05\/Operating_System_Concepts_8th_EditionA4.pdf\" target=\"_blank\" rel=\"noopener\">Operating System Concepts, 8th Edition<\/a><\/h3>\n<h3 class=\"LC20lb MBeuO DKV0Md\"><a href=\"https:\/\/www.recw.ac.in\/v1.8\/wp-content\/uploads\/2021\/07\/OS-UNIT-I.pdf\" target=\"_blank\" rel=\"noopener\">lecture notes on &#8211; operating systems<\/a><\/h3>\n","protected":false},"excerpt":{"rendered":"<p>Day 01Part 08- Operating system lecture for gate for computer science &#8211; Attributes of Processes. [fvplayer id=&#8221;344&#8243;] \u00a0Attributes of Processes \u2013 Operating System (GATE CS Lecture) A process in an Operating System (OS) is an instance of a program in execution. Every process has certain attributes that help the OS manage and schedule it efficiently. [&hellip;]<\/p>\n","protected":false},"author":66,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[78],"tags":[],"class_list":["post-3303","post","type-post","status-publish","format-standard","hentry","category-operating-system"],"_links":{"self":[{"href":"https:\/\/www.reilsolar.com\/pdf\/wp-json\/wp\/v2\/posts\/3303","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.reilsolar.com\/pdf\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.reilsolar.com\/pdf\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.reilsolar.com\/pdf\/wp-json\/wp\/v2\/users\/66"}],"replies":[{"embeddable":true,"href":"https:\/\/www.reilsolar.com\/pdf\/wp-json\/wp\/v2\/comments?post=3303"}],"version-history":[{"count":0,"href":"https:\/\/www.reilsolar.com\/pdf\/wp-json\/wp\/v2\/posts\/3303\/revisions"}],"wp:attachment":[{"href":"https:\/\/www.reilsolar.com\/pdf\/wp-json\/wp\/v2\/media?parent=3303"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.reilsolar.com\/pdf\/wp-json\/wp\/v2\/categories?post=3303"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.reilsolar.com\/pdf\/wp-json\/wp\/v2\/tags?post=3303"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}