Note: I rebuilt the kernel by adding "hello world!" into the boot message. In what follows, I summarize my process of rebuilding the OS161 kernel. You may also found the three common mistakes at the end of this document.
I rebuilt the kernel by adding "hello world!" into the boot message. In what follows, I summarize my process of rebuilding the OS161 kernel. You may also found the three common mistakes at the end of this document.
Project 2 how to install and compile os161Xiao Qin
README: After installed VirtualBox on my Windows machine, I installed CentOS 6.5 on VirtualBox. Next, I successfully installed cs161-binutils-1.4 and cs161-gcc-1.5.tar. Unfortunately, I encountered an error "configure: error: no termcap library found". As Dustin suggested, installing the missing package can solve this problem. Please use the following command to install the package:
yum install ncurses-devel
You don't have to install CentOS 6.5, because I believe that you can install all the OS161 tools on CentOS 7. You don't have to install VirtualBox neither. Nevertheless, if you decide to install CentOS on VirtualBox, please refer to my installation log below.
Adding support for you new shiny board in Xen on ARM is a simple task once you get a kernel running on bare metal.
This session will cover the different steps to port Xen on ARM from the firmware to the shell prompt in DOM0.
We will give you tips on the common pitfalls when you have your hypervisor, or your DOM0 kernel crashing. We will also provide suggestion on how to debug when the console is not working.
This module shows you how to install a software development framework for OS/161.
Lecture: 30 minutes – Slides 1-20.
Demo: 20 minutes
1. Project 2 Specification.docx Preview the documentView in a new window 2. How to build tool chain: The MIPS toolchain for os161.txtPreview the documentView in a new window 3. How to build and run sys161.htmlView in a new window 4. gdb.htm View in a new window and cvs.htmView in a new window 5. Configuration file: sys161.confView in a new window Below, you can find five source code packages: 6. os161-1.10.tar.gzView in a new window 7. cs161-binutils-1.4.tarView in a new window 8. Download cs161-gcc-1.4.tar from: https://dl.dropboxusercontent.com/u/24238235/cs161-gcc-1.4.tar 9. Download cs161-gdb-1.4.tar from: https://dl.dropboxusercontent.com/u/24238235/cs161-gdb-1.4.tar 10. sys161-1.12.tar.gzView in a new window
Marco Cavallini - Yocto Project, an automatic generator of embedded Linux dis...linuxlab_conf
The Yocto Project is an open source collaboration project that provides models, tools and methods to create custom Linux-based systems for embedded products that are independent from the adopted hardware architecture. The project was created in 2010 as a collaboration among several hardware manufacturers, open-source operating system providers and electronics companies to bring some order into the chaos of Linux Embedded development. Over the years, Yocto Project has established itself as the de-facto standard for the generation of embedded Linux systems, surpassing alternative products thanks to its characteristics.
The free tools that Yocto provides are powerful and easily generated (including emulation environments, debuggers, an application generator toolkit, etc.). The complete abstraction from the hardware of the development environment allows to optimize the investments made during the prototyping phase. The Yocto Project encourages the adoption of this technology by the open source community allowing users to focus on the characteristics and development of their product.
I rebuilt the kernel by adding "hello world!" into the boot message. In what follows, I summarize my process of rebuilding the OS161 kernel. You may also found the three common mistakes at the end of this document.
Project 2 how to install and compile os161Xiao Qin
README: After installed VirtualBox on my Windows machine, I installed CentOS 6.5 on VirtualBox. Next, I successfully installed cs161-binutils-1.4 and cs161-gcc-1.5.tar. Unfortunately, I encountered an error "configure: error: no termcap library found". As Dustin suggested, installing the missing package can solve this problem. Please use the following command to install the package:
yum install ncurses-devel
You don't have to install CentOS 6.5, because I believe that you can install all the OS161 tools on CentOS 7. You don't have to install VirtualBox neither. Nevertheless, if you decide to install CentOS on VirtualBox, please refer to my installation log below.
Adding support for you new shiny board in Xen on ARM is a simple task once you get a kernel running on bare metal.
This session will cover the different steps to port Xen on ARM from the firmware to the shell prompt in DOM0.
We will give you tips on the common pitfalls when you have your hypervisor, or your DOM0 kernel crashing. We will also provide suggestion on how to debug when the console is not working.
This module shows you how to install a software development framework for OS/161.
Lecture: 30 minutes – Slides 1-20.
Demo: 20 minutes
1. Project 2 Specification.docx Preview the documentView in a new window 2. How to build tool chain: The MIPS toolchain for os161.txtPreview the documentView in a new window 3. How to build and run sys161.htmlView in a new window 4. gdb.htm View in a new window and cvs.htmView in a new window 5. Configuration file: sys161.confView in a new window Below, you can find five source code packages: 6. os161-1.10.tar.gzView in a new window 7. cs161-binutils-1.4.tarView in a new window 8. Download cs161-gcc-1.4.tar from: https://dl.dropboxusercontent.com/u/24238235/cs161-gcc-1.4.tar 9. Download cs161-gdb-1.4.tar from: https://dl.dropboxusercontent.com/u/24238235/cs161-gdb-1.4.tar 10. sys161-1.12.tar.gzView in a new window
Marco Cavallini - Yocto Project, an automatic generator of embedded Linux dis...linuxlab_conf
The Yocto Project is an open source collaboration project that provides models, tools and methods to create custom Linux-based systems for embedded products that are independent from the adopted hardware architecture. The project was created in 2010 as a collaboration among several hardware manufacturers, open-source operating system providers and electronics companies to bring some order into the chaos of Linux Embedded development. Over the years, Yocto Project has established itself as the de-facto standard for the generation of embedded Linux systems, surpassing alternative products thanks to its characteristics.
The free tools that Yocto provides are powerful and easily generated (including emulation environments, debuggers, an application generator toolkit, etc.). The complete abstraction from the hardware of the development environment allows to optimize the investments made during the prototyping phase. The Yocto Project encourages the adoption of this technology by the open source community allowing users to focus on the characteristics and development of their product.
SFO15-TR9: PSCI, ACPI (and UEFI to boot)
Speaker: Bill Fletcher
Date: September 24, 2015
★ Session Description ★
An introductory session of a system-level overview at Power State Coordination
- Focus on ARMv8
- Goes top-down from ACPI
- A demo based on the current code in qemu
- The specifications are very dynamic - what’s onging for ACPI and PSCI
★ Resources ★
Video: https://www.youtube.com/watch?v=vXzPdpaZVto
Presentation: http://www.slideshare.net/linaroorg/sfo15tr9-psci-acpi-and-uefi-to-boot
Etherpad: pad.linaro.org/p/sfo15-tr9
Pathable: https://sfo15.pathable.com/meetings/303087
★ Event Details ★
Linaro Connect San Francisco 2015 - #SFO15
September 21-25, 2015
Hyatt Regency Hotel
http://www.linaro.org
http://connect.linaro.org
XPDDS18: CPUFreq in Xen on ARM - Oleksandr Tyshchenko, EPAM SystemsThe Linux Foundation
The motivation of hypervisor based CPUFreq is to enable the one of the main PM use-cases (Dynamic voltage and frequency scaling) in virtualized system powered by Xen hypervisor. Rationale behind this activity is that CPU virtualization is done by hypervisor and the guest OS doesn't actually know anything about physical CPUs because it is running on virtual CPUs.
In this talk Oleksandr will briefly describe the possible approach of generic CPUFreq in Xen on ARM, the advantages and disadvantages of having DVFS support on ARM boards powered by Xen hypervisor and share results of his CPUFreq PoC which implies power consumption measurements with and without CPUFreq enabled on R-Car Gen3 based board as an example.
Kernel Recipes 2015: Kernel packet capture technologiesAnne Nicolas
Sniffing through the ages
Capturing packets running on the wire to send them to a software doing analysis seems at first sight a simple tasks. But one has not to forget that with current network this can means capturing 30M packets per second. The objective of this talk is to show what methods and techniques have been implemented in Linux and how they have evolved over time.
The talk will cover AF_PACKET capture as well as PF_RING, dpdk and netmap. It will try to show how the various evolution of hardware and software have had an impact on the design of these technologies. Regarding software a special focus will be made on Suricata IDS which is implementing most of these capture methods.
Eric Leblond, Stamus Networks
Yocto - Embedded Linux Distribution MakerSherif Mousa
Yocto is an Embedded Linux distribution maker.
This presentation is a quick start guide for Yocto buildsystem to get familiar with the tool and how to start building your own custom Linux system for a specific hardware target.
C has been the most commonly used language. This slideshare is all about the introduction to Advanced C. You will learn the fundamentals and the problem solving skills. You will also get an idea on building algorithms and the conditions regarding it. There are also slides which will give knowledge about operators and their types. As a whole you will gain knowledge on three important fundamentals of C.
At the end of this lecture students should be able to;
Define the C pointers and its usage in computer programming.
Describe pointer declaration and initialization.
Apply C pointers for expressions.
Experiment on pointer operations.
Identify NULL pointer concept.
Experiment on pointer to pointer, pointer arrays, arrays with pointers and functions with pointers.
Apply taught concepts for writing programs.
Kernel Recipes 2017 - An introduction to the Linux DRM subsystem - Maxime RipardAnne Nicolas
Every modern multimedia-oriented ARM SoC usually has a number of display controllers, to drive a screen or an LCD panel, and a GPU, to provide 3D acceleration. The Linux kernel framework of choice to support these controllers is the DRM subsystem.
This talk will walk through the DRM stack, the architecture of a DRM/KMS driver and the interaction between the display and GPU drivers. The presentation is based on the work we have done to develop a DRM driver for the Allwinner SoCs display controller with multiple outputs, such as parallel display interfaces, HDMI or MIPI-DSI. The work done to make the ARM Mali OpenGL driver work on top of a mainline DRM/KMS driver will also be detailed, as well as the more traditional, Mesa-based, solution used in a variety of other platforms.
Maxime Ripard, Free Electrons
HKG15-107: ACPI Power Management on ARM64 Servers (v2)Linaro
HKG15-107: ACPI Power Management on ARM64 Servers
---------------------------------------------------
Speaker: Ashwin Chaugule
Date: February 9, 2015
---------------------------------------------------
★ Session Summary ★
Status of CPPC with runtime PM and discussion on idle PM with ACPI
--------------------------------------------------
★ Resources ★
Pathable: https://hkg15.pathable.com/meetings/250767
Video: https://www.youtube.com/watch?v=eDDgYIkUHLI
Etherpad: http://pad.linaro.org/p/hkg15-107
---------------------------------------------------
★ Event Details ★
Linaro Connect Hong Kong 2015 - #HKG15
February 9-13th, 2015
Regal Airport Hotel Hong Kong Airport
---------------------------------------------------
http://www.linaro.org
http://connect.linaro.org
Buildroot is a set of Makefiles and patches that makes it
easy to generate a complete embedded Linux system. It generates root file system images ready to be used. Complete build system based on the Linux Kernel configuration system and supports a wide range of target architectures. Here is a presentation that gives a practical quick start to build-root.
Watch this video at: https://www.youtube.com/watch?v=3u4AAGo31a8
Recorded on March 14, 2015. After having followed the Alfred’s adult piano course books for three years, I made a radical decision to learn a popular worship song called “Stream of Praise” [1]. A decade ago, I first learned how to sing this song when I was an assistant professor at New Mexico Tech, where minister Anna Tai [4] shared a Stream of Praise CD with me. I have listened this CD more than a few hundred times. The music video of this spiritual and emotional song can be found here https://www.youtube.com/watch?v=KIt9n2Wjlf8 [1] on YouTube.
It is worth mentioning that this song is a simple piano version of “Stream of Praise”. An advanced version of the song can be found here https://www.youtube.com/watch?v=DAOrSvexSJ8 [3]. It must take me at least 50 hours to learn this advanced version.
This video is a pilot project for me, because “Stream of Praise” is the first song I learned outside the Alfred’s-piano-book world. When I stayed away from Alfred’s piano books, I faced three grand challenges. First, it is non-trivial to choose a song that meets my current skill level. Second, there is no fingering suggestion marked on the sheet music. Last, no sample video found on YouTube. I tried various finger positions before finalizing my own style, which is marked on the sheet music posted in this video.
I am grateful to my colleague – Dr. Jeffrey Overbey [2] – for teaching me the correct finger positions of bars 4-5. I was amazed by Dr. Overbey’s sight reading skill; he read the sheet music for two seconds and immediately played the song. It took me over 19 hours to learn and practice; in contrast, he could play this song by sight-reading on the first attempt.
I would like to express my gratitude to Mike eKim (https://www.youtube.com/user/mbut123) [5], who offered insightful advice on how to play the first five measures. Mike demonstrated how to play these bars in a video (https://www.youtube.com/watch?v=_QeTQFviE88) posted on his YouTube channel [6].
I would like to thank Sean Fox for his advice on the fingering and tempo issues. He pointed out that I should play the sixteenth notes in bars 4-5 faster.
Bars 1-5 are very difficult; I could not make them musically sound until a practice of two hours. Fortunately, Mike's magic fingering position solved this problem (see [6] for the solution). Currently, I am learning how to play and sing at the same time. Ying enjoys singing this song when I play it on our piano.
The recording success rate is 19.2%, which is slightly higher than that (i.e., 12.5%) of the previous song. The tempo of this song is 83 BPM, which is marginally faster than the ideal one (i.e., 80 BPM).
A Summary of the Learning Process:
Tempo: 83 BPM (Ideal tempo: 80 BPM)
Recording: 47 minutes (26 takes, 5 acceptable videos)
Success Rate: 5/26 = 19.2%
SFO15-TR9: PSCI, ACPI (and UEFI to boot)
Speaker: Bill Fletcher
Date: September 24, 2015
★ Session Description ★
An introductory session of a system-level overview at Power State Coordination
- Focus on ARMv8
- Goes top-down from ACPI
- A demo based on the current code in qemu
- The specifications are very dynamic - what’s onging for ACPI and PSCI
★ Resources ★
Video: https://www.youtube.com/watch?v=vXzPdpaZVto
Presentation: http://www.slideshare.net/linaroorg/sfo15tr9-psci-acpi-and-uefi-to-boot
Etherpad: pad.linaro.org/p/sfo15-tr9
Pathable: https://sfo15.pathable.com/meetings/303087
★ Event Details ★
Linaro Connect San Francisco 2015 - #SFO15
September 21-25, 2015
Hyatt Regency Hotel
http://www.linaro.org
http://connect.linaro.org
XPDDS18: CPUFreq in Xen on ARM - Oleksandr Tyshchenko, EPAM SystemsThe Linux Foundation
The motivation of hypervisor based CPUFreq is to enable the one of the main PM use-cases (Dynamic voltage and frequency scaling) in virtualized system powered by Xen hypervisor. Rationale behind this activity is that CPU virtualization is done by hypervisor and the guest OS doesn't actually know anything about physical CPUs because it is running on virtual CPUs.
In this talk Oleksandr will briefly describe the possible approach of generic CPUFreq in Xen on ARM, the advantages and disadvantages of having DVFS support on ARM boards powered by Xen hypervisor and share results of his CPUFreq PoC which implies power consumption measurements with and without CPUFreq enabled on R-Car Gen3 based board as an example.
Kernel Recipes 2015: Kernel packet capture technologiesAnne Nicolas
Sniffing through the ages
Capturing packets running on the wire to send them to a software doing analysis seems at first sight a simple tasks. But one has not to forget that with current network this can means capturing 30M packets per second. The objective of this talk is to show what methods and techniques have been implemented in Linux and how they have evolved over time.
The talk will cover AF_PACKET capture as well as PF_RING, dpdk and netmap. It will try to show how the various evolution of hardware and software have had an impact on the design of these technologies. Regarding software a special focus will be made on Suricata IDS which is implementing most of these capture methods.
Eric Leblond, Stamus Networks
Yocto - Embedded Linux Distribution MakerSherif Mousa
Yocto is an Embedded Linux distribution maker.
This presentation is a quick start guide for Yocto buildsystem to get familiar with the tool and how to start building your own custom Linux system for a specific hardware target.
C has been the most commonly used language. This slideshare is all about the introduction to Advanced C. You will learn the fundamentals and the problem solving skills. You will also get an idea on building algorithms and the conditions regarding it. There are also slides which will give knowledge about operators and their types. As a whole you will gain knowledge on three important fundamentals of C.
At the end of this lecture students should be able to;
Define the C pointers and its usage in computer programming.
Describe pointer declaration and initialization.
Apply C pointers for expressions.
Experiment on pointer operations.
Identify NULL pointer concept.
Experiment on pointer to pointer, pointer arrays, arrays with pointers and functions with pointers.
Apply taught concepts for writing programs.
Kernel Recipes 2017 - An introduction to the Linux DRM subsystem - Maxime RipardAnne Nicolas
Every modern multimedia-oriented ARM SoC usually has a number of display controllers, to drive a screen or an LCD panel, and a GPU, to provide 3D acceleration. The Linux kernel framework of choice to support these controllers is the DRM subsystem.
This talk will walk through the DRM stack, the architecture of a DRM/KMS driver and the interaction between the display and GPU drivers. The presentation is based on the work we have done to develop a DRM driver for the Allwinner SoCs display controller with multiple outputs, such as parallel display interfaces, HDMI or MIPI-DSI. The work done to make the ARM Mali OpenGL driver work on top of a mainline DRM/KMS driver will also be detailed, as well as the more traditional, Mesa-based, solution used in a variety of other platforms.
Maxime Ripard, Free Electrons
HKG15-107: ACPI Power Management on ARM64 Servers (v2)Linaro
HKG15-107: ACPI Power Management on ARM64 Servers
---------------------------------------------------
Speaker: Ashwin Chaugule
Date: February 9, 2015
---------------------------------------------------
★ Session Summary ★
Status of CPPC with runtime PM and discussion on idle PM with ACPI
--------------------------------------------------
★ Resources ★
Pathable: https://hkg15.pathable.com/meetings/250767
Video: https://www.youtube.com/watch?v=eDDgYIkUHLI
Etherpad: http://pad.linaro.org/p/hkg15-107
---------------------------------------------------
★ Event Details ★
Linaro Connect Hong Kong 2015 - #HKG15
February 9-13th, 2015
Regal Airport Hotel Hong Kong Airport
---------------------------------------------------
http://www.linaro.org
http://connect.linaro.org
Buildroot is a set of Makefiles and patches that makes it
easy to generate a complete embedded Linux system. It generates root file system images ready to be used. Complete build system based on the Linux Kernel configuration system and supports a wide range of target architectures. Here is a presentation that gives a practical quick start to build-root.
Watch this video at: https://www.youtube.com/watch?v=3u4AAGo31a8
Recorded on March 14, 2015. After having followed the Alfred’s adult piano course books for three years, I made a radical decision to learn a popular worship song called “Stream of Praise” [1]. A decade ago, I first learned how to sing this song when I was an assistant professor at New Mexico Tech, where minister Anna Tai [4] shared a Stream of Praise CD with me. I have listened this CD more than a few hundred times. The music video of this spiritual and emotional song can be found here https://www.youtube.com/watch?v=KIt9n2Wjlf8 [1] on YouTube.
It is worth mentioning that this song is a simple piano version of “Stream of Praise”. An advanced version of the song can be found here https://www.youtube.com/watch?v=DAOrSvexSJ8 [3]. It must take me at least 50 hours to learn this advanced version.
This video is a pilot project for me, because “Stream of Praise” is the first song I learned outside the Alfred’s-piano-book world. When I stayed away from Alfred’s piano books, I faced three grand challenges. First, it is non-trivial to choose a song that meets my current skill level. Second, there is no fingering suggestion marked on the sheet music. Last, no sample video found on YouTube. I tried various finger positions before finalizing my own style, which is marked on the sheet music posted in this video.
I am grateful to my colleague – Dr. Jeffrey Overbey [2] – for teaching me the correct finger positions of bars 4-5. I was amazed by Dr. Overbey’s sight reading skill; he read the sheet music for two seconds and immediately played the song. It took me over 19 hours to learn and practice; in contrast, he could play this song by sight-reading on the first attempt.
I would like to express my gratitude to Mike eKim (https://www.youtube.com/user/mbut123) [5], who offered insightful advice on how to play the first five measures. Mike demonstrated how to play these bars in a video (https://www.youtube.com/watch?v=_QeTQFviE88) posted on his YouTube channel [6].
I would like to thank Sean Fox for his advice on the fingering and tempo issues. He pointed out that I should play the sixteenth notes in bars 4-5 faster.
Bars 1-5 are very difficult; I could not make them musically sound until a practice of two hours. Fortunately, Mike's magic fingering position solved this problem (see [6] for the solution). Currently, I am learning how to play and sing at the same time. Ying enjoys singing this song when I play it on our piano.
The recording success rate is 19.2%, which is slightly higher than that (i.e., 12.5%) of the previous song. The tempo of this song is 83 BPM, which is marginally faster than the ideal one (i.e., 80 BPM).
A Summary of the Learning Process:
Tempo: 83 BPM (Ideal tempo: 80 BPM)
Recording: 47 minutes (26 takes, 5 acceptable videos)
Success Rate: 5/26 = 19.2%
With the rapid growth of the production and storage of large scale data sets it is important to investigate methods to drive the cost of storage systems down. We are currently in the midst of an information explosion and large scale storage centers are increasingly used to help store generated data. There are several methods to bring the cost of large scale storage centers down and we investigate a technique that focuses on transitioning storage disks into lower power states. This talk introduces a model of disk systems that leverages disk access patterns to produce energy saving opportunities for parallel disk systems. We also focus on the implementation of an energy-efficient storage cluster, where a couple of energy-saving techniques are incorporated. Our modeling and simulation results indicated that large data sizes and knowledge about the disk access pattern are valuable for storage system energy savings techniques. Storage servers that support applications that stream media is one key area that would benefit from our strategies.
An Active and Hybrid Storage System for Data-intensive ApplicationsXiao Qin
Since large-scale and data-intensive applications have been widely deployed, there is a growing demand for high-performance storage systems to support data-intensive applications. Compared with traditional storage systems, next-generation systems will embrace dedicated processor to reduce computational load of host machines and will have hybrid combinations of different storage devices. We present a new architecture of active storage system, which leverage the computational power of the dedicated processor, and show how it utilizes the multi-core processor and offloads the computation from the host machine. We then solve the challenge of applying the active storage node to cooperate with the other nodes in the cluster environment by design a pipeline-parallel processing pattern and report the effectiveness of the mechanism. In order to evaluate the design, an open-source bioinformatics application is extended based on the pipeline-parallel mechanism. We also explore the hybrid configuration of storage devices within the active storage. The advent of flash-memory-based solid state disk has become a critical role in revolutionizing the storage world. However, instead of simply replacing the traditional magnetic hard disk with the solid state disk, researchers believe that finding a complementary approach to corporate both of them is more challenging and attractive. Thus, we propose a hybrid combination of different types of disk drives for our active storage system. An simulator is designed and implemented to verify the new configuration. In summary, this dissertation explores the idea of active storage, an emerging new storage configuration, in terms of the architecture and design, the parallel processing capability, the cooperation of other machines in cluster computing environment, and the new disk configuration, the hybrid combination of different types of disk drives.
Conference Program Overview of the
31st IEEE International Performance Computing and Communications Conference (IPCCC'12). December 1st - December 3rd, 2012
IPCCC 2012 - Austin, Texas, USA
Project 2 in COMP3500 Operating Systems class at Auburn University. The objectives of this project are:
• Use your installed CentOS to build OS/161 and run Sys/161
• Configure and build OS/161 kernels
• Discover important design aspects of OS/161 by examining its source code
• Manage OS/161 using a version control system called cvs; apply cvs to create a repository and tracking your source code changes
• Use GDB to debug OS/161
Reliability Analysis for an Energy-Aware RAID SystemXiao Qin
Reliability Analysis for an Energy-Aware RAID System.
S. Yin, M. I. Alghamdi, X.-J. Ruan, Y. Tian, J. Xie, X. Qin, and M. Qiu, Proc. the 30th IEEE International Performance Computing and Communications Conference (IPCCC), Nov. 2011.
Why Major in Computer Science and Software Engineering at Auburn University?Xiao Qin
Computer scientists and software engineers design, analyze, and develop software for the computer systems and networks that power today's world. Whether you're playing a video game, downloading MP3s, talking on a cell phone or even driving your car, you're depending on software. Software applications range from personal computing to entertainment systems to life-critical applications such as medical, flight and space systems. Today's society requires software that is engineered to demanding performance, reliability and safety standards. Engineering such software requires a high degree of specialization. The individuals with the critical expertise to do this are computer scientists and software engineers. It's these professionals who make the magic happen.
The Department of Computer Science and Software Engineering (CSSE) offers three undergraduate degrees to prepare students for success in the world of computing:
Bachelor of Science in Computer Science
Bachelor of Software Engineering
Bachelor of Wireless Engineering
Thermal modeling and management of cluster storage systems xunfei jiang 2014Xiao Qin
Thermal Modeling and Management of Storage Systems
Author: Jiang, Xunfei
Abstract: Energy consumption of data storage systems has increased significantly for the past decades. There is an urgent need to build energy-efficient data storage systems. Computing cost of IT facilities and cooling cost of air conditioners contribute to a large portion of the total energy consumption of data centers. A large amount of researchers focus on reducing the computing cost by balancing workload or powering off idle data nodes to save energy. In recent years, growing attention has been paid to decreasing the cooling cost. Temperature is a major contributor to cooling cost, and thermal management has become a popular topic in building energy-efficient data centers. Extensive research of thermal impacts of processors and memories has been presented in literature, however, the thermal impacts of disks have not been fully investigated. In this dissertation, experiments are conducted to characterize the thermal behavior of processors and disks by using real-world benchmarks (e.g., postmark and whetstone). The profiling results show that disks have comparable thermal impacts as processors to overall temperature of a data node. Then, we develop an approach to generate thermal models for estimating temperatures of processors, disks, and data nodes. We validate the thermal models by comparing the predictions with real measurements by temperature sensors deployed on data nodes. We further propose an energy model to estimate the total energy cost of data nodes. Finally, by applying our thermal and energy models, we propose thermal management strategies for building energy-efficient data centers. These strategies include a thermal-aware task scheduling strategy, thermal-aware data placement strategies for homogeneous and hybrid storage clusters, and a predictive thermal-aware data transmission strategy.
How to survive a group project in COMP4710 Senior Design Project? This is a training module in the second lecture of week 1. The module takes approximately 20 minutes. After the training session is done, please check the progress of the development groups.
Data center specific thermal and energy saving techniquesXiao Qin
Abstract: Data centers are ever increasing as we become more reliant of web based transactions. The benefits of such massive computing are obvious by the speed and ease we can get most media or information. A challenge is that new large data centers introduce a level of energy consumption that the world has not seen before. The obvious energy cost of running the computers is a billion dollar problem, but there are hidden costs like running cooling systems as well. To help combat the problems of large data centers, we aim at developing solutions that can work for each type of data center. This could entail creating tools that are generic enough to work for all data centers, or focusing on specific tools the type of software running in the data center. In this talk, we present a thermal model that is flexible enough to be applicable for all data centers; we show how our model can be used to save energy. We also discuss new energy saving techniques for Hadoop clusters specifically, where we focus on very data centric implementations of Hadoop to gain a significant energy savings.
Understanding what our customer wants-slideshareXiao Qin
COMP4710 Senior Design Project - Training Module 2. How to understand our customers' requirements? This training module is covered in the second lecture of week 2 or Lec02b.
Performance Evaluation of Traditional Caching Policies on a Large System with...Xiao Qin
Caching is widely known to be an effective method for improving I/O performance by storing frequently used data on higher speed storage components. However, most existing studies that focus on caching performance evaluate fairly small files populating a relatively small cache. Few reports are available that detail the performance of traditional cache replacement policies on extremely large caches. Do such traditional caching
policies still work effectively when applied to systems with petabytes of data? In this paper, we comprehensively evaluate
the performance of several cache policies, which include First-In-First-Out (FIFO), Least Recently Used (LRU) and Least
Frequently Used (LFU), on the global satellite imagery distribution application maintained by the U.S. Geological Survey
(USGS) Earth Resources Observation and Science Center (EROS). Evidence is presented suggesting traditional caching
policies are capable of providing performance gains when applied
to large data sets as with smaller data sets. Our evaluation is based on approximately three million real-world satellite images
download requests representing global user download behavior since October 2008.
HDFS-HC2: Analysis of Data Placement Strategy based on Computing Power of Nod...Xiao Qin
Hadoop and the term 'Big Data' go hand in hand. The information explosion caused
due to cloud and distributed computing lead to the curiosity to process and analyze massive
amount of data. The process and analysis helps to add value to an organization or derive
valuable information.
The current Hadoop implementation assumes that computing nodes in a cluster are
homogeneous in nature. Hadoop relies on its capability to take computation to the nodes
rather than migrating the data around the nodes which might cause a signicant network
overhead. This strategy has its potential benets on homogeneous environment but it might
not be suitable on an heterogeneous environment. The time taken to process the data on a
slower node on a heterogeneous environment might be signicantly higher than the sum of
network overhead and processing time on a faster node. Hence, it is necessary to study the
data placement policy where we can distribute the data based on the processing power of
a node. The project explores this data placement policy and notes the ramications of this
strategy based on running few benchmark applications.
Here's the complete guide, how to add a system call to kernel on linux
You can contact me on Gmai
bilal.professional786@gmail.com
You can also contact me on Facebook
https://www.facebook.com/bilalbakhtawar
Part 4 Scripting and Virtualization (due Week 7)Objectives1. .docxkarlhennesey
Part 4: Scripting and Virtualization (due Week 7)Objectives
1. To learn scripting on Windows and Linux
2. To add virtualization with a Linux distributionStepsPart 1—Windows Scripting
Basic Script: Scripting is useful for small programming projects or quick tasks. Often, these programs are short and meant for small problems. Unlike compiled programming languages, scripting languages are generally interpreted. Batch files or scripts are created to automate tasks and may contain several commands in one file. Scripts can be created in Notepad. These are short files that run each command in sequence at file execution. The windows command-line interface can be used to run scripts.
Below are some commands.
Echo = Displays a message in the batch file
Echo. displays a blank line
@command turns off the display of the current command
@echo off = does not echo back text
cls = clears your screen
:: = Adds comments to your code; this line will not be displayed
Start = used to start a windows application
Creating a Basic Script
cls
@echo off
::Your Name
echo "Creating a data dump file"
ipconfig /all > C:\Scripts\config_info.txt
echo end of script
Open Notepad by going to Start-> All Programs -> Accessories-> Notepad.
Type the above script into Notepad.
Create a directory named Scripts on the C:\ drive. Save this file in the C:\Scripts folder as myscript.cmd.
Do not close your Notepad file. To run, open a command prompt by typing cmd in the Search Programs and Files box when you click the Start button or search for cmd.
Change directory to the C:\Scripts folder by typing the following.
cd c:\Scripts
Then type in the following.
myscript.cmd
The script should run and will create a file.
Use the dir command to see what files are created.
Keep both the Notepad file and the command prompt open for the next step.
You can also shut down a computer from a script. This is helpful for remote shutdown in a networking situation. Add the following commands to your script and save it in Notepad. (Note: The ping command, though normally used for networking, here waits 4 seconds.)
shutdown /s /t 60 /c "Local shutdown in 1 minute!"
ping -w 1000 0.0.0.0 > nul
shutdown /a
echo "Shutdown has been aborted"
Click back to the command prompt.
Type in myscript.cmd to run the script.
You should see the script attempt to shut down, then abort the shutdown.
Keep both your Notepad and command prompt open.
Environment variables are built-in system variables available for all Windows processes describing users, paths, and so on.
Some common environment variables are as follows.
%PATH% = contains a list of directories with executable files, separated by semicolons. To add a path:
SET PATH = %PATH%;C:\Windows\Eclipse
%DATE% and %TIME% = current date and time
%RANDOM% = returns a random number between 0 and 32767
%WINDIR% = points to the windows directory C:\Windows
%PATHEXT% = displays executable file extensions ie .com, .exe, .bat, .cmd, .vbs, .vbe, ...
In this workshop, we explore ways to prepare for internship applications and interviews. In the workshop you will:
Learn how to apply for internships
Prepare for interview questions
Follow-up with employers
Receive tips that help you secure internships
An earlier version 1.0 can be found here: https://www.slideshare.net/xqin74/how-to-write-papers-part-1-principles/edit?src=slideview
5 Simple Steps to Write a Good Research Paper Title
1. Ask yourself these questions and make note of the answers What is my paper about? What techniques/ designs were used? Who/what is studied? What were the results?
2. Use your answers to list key words.
3. Create a sentence that includes the key words you listed.
4. Delete all unnecessary/repetitive words and link the remaining.
5. Delete non-essential information and reword the title.
Making a competitive nsf career proposal: Part 2 WorksheetXiao Qin
Dear Colleagues,
I created a worksheet to assist you to contrive the framework of your CAREER proposal. Answering the questions in the worksheet may streamline your thoughts when you are about to develop key components for your proposal. Any feedback on this worksheet is highly appreciated. I will have this worksheet revised in the future by incorporating your comments and suggestions.
Xiao (xqin@auburn.edu)
Making a competitive nsf career proposal: Part 1 TipsXiao Qin
A Caveat: This document consists of a list of the evaluation criteria of winning CAREER proposals. The following essential tips illustrate "what tasks" you should undertake rather than "how" to perform these tasks.
About This Document
" Proposal preparation phase: Sections 1 (Foundations), 2 (Preliminaries), and 6 (Other Suggestions) offer a list of tips on how to prepare your proposals.
" Proposal writing phase: Sections 3 (Key Components) and 4 (Writing) are comprised of a list of proposal components and writing styles.
" Proposal proofreading phase: Section 5 (Polishing a Proposal Draft) is a final proposal checklist.
In this training session, we provide new CSSE faculty with introduction on (1) policies related to graduate programs, (2) requirements and regulations, (3) teaching strategies, and (4) how to balance research and teaching. Please note that other CSSE policies (e.g., proposal submissions, startup account, CSSE committees) aren't covered in this session.
Subject: Welcome Letter
Dear New CSSE Graduate Students,
Welcome to the Department of Computer Science and Software Engineering at Auburn University. The CSSE faculty and I are enthusiastic about teaching and conducting cutting-edge research here; we are excited that you have chosen to join our department to pursue your Master’s or Ph.D. degrees. I am pleased to invite you to an orientation meeting on Thursday, Aug. 24 at 5:00 p.m. in room 3129 Shelby Center. At this kickoff meeting, I will present information on departmental policies, graduate school policies, CSSE graduate programs, assessments, academic standings, qualifying exams, teaching assistantship assignments, mailing list, job applications, E-mail etiquette and a whole lot more.
I look forward to seeing you all on Aug. 24.
Sincerely yours,
X. Qin
--
Xiao Qin, PhD
Professor and Director of Graduate Programs
Department of Computer Science and Software Engineering
3101 Shelby Center
Auburn University AL 36849-5347
voice: (334)844-6335
fax: (334)844-6329
WWW: http://www.eng.auburn.edu/~xqin
Reliability Modeling and Analysis of Energy-Efficient Storage SystemsXiao Qin
With the rapid growth of the production and storage of large scale data sets it is important to investigate methods to drive the cost of storage systems down. Many
energy conservation techniques have been proposed to achieve high energy efficiency
in disk systems. Unfortunately, growing evidence shows that energy-saving schemes in disk drives usually have negative impacts on storage systems. Existing reliability models are inadequate to estimate reliability of parallel disk systems equipped with energy conservation techniques. To solve this problem, we firstly propose a mathematical model - called MINT - to evaluate the reliability of a parallel disk system where energy-saving mechanisms are implemented. In this dissertation, MINT is focused on modeling the reliability impacts of two well-known energy-saving techniques - the Popular Disk Concentration technique (PDC) and the Massive Array of Idle Disks (MAID). Different from MAID and PDC which store a complete file on the same disk, the Redundancy Array of Inexpensive Disks (RAID) stripes file into several parts and stores them on different disks to ensure higher parallelism, hence higher I/O performance. However, RAID faces more challenges on energy efficiency
and reliability issues. In order to evaluate the reliability of power-aware RAID, we
then develop a Weibull-based model–MREED. In this dissertation, we use MREED to model the reliability impacts of a famous energy efficiency storage mechanism– the Power-Aware RAID (PARAID). Thirdly, we focus on validation of two models–MINT and MREED. It is challenging to validate the accuracy of reliability models, since we are unable to watch certain energy-efficiency systems for a couple of decades due to its time consuming and experimental costs. We introduce validated storage system
simulator–DiskSim–to determine if our model and DiskSim agree with one another. In our validation process, we compare a file access trace in a real-world file system. Last part of of this dissertation focuses on improvement of energy-efficient parallel storage systems. We propose a strategy–Disk Swapping–to improve disk reliability by alternating disks storing data that is frequently accessed with disks holding less accessed data. In this part, we focus on studying reliability improvement of PDC and MAID. At last, we further improve disk reliability by introducing multiple disk
swapping strategy.
Hybrid optimization of pumped hydro system and solar- Engr. Abdul-Azeez.pdffxintegritypublishin
Advancements in technology unveil a myriad of electrical and electronic breakthroughs geared towards efficiently harnessing limited resources to meet human energy demands. The optimization of hybrid solar PV panels and pumped hydro energy supply systems plays a pivotal role in utilizing natural resources effectively. This initiative not only benefits humanity but also fosters environmental sustainability. The study investigated the design optimization of these hybrid systems, focusing on understanding solar radiation patterns, identifying geographical influences on solar radiation, formulating a mathematical model for system optimization, and determining the optimal configuration of PV panels and pumped hydro storage. Through a comparative analysis approach and eight weeks of data collection, the study addressed key research questions related to solar radiation patterns and optimal system design. The findings highlighted regions with heightened solar radiation levels, showcasing substantial potential for power generation and emphasizing the system's efficiency. Optimizing system design significantly boosted power generation, promoted renewable energy utilization, and enhanced energy storage capacity. The study underscored the benefits of optimizing hybrid solar PV panels and pumped hydro energy supply systems for sustainable energy usage. Optimizing the design of solar PV panels and pumped hydro energy supply systems as examined across diverse climatic conditions in a developing country, not only enhances power generation but also improves the integration of renewable energy sources and boosts energy storage capacities, particularly beneficial for less economically prosperous regions. Additionally, the study provides valuable insights for advancing energy research in economically viable areas. Recommendations included conducting site-specific assessments, utilizing advanced modeling tools, implementing regular maintenance protocols, and enhancing communication among system components.
Hierarchical Digital Twin of a Naval Power SystemKerry Sado
A hierarchical digital twin of a Naval DC power system has been developed and experimentally verified. Similar to other state-of-the-art digital twins, this technology creates a digital replica of the physical system executed in real-time or faster, which can modify hardware controls. However, its advantage stems from distributing computational efforts by utilizing a hierarchical structure composed of lower-level digital twin blocks and a higher-level system digital twin. Each digital twin block is associated with a physical subsystem of the hardware and communicates with a singular system digital twin, which creates a system-level response. By extracting information from each level of the hierarchy, power system controls of the hardware were reconfigured autonomously. This hierarchical digital twin development offers several advantages over other digital twins, particularly in the field of naval power systems. The hierarchical structure allows for greater computational efficiency and scalability while the ability to autonomously reconfigure hardware controls offers increased flexibility and responsiveness. The hierarchical decomposition and models utilized were well aligned with the physical twin, as indicated by the maximum deviations between the developed digital twin hierarchy and the hardware.
Explore the innovative world of trenchless pipe repair with our comprehensive guide, "The Benefits and Techniques of Trenchless Pipe Repair." This document delves into the modern methods of repairing underground pipes without the need for extensive excavation, highlighting the numerous advantages and the latest techniques used in the industry.
Learn about the cost savings, reduced environmental impact, and minimal disruption associated with trenchless technology. Discover detailed explanations of popular techniques such as pipe bursting, cured-in-place pipe (CIPP) lining, and directional drilling. Understand how these methods can be applied to various types of infrastructure, from residential plumbing to large-scale municipal systems.
Ideal for homeowners, contractors, engineers, and anyone interested in modern plumbing solutions, this guide provides valuable insights into why trenchless pipe repair is becoming the preferred choice for pipe rehabilitation. Stay informed about the latest advancements and best practices in the field.
Student information management system project report ii.pdfKamal Acharya
Our project explains about the student management. This project mainly explains the various actions related to student details. This project shows some ease in adding, editing and deleting the student details. It also provides a less time consuming process for viewing, adding, editing and deleting the marks of the students.
Cosmetic shop management system project report.pdfKamal Acharya
Buying new cosmetic products is difficult. It can even be scary for those who have sensitive skin and are prone to skin trouble. The information needed to alleviate this problem is on the back of each product, but it's thought to interpret those ingredient lists unless you have a background in chemistry.
Instead of buying and hoping for the best, we can use data science to help us predict which products may be good fits for us. It includes various function programs to do the above mentioned tasks.
Data file handling has been effectively used in the program.
The automated cosmetic shop management system should deal with the automation of general workflow and administration process of the shop. The main processes of the system focus on customer's request where the system is able to search the most appropriate products and deliver it to the customers. It should help the employees to quickly identify the list of cosmetic product that have reached the minimum quantity and also keep a track of expired date for each cosmetic product. It should help the employees to find the rack number in which the product is placed.It is also Faster and more efficient way.
1. 1
COMP3500:
Project
2
Modify
the
Kernel
Xiao
Qin
@
Auburn
University
Note:
I
rebuilt
the
kernel
by
adding
"hello
world!"
into
the
boot
message.
In
what
follows,
I
summarize
my
process
of
rebuilding
the
OS161
kernel.
You
may
also
found
the
three
common
mistakes
at
the
end
of
this
document.
Your
hello.c
should
be
as
simple
as
the
following
code:
When
we
compile
OS161
after
adding
hello.c,
we
may
encounter
the
following
compilation
error.
1.
edit
kern/conf/conf.kern
cd ~/cs161/src/kern/conf
vi conf.kern
/main.c #search main.c in conf.kern see also line 374
Add the following line:
file main/hello.c
2.
In
directory
~/cs161/src/kern/include
Create
a
header
file
called
hello.h
3.
Add #include <hello.h>
into
main.c
4.
Important!
Configure
your
tree
for
the
machine
on
which
you
are
working.
cd ~/cs161/src
./configure
5.
Configure
a
kernel
named
ASST0.
cd ~/cs161/src/kern/conf
./config ASST0
2. 2
6.
Build
the
ASST0
kernel.
(cs161/src/compile).
Use
‘echo $PATH’
to
check
your
$PATH.
cd ../compile/ASST0
make depend
make
make install Important!
7.
Now
also
build
the
user
level
utilties.
cd ~/cs161/src
make
8.
Run
OS161:
Change
into
your
root
directory.
%cd ~/cs161/root
Run
the
machine
simulator
on
your
operating
system.
%./sys161 kernel
Now
you
should
see
the
following
outcome:
Common
Mistakes
1.
You
must
rebuild
your
kernel
by
following
the
three
steps.
If
you
forget
to
install
the
kernel
using
"make install",
your kprintf() will not print “hello world”.
cd ../compile/ASST0
make depend
make
make install
2.
In
your
hello.c,
you
must
use
kprintf() rather
than
printf().
3.
Remember
to
setup
PATH
using
the
following
command.
export PATH=~/cs161/bin:$PATH
If
you
forget
to
configure
PATH,
you
will
encounter
the
error
message
below.