operating system software process 4th chapter
operation on process,
cooperating process
inter process communication.
process concept
process scheduling
communication in client and server system
This document provides an overview of Capital One's plans to introduce Hadoop and discusses several proof of concepts (POCs) that could be developed. It summarizes the history and practices of using Hadoop at other companies like LinkedIn, Netflix, and Yahoo. It then outlines possible POCs for Hadoop distributions, ETL/analytics frameworks, performance testing, and developing a scaling layer. The goal is to contribute open source code and help with Capital One's transition to using Hadoop in production.
This document discusses how JRebel can be used with Oracle WebLogic Server to significantly reduce the time it takes for developers to see the effects of code changes ("turnaround time"). It claims JRebel can save up to 21% of development time by eliminating build and redeploy steps during the development cycle. JRebel works at the JVM level to allow for near instantaneous reloading of class files and supports changes to Java code as well as various frameworks. When used with WebLogic Server, it provides a more productive environment for developers to code, test, and release applications faster.
Copper: A high performance workflow enginedmoebius
COPPER (COmmon Persistable Process Excecution Runtime) is an open-source high performance workflow engine, that persists the workflow instances (process) state into a database. So there is no limit to the runtime of a process. It can run for weeks, month or years. In addition, this strategy leads to crash safety.
A workflow can describe business processes for example, however any kind of use case is supported. The "modelling" language is Java, that has several advantages:
* with COPPER any Java developer is able to design workflows
* all Java developers like to use Java
* many Java libs can be integrated within COPPER
* many Java tools, like IDEs, can be used
* with COPPER your productivity will be increased when using a workflow engine
* using Java solutions will protect your investment
* COPPER is OpenSource under Apache Licence 2.0
Please visit copper-engine.org for details.
This document summarizes a research paper that proposes a new approach called BinatePacking for improving digital-to-analog converters. BinatePacking aims to address issues with comparing write-ahead logging and memory bus performance using binary packing. The paper presents simulation results that show BinatePacking can improve average hit ratio and reduce response time compared to other approaches. It discusses experiments conducted to evaluate BinatePacking's performance on desktop machines and in a 100-node network. The results showed BinatePacking produced smoother, more reproducible performance than emulating components.
Explorations of the three legged performance stoolC4Media
Video and slides synchronized, mp3 and slide download available at URL http://bit.ly/1QCnPoG.
Charlie Hunt explains the three performance attributes of throughput, latency and (memory) footprint and how each of these are influenced in terms of JVM garbage collection. Hunt also shows an example of the amount of work involved to realize an improvement in all three performance attributes. Filmed at qconsf.com.
Charlie Hunt is currently a JVM Engineer at Oracle leading a variety of JVM projects. He is also the lead author of Java Performance, and co-author of the Java Performance Companion, which is due to be available in early 2016.
The document discusses several key process scheduling policies and algorithms:
1. Maximum throughput, minimize response time, and other policies aim to optimize different performance metrics like job completion time.
2. Common scheduling algorithms include first come first served (FCFS), shortest job next (SJN), priority scheduling, round robin, and multilevel queues. Each has advantages for different workload types.
3. The document also covers process synchronization challenges like deadlock and livelock that can occur when processes contend for shared resources in certain ordering. Methods to avoid or recover from such issues are important for system design.
This document provides an overview of Capital One's plans to introduce Hadoop and discusses several proof of concepts (POCs) that could be developed. It summarizes the history and practices of using Hadoop at other companies like LinkedIn, Netflix, and Yahoo. It then outlines possible POCs for Hadoop distributions, ETL/analytics frameworks, performance testing, and developing a scaling layer. The goal is to contribute open source code and help with Capital One's transition to using Hadoop in production.
This document discusses how JRebel can be used with Oracle WebLogic Server to significantly reduce the time it takes for developers to see the effects of code changes ("turnaround time"). It claims JRebel can save up to 21% of development time by eliminating build and redeploy steps during the development cycle. JRebel works at the JVM level to allow for near instantaneous reloading of class files and supports changes to Java code as well as various frameworks. When used with WebLogic Server, it provides a more productive environment for developers to code, test, and release applications faster.
Copper: A high performance workflow enginedmoebius
COPPER (COmmon Persistable Process Excecution Runtime) is an open-source high performance workflow engine, that persists the workflow instances (process) state into a database. So there is no limit to the runtime of a process. It can run for weeks, month or years. In addition, this strategy leads to crash safety.
A workflow can describe business processes for example, however any kind of use case is supported. The "modelling" language is Java, that has several advantages:
* with COPPER any Java developer is able to design workflows
* all Java developers like to use Java
* many Java libs can be integrated within COPPER
* many Java tools, like IDEs, can be used
* with COPPER your productivity will be increased when using a workflow engine
* using Java solutions will protect your investment
* COPPER is OpenSource under Apache Licence 2.0
Please visit copper-engine.org for details.
This document summarizes a research paper that proposes a new approach called BinatePacking for improving digital-to-analog converters. BinatePacking aims to address issues with comparing write-ahead logging and memory bus performance using binary packing. The paper presents simulation results that show BinatePacking can improve average hit ratio and reduce response time compared to other approaches. It discusses experiments conducted to evaluate BinatePacking's performance on desktop machines and in a 100-node network. The results showed BinatePacking produced smoother, more reproducible performance than emulating components.
Explorations of the three legged performance stoolC4Media
Video and slides synchronized, mp3 and slide download available at URL http://bit.ly/1QCnPoG.
Charlie Hunt explains the three performance attributes of throughput, latency and (memory) footprint and how each of these are influenced in terms of JVM garbage collection. Hunt also shows an example of the amount of work involved to realize an improvement in all three performance attributes. Filmed at qconsf.com.
Charlie Hunt is currently a JVM Engineer at Oracle leading a variety of JVM projects. He is also the lead author of Java Performance, and co-author of the Java Performance Companion, which is due to be available in early 2016.
The document discusses several key process scheduling policies and algorithms:
1. Maximum throughput, minimize response time, and other policies aim to optimize different performance metrics like job completion time.
2. Common scheduling algorithms include first come first served (FCFS), shortest job next (SJN), priority scheduling, round robin, and multilevel queues. Each has advantages for different workload types.
3. The document also covers process synchronization challenges like deadlock and livelock that can occur when processes contend for shared resources in certain ordering. Methods to avoid or recover from such issues are important for system design.
The document summarizes key concepts related to processes in operating systems, including:
1) A process includes a program counter, stack, data section, heap, text, and address space.
2) Processes transition between states like running, ready, waiting, and terminated.
3) A process control block contains information for each process like state, scheduling info, and I/O status.
4) Schedulers select which process runs on the CPU and move processes between queues like ready and device queues.
Maximum CPU utilization obtained with multiprogramming
CPU–I/O Burst Cycle – Process execution consists of a cycle of CPU execution and I/O wait
CPU burst followed by I/O burst
CPU burst distribution is of main concern
This document discusses Java and multithreading. It explores core Java and J2SE in relation to multithreading and threading. Keywords include Java, Core Java, J2SE, Multithreading, POSIX and Threading.
The document discusses processes and process scheduling in an operating system. It covers key concepts like process state, process control blocks, CPU scheduling, and process synchronization techniques like cooperating processes and interprocess communication. Process scheduling involves allocating processes between ready, waiting, running and terminated states using schedulers like long-term and short-term schedulers. Context switching and process creation/termination are also summarized.
This document discusses processes and process states in operating systems. It defines a process as a program in execution that can exist in different states. The main states are new, ready, running, blocked, and terminated. A process can transition between these states, such as moving from ready to running when assigned CPU resources or from running to blocked when waiting for a required resource. An additional suspended state is used when a process is swapped out of memory. The document provides detailed descriptions of each state and the transitions between them.
The document provides an overview of Java 2 Platform, Micro Edition (J2ME):
J2ME is a Java platform for resource-constrained devices. It defines configurations like CLDC for very limited devices and CDC for more capable devices, as well as profiles like MIDP that add functionality. MIDP targets mobile information devices and defines APIs for user interfaces, storage, and networking. Developing for J2ME requires choosing a configuration and profile, then building a MIDlet application within their constraints.
The document provides an overview of the role and responsibilities of a database administrator (DBA). It discusses that a DBA supervises databases and database management systems to ensure availability. Key responsibilities include database security, monitoring, backup/recovery, and performance tuning. DBAs must have both technical skills and knowledge of database platforms. While important, the DBA role is challenging as it involves being available to resolve various technical issues at any time from different stakeholders. The document also provides salary data for DBA roles from an external source.
For Complete Learning: http://www.thelearnet.com/
Overview
Multithreading Models
Threading Issues
Pthreads
Solaris 2 Threads
Windows 2000 Threads
Linux Threads
Java Threads
4 Statistics of Successfull General Digital Marketingpromotion dmp
This list of 4 strategies would tell you the different ways you can use the digital medium to popularize and drive conversions for your startup or business. We have technology that allows people to really maintain rich connections with much larger numbers of people which help in digital marketing. Visit Us :- http://digitalmarketingprofs.in/
Data and insights about influencer marketing and content marketing in the United States and in Canada. Influencer marketing stats from the perspective of the marketer, creator and consumer.
The document discusses process scheduling and the five states a process can be in: new, ready, running, waiting, and terminated. It explains that scheduling is the arrangement of processes in execution order and involves assigning processes to a processor based on their state. The goal of scheduling is good throughput, CPU utilization, turnaround time, waiting time, and response time.
Interrupts allow input/output devices to alert the processor when they are ready. When an interrupt request occurs, the processor saves its context and jumps to an interrupt service routine. It then acknowledges the interrupt and restores its context before returning to the original instruction. Processors have mechanisms for prioritizing interrupts and enabling/disabling them to avoid infinite loops or unintended requests.
Operating system - Process and its conceptsKaran Thakkar
This presentation gives an overview of Process concepts in Operating System. The presentation aims at alleviating most of the overheads while understanding the process concept in operating system. this tailor made presentation will help individuals to understand the overall meaning of process and its underlying concepts used in an operating system.
This document provides an overview of interrupts in the 8086 microprocessor. It defines an interrupt as an event that breaks normal program execution to service an interrupt request. Interrupts can be triggered by hardware signals from peripherals or software interrupt instructions. The 8086 supports hardware interrupts on the INTR and NMI pins, which can be maskable or non-maskable. It also supports 256 software interrupt types. Common uses of interrupts include servicing devices like keyboards and handling exceptions.
The document discusses CPU scheduling in Windows operating systems. It covers scheduling algorithms used in different versions of Windows like Windows 3.1x, 95, NT, XP, 7, and 8. The key points discussed are:
- Windows uses a pre-emptive, priority-based scheduler with 32 priority levels and multi-level queues.
- The dispatcher determines thread execution order based on priority class and relative priority within class.
- Interactive threads get priority boosts after waits to improve response time.
- The foreground process in Windows XP gets preferential treatment over background processes.
- Later versions introduced improvements like user-mode scheduling and CPU cycle-based scheduling.
This document discusses processes and threads in Perl programming. It defines a process as an instance of a running program, while a thread is a flow of control through a program with a single execution point. Multiple threads can run within a single process and share resources, while processes run independently. The document compares processes and threads, and covers creating and managing threads, sharing data between threads, synchronization, and inter-process communication techniques in Perl like fork, pipe, and open.
Interrupts is a signal from a device attached to a computer or from a program within the computer which causes the main program that operates the computer to stop and figure out what to do next.
The document summarizes key concepts about processes from an operating systems textbook. It discusses process concepts like process state, process control blocks (PCB), and process scheduling queues. It also covers process creation, termination, and cooperation between processes. Interprocess communication methods like message passing and synchronization are presented. The document concludes with an overview of client-server communication techniques using sockets, remote procedure calls, and remote method invocation.
This document discusses key concepts related to processes in operating systems, including:
- Processes have states like ready, running, waiting, and terminated as they execute.
- A process control block (PCB) stores process state and scheduling information.
- Process scheduling involves long-term, short-term, and sometimes medium-term schedulers to allocate processes to the CPU.
- Context switching saves and restores process states when the CPU switches between processes. Inter-process communication allows processes to synchronize and exchange messages.
The document summarizes key concepts related to processes in operating systems, including:
1) A process includes a program counter, stack, data section, heap, text, and address space.
2) Processes transition between states like running, ready, waiting, and terminated.
3) A process control block contains information for each process like state, scheduling info, and I/O status.
4) Schedulers select which process runs on the CPU and move processes between queues like ready and device queues.
Maximum CPU utilization obtained with multiprogramming
CPU–I/O Burst Cycle – Process execution consists of a cycle of CPU execution and I/O wait
CPU burst followed by I/O burst
CPU burst distribution is of main concern
This document discusses Java and multithreading. It explores core Java and J2SE in relation to multithreading and threading. Keywords include Java, Core Java, J2SE, Multithreading, POSIX and Threading.
The document discusses processes and process scheduling in an operating system. It covers key concepts like process state, process control blocks, CPU scheduling, and process synchronization techniques like cooperating processes and interprocess communication. Process scheduling involves allocating processes between ready, waiting, running and terminated states using schedulers like long-term and short-term schedulers. Context switching and process creation/termination are also summarized.
This document discusses processes and process states in operating systems. It defines a process as a program in execution that can exist in different states. The main states are new, ready, running, blocked, and terminated. A process can transition between these states, such as moving from ready to running when assigned CPU resources or from running to blocked when waiting for a required resource. An additional suspended state is used when a process is swapped out of memory. The document provides detailed descriptions of each state and the transitions between them.
The document provides an overview of Java 2 Platform, Micro Edition (J2ME):
J2ME is a Java platform for resource-constrained devices. It defines configurations like CLDC for very limited devices and CDC for more capable devices, as well as profiles like MIDP that add functionality. MIDP targets mobile information devices and defines APIs for user interfaces, storage, and networking. Developing for J2ME requires choosing a configuration and profile, then building a MIDlet application within their constraints.
The document provides an overview of the role and responsibilities of a database administrator (DBA). It discusses that a DBA supervises databases and database management systems to ensure availability. Key responsibilities include database security, monitoring, backup/recovery, and performance tuning. DBAs must have both technical skills and knowledge of database platforms. While important, the DBA role is challenging as it involves being available to resolve various technical issues at any time from different stakeholders. The document also provides salary data for DBA roles from an external source.
For Complete Learning: http://www.thelearnet.com/
Overview
Multithreading Models
Threading Issues
Pthreads
Solaris 2 Threads
Windows 2000 Threads
Linux Threads
Java Threads
4 Statistics of Successfull General Digital Marketingpromotion dmp
This list of 4 strategies would tell you the different ways you can use the digital medium to popularize and drive conversions for your startup or business. We have technology that allows people to really maintain rich connections with much larger numbers of people which help in digital marketing. Visit Us :- http://digitalmarketingprofs.in/
Data and insights about influencer marketing and content marketing in the United States and in Canada. Influencer marketing stats from the perspective of the marketer, creator and consumer.
The document discusses process scheduling and the five states a process can be in: new, ready, running, waiting, and terminated. It explains that scheduling is the arrangement of processes in execution order and involves assigning processes to a processor based on their state. The goal of scheduling is good throughput, CPU utilization, turnaround time, waiting time, and response time.
Interrupts allow input/output devices to alert the processor when they are ready. When an interrupt request occurs, the processor saves its context and jumps to an interrupt service routine. It then acknowledges the interrupt and restores its context before returning to the original instruction. Processors have mechanisms for prioritizing interrupts and enabling/disabling them to avoid infinite loops or unintended requests.
Operating system - Process and its conceptsKaran Thakkar
This presentation gives an overview of Process concepts in Operating System. The presentation aims at alleviating most of the overheads while understanding the process concept in operating system. this tailor made presentation will help individuals to understand the overall meaning of process and its underlying concepts used in an operating system.
This document provides an overview of interrupts in the 8086 microprocessor. It defines an interrupt as an event that breaks normal program execution to service an interrupt request. Interrupts can be triggered by hardware signals from peripherals or software interrupt instructions. The 8086 supports hardware interrupts on the INTR and NMI pins, which can be maskable or non-maskable. It also supports 256 software interrupt types. Common uses of interrupts include servicing devices like keyboards and handling exceptions.
The document discusses CPU scheduling in Windows operating systems. It covers scheduling algorithms used in different versions of Windows like Windows 3.1x, 95, NT, XP, 7, and 8. The key points discussed are:
- Windows uses a pre-emptive, priority-based scheduler with 32 priority levels and multi-level queues.
- The dispatcher determines thread execution order based on priority class and relative priority within class.
- Interactive threads get priority boosts after waits to improve response time.
- The foreground process in Windows XP gets preferential treatment over background processes.
- Later versions introduced improvements like user-mode scheduling and CPU cycle-based scheduling.
This document discusses processes and threads in Perl programming. It defines a process as an instance of a running program, while a thread is a flow of control through a program with a single execution point. Multiple threads can run within a single process and share resources, while processes run independently. The document compares processes and threads, and covers creating and managing threads, sharing data between threads, synchronization, and inter-process communication techniques in Perl like fork, pipe, and open.
Interrupts is a signal from a device attached to a computer or from a program within the computer which causes the main program that operates the computer to stop and figure out what to do next.
The document summarizes key concepts about processes from an operating systems textbook. It discusses process concepts like process state, process control blocks (PCB), and process scheduling queues. It also covers process creation, termination, and cooperation between processes. Interprocess communication methods like message passing and synchronization are presented. The document concludes with an overview of client-server communication techniques using sockets, remote procedure calls, and remote method invocation.
This document discusses key concepts related to processes in operating systems, including:
- Processes have states like ready, running, waiting, and terminated as they execute.
- A process control block (PCB) stores process state and scheduling information.
- Process scheduling involves long-term, short-term, and sometimes medium-term schedulers to allocate processes to the CPU.
- Context switching saves and restores process states when the CPU switches between processes. Inter-process communication allows processes to synchronize and exchange messages.
Senthilkanth,MCA..
The following ppt's full topic covers Operating System for BSc CS, BCA, MSc CS, MCA students..
1.Introduction
2.OS Structures
3.Process
4.Threads
5.CPU Scheduling
6.Process Synchronization
7.Dead Locks
8.Memory Management
9.Virtual Memory
10.File system Interface
11.File system implementation
12.Mass Storage System
13.IO Systems
14.Protection
15.Security
16.Distributed System Structure
17.Distributed File System
18.Distributed Co Ordination
19.Real Time System
20.Multimedia Systems
21.Linux
22.Windows
The document discusses processes and threads from the Operating System Concepts 8th Edition textbook. It defines a process as a program in execution that includes a program counter, stack, and data section. Processes can be in different states like running, waiting, ready, and terminated. A process control block (PCB) stores the state and attributes of a process. When switching between processes, the CPU performs a context switch by saving the state of one process and loading another. Process creation involves forking new processes from a parent process. Interprocess communication can occur through shared memory or message passing. Threads allow multi-tasking within a process.
This document discusses process management in operating systems. It defines a process as a program in execution. Processes can be either CPU-bound or I/O-bound. The operating system manages processes through functions like creation, scheduling, and context switching. Processes exist in various states like running, ready, waiting, and terminated. The CPU utilizes scheduling algorithms like first come first served and round robin to allocate processes to the CPU. Processes communicate through interprocess communication mechanisms like message passing and shared memory.
Module-6 process managedf;jsovj;ksdv;sdkvnksdnvldknvlkdfsment.pptKAnurag2
This document discusses operating system concepts related to processes and process management. It covers process concepts like process state, process control blocks (PCB), and context switching. It also discusses process scheduling queues, schedulers, process creation and termination, and interprocess communication methods like message passing and shared memory. Key concepts covered include threads, synchronization methods for message passing, and benefits of multithreading.
The document describes several execution models and design patterns for workflows in K2, including sequential, parallel, hybrid, and parent-child process execution. It also covers rework, looping, N-level approval, and spider patterns. The sequential model runs tasks one after another, while parallel allows multiple activities simultaneously. Parent-child process allows one workflow to start another, either synchronously or asynchronously. Design patterns offer solutions for processes with unknown rework steps, indefinite loops, multiple approval levels, or complex ad-hoc flows.
The document discusses processes and process scheduling in operating systems. It defines a process as a program in execution that changes state as it runs. Process information is stored in a process control block. Processes move between ready, running, waiting, and terminated states. The operating system uses long-term and short-term schedulers to select which processes to move between queues like ready and device queues. Context switching occurs when the CPU switches between processes. Processes can cooperate through communication and synchronization using message passing between mailboxes. Client-server systems use sockets and remote procedure calls to enable remote communication.
The document discusses processes and process scheduling in operating systems. It defines a process as a program in execution that changes state as it runs. Process information is stored in a process control block. Processes move between ready, running, waiting, and terminated states. The operating system uses long-term and short-term schedulers to select which processes to move between queues like ready and device queues. Context switching occurs when the CPU switches between processes. Processes can cooperate through communication and synchronization using message passing or shared memory.
The document discusses processes and process scheduling in operating systems. It defines a process as a program in execution that changes state as it runs. Process information is stored in a process control block. Processes move between ready, running, waiting, and terminated states. The operating system uses long-term and short-term schedulers to select which processes to move between queues like ready and device queues. Context switching occurs when the CPU switches between processes. Processes can cooperate through communication and synchronization using message passing or shared memory.
The document discusses processes and process scheduling in operating systems. It defines a process as a program in execution that changes state as it runs. Process information is stored in a process control block. Processes move between ready, running, waiting, and terminated states. The operating system uses long-term and short-term schedulers to select which processes to move between queues like ready and device queues. Context switching occurs when the CPU switches between processes. Processes can cooperate through communication and synchronization using message passing or shared memory.
operating system
basic concept of c p u scheduling
scheduling critaria
scheduling algorithms
multi processor scheduling
real time scheduling
Thread scheduling
operating system Example
Java thread scheduling
Algorithms Evolution
The document discusses processes and interprocess communication. It defines a process as a program in execution that consists of code, activity, stack, data, and heap. Processes transition between states like ready, running, waiting, and terminated. The operating system uses schedulers to manage processes and allocate CPU time. Processes can create child processes and communicate using shared memory or message passing. Pipes and sockets provide standardized methods of interprocess communication.
Big Data Testing Approach - Rohit KharabeROHIT KHARABE
This presentation speaks about -
1) How to perform big data testing
2) Tools that can be used for testing
3) Different validation stages involved
4) Performance testing
The document discusses embedded product development life cycle (EDLC) which involves analysis, design, and implementation approaches for developing embedded systems. It describes the purposes of using EDLC which includes understanding the scope and complexity of embedded system development and defining interactions between project teams. The document also defines key terms related to embedded system development like system testing, integration testing, computational models, and real-time operating systems.
A system consists of processes that execute system code or user code. An operating system makes a computer more productive by switching the CPU between processes. A process is a program in execution that has a program counter, stack, data section, and state. The operating system manages processes using process control blocks and by moving processes between scheduling queues. Context switching allows the CPU to save and load process states when switching between processes.
This document discusses process management in operating systems. It covers topics such as what a process is, process states, process scheduling, and interprocess communication. A key point is that the operating system must manage resources and synchronize processes to prevent race conditions and deadlocks. Process management involves creating, scheduling, and terminating processes, as well as techniques for process synchronization like semaphores.
This document discusses process management in operating systems. It defines processes and describes the key components of a process, including program code, data, stack, and process state. Each process is represented by a process control block (PCB) that contains the process state, CPU registers, scheduling information, memory management information, and I/O status. Processes can be created, terminated, and communicate through interprocess communication (IPC). Context switching allows the CPU to rapidly switch between running processes.
This document discusses process management in operating systems. It defines a process as a program in execution. Processes have multiple parts including code, stack, data section, and heap. Each process is represented by a process control block that stores process state and accounting information. Processes transition between states like ready, running, waiting, and terminated. The operating system uses schedulers to manage processes and move them between queues. It also describes how processes are created, communicate through interprocess communication, and terminated.
Chapter wise All Notes of First year Basic Civil Engineering.pptxDenish Jangid
Chapter wise All Notes of First year Basic Civil Engineering
Syllabus
Chapter-1
Introduction to objective, scope and outcome the subject
Chapter 2
Introduction: Scope and Specialization of Civil Engineering, Role of civil Engineer in Society, Impact of infrastructural development on economy of country.
Chapter 3
Surveying: Object Principles & Types of Surveying; Site Plans, Plans & Maps; Scales & Unit of different Measurements.
Linear Measurements: Instruments used. Linear Measurement by Tape, Ranging out Survey Lines and overcoming Obstructions; Measurements on sloping ground; Tape corrections, conventional symbols. Angular Measurements: Instruments used; Introduction to Compass Surveying, Bearings and Longitude & Latitude of a Line, Introduction to total station.
Levelling: Instrument used Object of levelling, Methods of levelling in brief, and Contour maps.
Chapter 4
Buildings: Selection of site for Buildings, Layout of Building Plan, Types of buildings, Plinth area, carpet area, floor space index, Introduction to building byelaws, concept of sun light & ventilation. Components of Buildings & their functions, Basic concept of R.C.C., Introduction to types of foundation
Chapter 5
Transportation: Introduction to Transportation Engineering; Traffic and Road Safety: Types and Characteristics of Various Modes of Transportation; Various Road Traffic Signs, Causes of Accidents and Road Safety Measures.
Chapter 6
Environmental Engineering: Environmental Pollution, Environmental Acts and Regulations, Functional Concepts of Ecology, Basics of Species, Biodiversity, Ecosystem, Hydrological Cycle; Chemical Cycles: Carbon, Nitrogen & Phosphorus; Energy Flow in Ecosystems.
Water Pollution: Water Quality standards, Introduction to Treatment & Disposal of Waste Water. Reuse and Saving of Water, Rain Water Harvesting. Solid Waste Management: Classification of Solid Waste, Collection, Transportation and Disposal of Solid. Recycling of Solid Waste: Energy Recovery, Sanitary Landfill, On-Site Sanitation. Air & Noise Pollution: Primary and Secondary air pollutants, Harmful effects of Air Pollution, Control of Air Pollution. . Noise Pollution Harmful Effects of noise pollution, control of noise pollution, Global warming & Climate Change, Ozone depletion, Greenhouse effect
Text Books:
1. Palancharmy, Basic Civil Engineering, McGraw Hill publishers.
2. Satheesh Gopi, Basic Civil Engineering, Pearson Publishers.
3. Ketki Rangwala Dalal, Essentials of Civil Engineering, Charotar Publishing House.
4. BCP, Surveying volume 1
This presentation was provided by Rebecca Benner, Ph.D., of the American Society of Anesthesiologists, for the second session of NISO's 2024 Training Series "DEIA in the Scholarly Landscape." Session Two: 'Expanding Pathways to Publishing Careers,' was held June 13, 2024.
Elevate Your Nonprofit's Online Presence_ A Guide to Effective SEO Strategies...TechSoup
Whether you're new to SEO or looking to refine your existing strategies, this webinar will provide you with actionable insights and practical tips to elevate your nonprofit's online presence.
Andreas Schleicher presents PISA 2022 Volume III - Creative Thinking - 18 Jun...EduSkills OECD
Andreas Schleicher, Director of Education and Skills at the OECD presents at the launch of PISA 2022 Volume III - Creative Minds, Creative Schools on 18 June 2024.
This document provides an overview of wound healing, its functions, stages, mechanisms, factors affecting it, and complications.
A wound is a break in the integrity of the skin or tissues, which may be associated with disruption of the structure and function.
Healing is the body’s response to injury in an attempt to restore normal structure and functions.
Healing can occur in two ways: Regeneration and Repair
There are 4 phases of wound healing: hemostasis, inflammation, proliferation, and remodeling. This document also describes the mechanism of wound healing. Factors that affect healing include infection, uncontrolled diabetes, poor nutrition, age, anemia, the presence of foreign bodies, etc.
Complications of wound healing like infection, hyperpigmentation of scar, contractures, and keloid formation.
How to Setup Warehouse & Location in Odoo 17 InventoryCeline George
In this slide, we'll explore how to set up warehouses and locations in Odoo 17 Inventory. This will help us manage our stock effectively, track inventory levels, and streamline warehouse operations.
Temple of Asclepius in Thrace. Excavation resultsKrassimira Luka
The temple and the sanctuary around were dedicated to Asklepios Zmidrenus. This name has been known since 1875 when an inscription dedicated to him was discovered in Rome. The inscription is dated in 227 AD and was left by soldiers originating from the city of Philippopolis (modern Plovdiv).
1. 4.1 Silberschatz, Galvin and GagneOperating System Concepts with Java
Chapter 4: ProcessesChapter 4: Processes
Process Concept
Process Scheduling
Operations on Processes
Cooperating Processes
Interprocess Communication
Communication in Client-Server Systems
2. 4.2 Silberschatz, Galvin and GagneOperating System Concepts with Java
Process ConceptProcess Concept
An operating system executes a variety of programs:
Batch system – jobs
Time-shared systems – user programs or tasks
We will use the terms job and process almost
interchangeably
Process – a program in execution; process execution
must progress in sequential fashion
A process includes:
program counter
Stack(Contains temporary data, such method parameters,
return address and local variables)
data section(Contains Global variables)
3. 4.3 Silberschatz, Galvin and GagneOperating System Concepts with Java
Process StateProcess State
As a process executes, it changes state
new: The process is being created
ready: The process is waiting to be assigned to a process
running: Instructions are being executed
waiting: The process is waiting for some event to occur
terminated: The process has finished execution
4. 4.4 Silberschatz, Galvin and GagneOperating System Concepts with Java
Diagram of Process StateDiagram of Process State
5. 4.5 Silberschatz, Galvin and GagneOperating System Concepts with Java
Process Control Block (PCB)Process Control Block (PCB)
Each process is represented in the operating system by a
PCB. Information associated with each process
Process state (ready, running, waiting etc.)
Program counter(indicate the address of the next ins.)
CPU registers(accumulators, index register, stack pointer)
CPU scheduling information(process priority)
Memory-management information(Base and limit register)
Accounting information(amount of CPU time used, time
limit etc.)
I/O status information(I/O devices allocated to this
process)
6. 4.6 Silberschatz, Galvin and GagneOperating System Concepts with Java
Process Control Block (PCB)Process Control Block (PCB)
7. 4.7 Silberschatz, Galvin and GagneOperating System Concepts with Java
CPU Switch From Process toCPU Switch From Process to
ProcessProcess
8. 4.8 Silberschatz, Galvin and GagneOperating System Concepts with Java
PROCESS SCHEDULINGPROCESS SCHEDULING
Process Scheduling QueuesProcess Scheduling Queues
A process resides in different queues during his life cycle:
Job queue – set of all processes in the system
Ready queue – set of all processes residing in main memory,
ready and waiting to execute
Device queues – set of processes waiting for an I/O device
Process migration between the various queues
9. 4.9 Silberschatz, Galvin and GagneOperating System Concepts with Java
Representation of ProcessRepresentation of Process
SchedulingScheduling
10. 4.10 Silberschatz, Galvin and GagneOperating System Concepts with Java
Cont.Cont.
• The process could issue an I/O request, and then be placed in an I/O
queue.
•The process could create a new subprocess and wait for its termination.
•The process could be removed forcibly from the CPU as a result of an
interrupt, and be put back in the ready queues.
11. 4.11 Silberschatz, Galvin and GagneOperating System Concepts with Java
SchedulersSchedulers
Long-term scheduler (or job scheduler) – selects which new
processes should be brought into the ready queue when space
is available
Short-term scheduler (or CPU scheduler) – selects which
process should be executed next and allocates CPU
Medium-term scheduler – Selects a partially run and swapped
out process to be brought in the memory and put in the ready
queue
12. 4.12 Silberschatz, Galvin and GagneOperating System Concepts with Java
Addition of Medium Term SchedulingAddition of Medium Term Scheduling
13. 4.13 Silberschatz, Galvin and GagneOperating System Concepts with Java
Schedulers (Cont.)Schedulers (Cont.)
Short-term scheduler is invoked very frequently (milliseconds) ⇒
(must be fast)
Long-term scheduler is invoked very infrequently (seconds,
minutes) ⇒ (may be slow)
The long-term scheduler controls the degree of
multiprogramming
Processes can be described as either:
I/O-bound process – spends more time doing I/O than computations,
many short CPU bursts
CPU-bound process – spends more time doing computations; few
very long CPU bursts
14. 4.14 Silberschatz, Galvin and GagneOperating System Concepts with Java
Context SwitchContext Switch
When CPU switches to another process, the system must save
the state of the old process and load the saved state for the new
process
Context-switch time is overhead; the system does no useful work
while switching
Time dependent on hardware support
15. 4.15 Silberschatz, Galvin and GagneOperating System Concepts with Java
OPERATIONS ON PROCESSESOPERATIONS ON PROCESSES
Process CreationProcess Creation
Parent process create children processes, which, in turn create
other processes, forming a tree of processes
Resource sharing
Parent and children share all resources
Children share subset of parent’s resources
Parent and child share no resources
Execution
Parent and children execute concurrently
Parent waits until children terminate
16. 4.16 Silberschatz, Galvin and GagneOperating System Concepts with Java
Process Creation (Cont.)Process Creation (Cont.)
Address space
Child duplicate of parent
Child has a program loaded into it
UNIX examples
fork system call creates new process
exec system call used after a fork to replace the process’ memory
space with a new program
17. 4.17 Silberschatz, Galvin and GagneOperating System Concepts with Java
Processes Tree on a UNIXProcesses Tree on a UNIX
SystemSystem
18. 4.18 Silberschatz, Galvin and GagneOperating System Concepts with Java
Process TerminationProcess Termination
Process executes last statement and asks the operating system
to delete it (exit)
Output data from child to parent (via wait)
Process’ resources are deallocated by operating system
Parent may terminate execution of children processes (abort)
Child has exceeded allocated resources
Task assigned to child is no longer required
If parent is exiting
Some operating system do not allow child to continue if its parent
terminates
– All children terminated - cascading termination
19. 4.19 Silberschatz, Galvin and GagneOperating System Concepts with Java
Cooperating ProcessesCooperating Processes
Independent process cannot affect or be affected by the
execution of another process
Cooperating process can affect or be affected by the execution
of another process
Advantages of process cooperation
Information sharing
Computation speed-up
Modularity
Convenience
20. 4.20 Silberschatz, Galvin and GagneOperating System Concepts with Java
Cont.Cont.
Several users may be interested in the same piece of information
(Shared files), we must provide an environment to allow
concurrent access to these types of resources.
When we break up a task into subtasks, each of which can be
executed in parallel with the other, causes the overall
computation speedup.
When we want to construct the system in a modular fashion, we
divide the system into separate processes or threads.
Even an individual user may have many tasks on which to work
at one time. For instance, a user mat be editing , printing, and
compiling in parallel.
21. 4.21 Silberschatz, Galvin and GagneOperating System Concepts with Java
Producer-Consumer ProblemProducer-Consumer Problem
Paradigm for cooperating processes, producer process produces
information that is consumed by a consumer process
unbounded-buffer places no practical limit on the size of the buffer
bounded-buffer assumes that there is a fixed buffer size
22. 4.22 Silberschatz, Galvin and GagneOperating System Concepts with Java
Bounded-Buffer – Insert() MethodBounded-Buffer – Insert() Method
public void insert(Object item) {
while (count == BUFFER SIZE)
; // do nothing -- no free buffers
// add an item to the buffer
++count;
buffer[in] = item;
in = (in + 1) % BUFFER SIZE;
}
23. 4.23 Silberschatz, Galvin and GagneOperating System Concepts with Java
Bounded Buffer – Remove() MethodBounded Buffer – Remove() Method
public Object remove() {
Object item;
while (count == 0)
; // do nothing -- nothing to
consume
// remove an item from the buffer
--count;
item = buffer[out];
out = (out + 1) % BUFFER SIZE;
return item;
}
24. 4.24 Silberschatz, Galvin and GagneOperating System Concepts with Java
Interprocess Communication (IPC)Interprocess Communication (IPC)
Mechanism for processes to communicate and to synchronize
their actions
Message system – processes communicate with each other
without using shared variables and using different address space
IPC facility provides two operations:
send(message) – message size fixed or variable
receive(message)
If P and Q wish to communicate, they need to:
establish a communication link between them
exchange messages via send/receive
Implementation of communication link
physical (e.g., shared memory, hardware bus)
logical (e.g., logical properties)
25. 4.25 Silberschatz, Galvin and GagneOperating System Concepts with Java
Implementation QuestionsImplementation Questions
How are links established?
Can a link be associated with more than two processes?
How many links can there be between every pair of
communicating processes?
What is the capacity of a link?
Is the size of a message that the link can accommodate fixed or
variable?
Is a link unidirectional or bi-directional?
26. 4.26 Silberschatz, Galvin and GagneOperating System Concepts with Java
Direct CommunicationDirect Communication
Processes must name each other explicitly:
send (P, message) – send a message to process P
receive(Q, message) – receive a message from process Q
Properties of communication link
Links are established automatically
A link is associated with exactly one pair of communicating
processes
Between each pair there exists exactly one link
The link may be unidirectional, but is usually bi-directional
27. 4.27 Silberschatz, Galvin and GagneOperating System Concepts with Java
Indirect CommunicationIndirect Communication
Messages are directed and received from mailboxes
(also referred to as ports)
Each mailbox has a unique id
Processes can communicate only if they share a mailbox
Properties of communication link in this scheme
Link established only if processes share a common mailbox
A link may be associated with many processes
Each pair of processes may share several communication
links
Link may be unidirectional or bi-directional
28. 4.28 Silberschatz, Galvin and GagneOperating System Concepts with Java
Indirect CommunicationIndirect Communication
Operations
create a new mailbox
send and receive messages through mailbox
destroy a mailbox
Primitives are defined as:
send(A, message) – send a message to mailbox A
receive(A, message) – receive a message from mailbox A
Mail box may be owned by a process or by operating
system
29. 4.29 Silberschatz, Galvin and GagneOperating System Concepts with Java
Indirect CommunicationIndirect Communication
Mailbox sharing
P1, P2, and P3 share mailbox A
P1, sends; P2 and P3 receive
Who gets the message?
Solutions
Allow a link to be associated with at most two processes
Allow only one process at a time to execute a receive operation
Allow the system to select arbitrarily the receiver. Sender is notified
who the receiver was.
30. 4.30 Silberschatz, Galvin and GagneOperating System Concepts with Java
SynchronizationSynchronization
Message passing may be either blocking or non-blocking
Blocking is considered synchronous
Blocking send has the sender block until the message is
received
Blocking receive has the receiver block until a message is
available
Non-blocking is considered asynchronous
Non-blocking send has the sender send the message and
continue
Non-blocking receive has the receiver receive a valid message or
null
31. 4.31 Silberschatz, Galvin and GagneOperating System Concepts with Java
BufferingBuffering
Queue of messages attached to the link; implemented in one of
three ways
1. Zero capacity – 0 messages
Sender must wait for receiver (rendezvous)
2. Bounded capacity – finite length of n messages
Sender must wait if link full
3. Unbounded capacity – infinite length
Sender never waits
32. 4.32 Silberschatz, Galvin and GagneOperating System Concepts with Java
Client-Server CommunicationClient-Server Communication
Sockets
Remote Procedure Calls
Remote Method Invocation (Java)
33. 4.33 Silberschatz, Galvin and GagneOperating System Concepts with Java
SocketsSockets
A socket is defined as an endpoint for communication
Concatenation of IP address and port
The socket 161.25.19.8:1625 refers to port 1625 on host
161.25.19.8
Communication consists between a pair of sockets
34. 4.34 Silberschatz, Galvin and GagneOperating System Concepts with Java
Remote Procedure CallsRemote Procedure Calls
Remote procedure call (RPC) abstracts procedure calls between
processes on networked systems.
Stubs – client-side proxy for the actual procedure on the server.
The client-side stub locates the server and marshals the
parameters.
The server-side stub receives this message, unpacks the
marshaled parameters, and performs the procedure on the
server.
The return value from the procedure is sent back to the client
35. 4.35 Silberschatz, Galvin and GagneOperating System Concepts with Java
Cont.Cont.
Each message contains a time stamp so that duplicate
messages can be detected.
The server keeps history large enough to detect repeated
messages
36. 4.36 Silberschatz, Galvin and GagneOperating System Concepts with Java
ThreadsThreads
A thread (or lightweight process) is a basic unit of CPU
utilization; it consists of:
program counter
register set
stack space
A thread shares with its peer threads its:
code section
data section
operating-system resources
collectively know as a task.
A traditional or heavyweight process is equal to a task with one
thread
37. 4.37 Silberschatz, Galvin and GagneOperating System Concepts with Java
Threads (Cont.)Threads (Cont.)
In a multiple threaded task, while one server thread is blocked
and waiting, a second thread in the same task can run.
Cooperation of multiple threads in same job confers higher
throughput and improved performance.
Applications that require sharing a common buffer (i.e., producer-
consumer) benefit from thread utilization.
Threads provide a mechanism that allows sequential
processes to make blocking system calls while also achieving
parallelism.
Kernel-supported threads (Mach and OS/2).
User-level threads; supported above the kernel, via a set of
library calls at the user level (Project Andrew from CMU).
Hybrid approach implements both user-level and kernel-
supported threads (Solaris 2).
38. 4.38 Silberschatz, Galvin and GagneOperating System Concepts with Java
Threads Support in Solaris 2Threads Support in Solaris 2
Solaris 2 is a version of UNIX with support for threads at the
kernel and user levels, symmetric multiprocessing, and
real-time scheduling.
LWP – intermediate level between user-level threads and
kernel-level threads.
Resource needs of thread types:
Kernel thread: small data structure and a stack; thread
switching does not require changing memory access information
– relatively fast.
LWP: PCB with register data, accounting and memory
information,; switching between LWPs is relatively slow.
User-level thread: only need stack and program counter; no
kernel involvement means fast switching. Kernel only sees the
LWPs that support user-level threads.