Optimization of CPU Scheduling in Virtual Machine Environments


Book Description

Data centres and other infrastructures in the field of information technology suffer from the major issue of 'server sprawl', a term used to depict the situation wherein a number of servers consume resources inefficiently, when compared to the business value of outcome obtained from them. Consolidation of servers, rather than dedicating whole servers to individual applications, optimizes the usage of hardware resources, and virtualization achieves this by allowing multiple servers to share a single hardware platform. Server virtualization is facilitated by the usage of hypervisors, among which Xen is widely preferred because of its dual virtualization modes, virtual machine migration support and scalability. This research work involves an analysis of the CPU scheduling algorithms incorporated into Xen, on the basis of the algorithm's performance in different workload scenarios. In addition to performance evaluation, the results obtained lay emphasis on the importance of compute intensive or I/O intensive domain handling capacity of a hypervisor's CPU scheduling algorithm in virtualized server environments. Based on this knowledge, the selection of CPU scheduler in a hypervisor can be aligned with the requirements of the hosted applications. A new credit-based VCPU scheduling scheme is proposed, in which the credits remaining for each VCPU after every accounting period plays a significant role in the scheduling decision. The proposed scheduling strategy allows those VCPUs of I/O intensive domains to supersede others, in order to favour the reduction of I/O bound domain response times and the subsequent bottleneck in the CPU run queue. Though a small percentage of context switch overhead is introduced, the results indicate substantial improvement of I/O handling and fairness in re-source allocation between the host and guest domains.







Program scheduling and simulation in an operating system environment


Book Description

Research Paper (postgraduate) from the year 2011 in the subject Computer Science - Commercial Information Technology, grade: A, Massachusetts Institute of Technology, language: English, abstract: CPU scheduling is a technique used by computer operating systems to manage the usage of the computer’s central processing unit. In a multi-programming environment whereby several processes are running on the same processor, it is essential to use scheduling criteria to avoid collisions in the computer’s operations. This will help users in a given information technology oriented firm to share server spaces and resources like printers and file storage spaces. In the multi-tasking environment, a program called CPU scheduler selects one of the ready processes and allocates the processor to it. There are a number of occasions when a new process can or must be chosen to run: When a running process block and changes its state to ‘Blocked’, When a timer for a running process expires, When a waiting process unblocks and changes its state to ‘Ready’, and When a running process terminates and changes its state to ‘Exit’ (Wikipedia, 2013). Different types of scheduling programs referred to as algorithms can be employed in CPU scheduling instances. Among the most popular scheduling algorithms is Shortest Job First (SJF). SJF gives the processor to the process with the shortest next time allocation known as the burst. If there are processes with similar CPU bursts in the event queue, the scheduler uses First Come First Served algorithm which allocates the first process to arrive in the queue to the processor regardless of its burst time. It operates under the assumption that the length of the next CPU burst of each of the processes in ready queue is known (CPU scheduling, 2013). The SJF algorithm can be used in both pre-emptive and non-preemptive methods. The algorithm can be preemptive or not. Shortest Job First with preemption uses priority measure to determine the next process to be given the CPU. The processes will be having different CPU bursts and different priority levels allocated to them. The process with the least priority magnitude is always picked next. A process already allocated the processor can be preempted the CPU and allocation done to another process with higher priority when such a process arrives in the queue. SJF with non-preemptive operates in the normal procedure whereby the job with the least CPU burst in the waiting queue is always picked next for allocation of the CPU and the rest of the processes have to wait no matter their urgency. Based on the introduction above, it is essential to use the right CPU scheduling strategy to help us achieve




Scheduling of Large-scale Virtualized Infrastructures


Book Description

System virtualization has become increasingly common in distributed systems because of its functionality and convenience for the owners and users of these infrastructures. In Scheduling of Large-scale Virtualized Infrastructures, author Flavien Quesnel examines the management of large-scale virtual infrastructures with an emphasis on scheduling up to 80,000 virtual machines on 8,000 nodes. The text fills a need for updated software managing to meet the increasing size of virtual infrastructures. Virtual machine managers and virtual operators will appreciate this guide to improvement in cooperative software management.




Research Anthology on Architectures, Frameworks, and Integration Strategies for Distributed and Cloud Computing


Book Description

Distributed systems intertwine with our everyday lives. The benefits and current shortcomings of the underpinning technologies are experienced by a wide range of people and their smart devices. With the rise of large-scale IoT and similar distributed systems, cloud bursting technologies, and partial outsourcing solutions, private entities are encouraged to increase their efficiency and offer unparalleled availability and reliability to their users. The Research Anthology on Architectures, Frameworks, and Integration Strategies for Distributed and Cloud Computing is a vital reference source that provides valuable insight into current and emergent research occurring within the field of distributed computing. It also presents architectures and service frameworks to achieve highly integrated distributed systems and solutions to integration and efficient management challenges faced by current and future distributed systems. Highlighting a range of topics such as data sharing, wireless sensor networks, and scalability, this multi-volume book is ideally designed for system administrators, integrators, designers, developers, researchers, academicians, and students.




Virtualization Power Pack: Novice To Ninja


Book Description

Unlock the World of Virtualization with the "Virtualization Power Pack: Novice To Ninja" 🚀 Are you ready to transform your IT skills and career prospects? Introducing the ultimate virtualization bundle that will take you from a novice to a virtualization ninja! The "Virtualization Power Pack" is your gateway to mastering four leading virtualization technologies: VMware, VirtualBox, Parallels Desktop, and Citrix Hypervisor. 📚 Book 1 - Virtualization Essentials: A Beginner's Guide to VMware · Begin your journey with a solid foundation in virtualization. · Explore core concepts and dive into VMware, a leading virtualization platform. · Master the fundamentals, install VMware, and create your first virtual machine. · Gain confidence as you tackle common issues and troubleshoot with ease. 📚 Book 2 - Mastering VirtualBox: Building and Managing Virtual Environments · Elevate your virtualization skills by delving into VirtualBox, a versatile platform. · Learn to install VirtualBox, create virtual machines, and manage virtual environments. · Unlock the power to handle a wide array of virtualization challenges. · Take your expertise to the next level. 📚 Book 3 - Advanced Virtualization with Parallels Desktop: Optimizing for Productivity and Performance · Seamlessly integrate Parallels Desktop with macOS for maximum productivity. · Implement advanced storage management techniques. · Optimize performance to unlock the full potential of virtualization on Apple hardware. · Become a virtuoso in the world of macOS virtualization. 📚 Book 4 - Citrix Hypervisor Mastery: Expert Techniques for Virtualization Professionals · Conquer the enterprise-grade Citrix Hypervisor. · Explore advanced storage, networking, and high availability strategies. · Master snapshots, cloning, and backup techniques for large-scale environments. · Rise to the challenge of managing complex virtualization infrastructures. 🌟 Why Choose the "Virtualization Power Pack"? · Comprehensive Knowledge: Gain expertise in four key virtualization technologies. · Career Advancement: Enhance your IT career prospects and stay competitive in the job market. · Business Optimization: Streamline operations and reduce costs through virtualization. · Versatility: Whether you're a beginner or an expert, this bundle caters to your needs. 🎁 Bonus: Get access to exclusive resources, updates, and support to ensure your virtualization journey is smooth and successful. ⏳ Don't miss this opportunity to become a virtualization ninja! Transform your skills, boost your career, and unlock the immense potential of virtualization technology. 🔥 Grab your "Virtualization Power Pack" now and embark on a transformative virtualization journey!




Proceedings of the 3rd Ph.D. Retreat of the HPI Research School on Service-oriented Systems Engineering


Book Description

Design and Implementation of service-oriented architectures imposes a huge number of research questions from the fields of software engineering, system analysis and modeling, adaptability, and application integration. Component orientation and web services are two approaches for design and realization of complex web-based system. Both approaches allow for dynamic application adaptation as well as integration of enterprise application. Commonly used technologies, such as J2EE and .NET, form de facto standards for the realization of complex distributed systems. Evolution of component systems has lead to web services and service-based architectures. This has been manifested in a multitude of industry standards and initiatives such as XML, WSDL UDDI, SOAP, etc. All these achievements lead to a new and promising paradigm in IT systems engineering which proposes to design complex software solutions as collaboration of contractually defined software services. Service-Oriented Systems Engineering represents a symbiosis of best practices in object-orientation, component-based development, distributed computing, and business process management. It provides integration of business and IT concerns. The annual Ph.D. Retreat of the Research School provides each member the opportunity to present his/her current state of their research and to give an outline of a prospective Ph.D. thesis. Due to the interdisciplinary structure of the Research Scholl, this technical report covers a wide range of research topics. These include but are not limited to: Self-Adaptive Service-Oriented Systems, Operating System Support for Service-Oriented Systems, Architecture and Modeling of Service-Oriented Systems, Adaptive Process Management, Services Composition and Workflow Planning, Security Engineering of Service-Based IT Systems, Quantitative Analysis and Optimization of Service-Oriented Systems, Service-Oriented Systems in 3D Computer Graphics, as well as Service-Oriented Geoinformatics.




International Conference on Innovative Computing and Communications


Book Description

This book includes high-quality research papers presented at the Fourth International Conference on Innovative Computing and Communication (ICICC 2021), which is held at the Shaheed Sukhdev College of Business Studies, University of Delhi, Delhi, India, on February 20–21, 2021. Introducing the innovative works of scientists, professors, research scholars, students and industrial experts in the field of computing and communication, the book promotes the transformation of fundamental research into institutional and industrialized research and the conversion of applied exploration into real-time applications.




Systems Performance


Book Description

The Complete Guide to Optimizing Systems Performance Written by the winner of the 2013 LISA Award for Outstanding Achievement in System Administration Large-scale enterprise, cloud, and virtualized computing systems have introduced serious performance challenges. Now, internationally renowned performance expert Brendan Gregg has brought together proven methodologies, tools, and metrics for analyzing and tuning even the most complex environments. Systems Performance: Enterprise and the Cloud focuses on Linux(R) and Unix(R) performance, while illuminating performance issues that are relevant to all operating systems. You'll gain deep insight into how systems work and perform, and learn methodologies for analyzing and improving system and application performance. Gregg presents examples from bare-metal systems and virtualized cloud tenants running Linux-based Ubuntu(R), Fedora(R), CentOS, and the illumos-based Joyent(R) SmartOS(TM) and OmniTI OmniOS(R). He systematically covers modern systems performance, including the "traditional" analysis of CPUs, memory, disks, and networks, and new areas including cloud computing and dynamic tracing. This book also helps you identify and fix the "unknown unknowns" of complex performance: bottlenecks that emerge from elements and interactions you were not aware of. The text concludes with a detailed case study, showing how a real cloud customer issue was analyzed from start to finish. Coverage includes - Modern performance analysis and tuning: terminology, concepts, models, methods, and techniques - Dynamic tracing techniques and tools, including examples of DTrace, SystemTap, and perf - Kernel internals: uncovering what the OS is doing - Using system observability tools, interfaces, and frameworks - Understanding and monitoring application performance - Optimizing CPUs: processors, cores, hardware threads, caches, interconnects, and kernel scheduling - Memory optimization: virtual memory, paging, swapping, memory architectures, busses, address spaces, and allocators - File system I/O, including caching - Storage devices/controllers, disk I/O workloads, RAID, and kernel I/O - Network-related performance issues: protocols, sockets, interfaces, and physical connections - Performance implications of OS and hardware-based virtualization, and new issues encountered with cloud computing - Benchmarking: getting accurate results and avoiding common mistakes This guide is indispensable for anyone who operates enterprise or cloud environments: system, network, database, and web admins; developers; and other professionals. For students and others new to optimization, it also provides exercises reflecting Gregg's extensive instructional experience.




Cloud Computing for Optimization: Foundations, Applications, and Challenges


Book Description

This book discusses harnessing the real power of cloud computing in optimization problems, presenting state-of-the-art computing paradigms, advances in applications, and challenges concerning both the theories and applications of cloud computing in optimization with a focus on diverse fields like the Internet of Things, fog-assisted cloud computing, and big data. In real life, many problems – ranging from social science to engineering sciences – can be identified as complex optimization problems. Very often these are intractable, and as a result researchers from industry as well as the academic community are concentrating their efforts on developing methods of addressing them. Further, the cloud computing paradigm plays a vital role in many areas of interest, like resource allocation, scheduling, energy management, virtualization, and security, and these areas are intertwined with many optimization problems. Using illustrations and figures, this book offers students and researchers a clear overview of the concepts and practices of cloud computing and its use in numerous complex optimization problems.