Improvement of startup time using Software Suspend - Project Update -

Slides:



Advertisements
Similar presentations
Genesis: from raw hardware to processes System booting sequence: how does a machine come into life.
Advertisements

Linux Bootup Time Reduction for Digital Still Camera Chan Ju, Park SW Laboratories Samsung Electronics.
Basic Input Output System
Handheld TFTP Server with USB Andrew Pangborn Michael Nusinov RIT Computer Engineering – CE Design 03/20/2008.
Unix kernel Kernel refers to the core part of an operating system Historically, UNIX kernels are monolithic Newer versions of UNIX allow part of the kernel.
Working with OSK5912 By T Siva Viswanathan Naresh Krishnaswamy Harshvardhan V.
29 April 2005 Part B Final Presentation Peripheral Devices For ML310 Board Project name : Spring Semester 2005 Final Presentation Presenting : Erez Cohen.
CCNA 2 v3.1 Module 2.
WANs and Routers Routers. Router Description Specialized computer Like a general purpose PC, a router has:  CPU  Memory  System Bus Connecting Internal.
F1020/F1031 COMPUTER HARDWARE MEMORY. Read-only Memory (ROM) Basic instructions for booting the computer and loading the operating system are stored in.
1 Semester 2 Module 2 Introduction to Routers Yuda college of business James Chen
3-1 System peripherals & Bus Structure Memory map of the LPC2300 device is one contiguous 32-bit address range. However, the device itself is made up of.
Hardware Overview Net+ARM – Well Suited for Embedded Ethernet
© 2004 Cisco Systems, Inc. All rights reserved. Managing Your Network Environment Managing Router Startup and Configuration INTRO v2.0—9-1.
What is Router? Router is a device which makes communication between two or more networks present in different geographical locations. Routers are data.
NET+OS 6.1 Training. BSP NET+OS 6.1 BSP Initialization Memory map New features Debugging Porting Issues.
The 6713 DSP Starter Kit (DSK) is a low-cost platform which lets customers evaluate and develop applications for the Texas Instruments C67X DSP family.
Chapter 5 Basic Input/Output System (BIOS)
Basic Input Output System
張耀元 許博凱 Computer Science, National Chung Cheng University, 2014 Introduction A variation of the suspend-resume technique eliminates.
Computer Maintenance Unit Subtitle: Basic Input/Output System (BIOS) Excerpted from 1 Copyright © Texas Education Agency, All.
AT91RM9200 Boot strategies This training module describes the boot strategies on the AT91RM9200 including the internal Boot ROM and the U-Boot program.
Chap 5 Startup and Setup Andres, Wen-Yuan Liao Department of Computer Science and Engineering De Lin Institute of Technology
Beagle Board Fast Boot Hui Chen Keji Ren Dec 10 th, 2009 EE382N-4 Project.
Cisco Router Hardware Software overview. In this lecture we will investigate an overview of Cisco router hardware and software. We will first turn our.
Linux Kernel 101 Sriram Sundararajan. Linux : /lee'nuhks/ or /li'nuks/, not /li:'nuhks/ n. /lee'nuhks/ or /li'nuks/, not /li:'nuhks/ n. The free Unix.
Porting Operating Systems Phan Duy Hùng (PhD) ES Lecturer – Hanoi FPT University.
Ch.2 – Introduction to Routers
Virtualization 3 Subtitle: “What can we do to a VM?” Learning Objectives: – To understand the VM-handling mechanisms of a hypervisor – To understand how.
Basic Input/Output System (BIOS). 5.1Introduction to BIOS Basic Input / Output System (BIOS) boot the computer by providing a basic set of instructions.
2006/JAN/20JapanTechnicalJamboree61 Improvement of bootup time using Power Management - Project Update - Hiroki Kaminaga Sony Corporation
1.4 Hardware Review. CPU  Fetch-decode-execute cycle 1. Fetch 2. Bump PC 3. Decode 4. Determine operand addr (if necessary) 5. Fetch operand from memory.
Ch.2 – Introduction to Routers CCNA 2 version 3.0 Rick Graziani Cabrillo College.
Introduction to Routers
COMP25212: Virtualization 3 Subtitle: “What can we do to a VM?” Learning Objectives: –To understand the VM-handling mechanisms of a hypervisor –To understand.
Sem 2v2 Chapter 5 Router Startup and Setup. A router initializes by loading the bootstrap, the operating system, and a configuration file. If the router.
Computer Maintenance I
Router Startup and Setup Honolulu Community College Cisco Academy Training Center Semester 2 Version 2.1.
ARM 7 & ARM 9 MICROCONTROLLERS AT91 1 AT91RM9200 Software delivery.
System Software Lab.,POSTECH TOE(TCP/IP Offload Engine) 김광식, 백근훈
Linux Boot Process on the Raspberry Pi 2 1 David Ferry, Chris Gill CSE 522S - Advanced Operating Systems Washington University in St. Louis St. Louis,
Prospects of Software Industry in Bangladesh Natasha Ahmed – Maliha Tasnim – Anamika Almas Storage Devise Natasha Ahmed.
졸업 프로젝트 발표 1/74 Trinity Snapshot Boot 날 짜: 팀 명: Trinity
OS Boot Sequence and File System (implication to “Boot Sector Viruses”) Department of Computer Science Southern Illinois University Edwardsville Spring,
The World Leader in High Performance Signal Processing Solutions Das U-Boot: Blackfin Guts.
Chap. 4 ARM Boot Loader Internals. 2 S3C2500 ARM940T Core module ARM9TDMI CoreIC.
Real Time Systems Lab. rtlab.knu.ac.kr Progress Report Kim Jung Kil.
1 © 2004, Cisco Systems, Inc. All rights reserved. CCNA 2 v3.1 Module 2 Introduction to Routers.
WP1- Documentation Booting Petalinux from TFTP and using Network file system Section for developers Zynq 7020 R. Assiro.
IMAGE COMPRESSION AND DECOMPRESSION USING ARM9 SYSTEM Under the guidance of Mrs. B. SATYA SRI DEVI,M.Tech, Assistant Professor By V. KUSUMA KUMARI Roll.
Linux on ARM7TDMI or Nothing is as easy as it looks Helicon technologies Ltd. How to run uClinux on NXP LPC22xx.
1 Free Electrons. Kernel, drivers and embedded Linux development, consulting, training and support. http//free-electrons.com Embedded Linux system development.
Introduction to Operating Systems Concepts
By Ganesan Alagu Ganesh Feb 26, 2008
Chapter Objectives In this chapter, you will learn:
By Ganesan Alagu Ganesh Feb 21, 2008
EMBEDDED LINUX #2.
Power Management Discussion
Computer Maintenance Unit Subtitle: Basic Input/Output System (BIOS)
Chapter 9: Virtual Memory
Router Startup and Setup
Computer System Structures
ECE 3551 Microcomputer Systems 1
AT91RM9200 Boot strategies This training module describes the boot strategies on the AT91RM9200 including the internal Boot ROM and the U-Boot program.
Instructor & Todd Lammle
Instructor & Todd Lammle
Router Startup and Setup
Lecture9: Embedded Network Operating System: cisco IOS
Lecture 10 review Booting sequence in Brief
Lecture9: Embedded Network Operating System: cisco IOS
Presentation transcript:

Improvement of startup time using Software Suspend - Project Update - Sony Corporation Hiroki KAMINAGA kaminaga@sm.sony.co.jp 2006/MAR/24 JapanTechnicalJamboree7

JapanTechnicalJamboree7 Contents: aim swsusp functionality in detail use of swsusp for snapshot boot 2006/MAR/24 JapanTechnicalJamboree7

JapanTechnicalJamboree7 AIM: System startup time reduction By using image of known system state, we try to accomplish kernel, module, and application startup time reduction Other aspect By using system image as a file, we can trace system development progress and error. 2006/MAR/24 JapanTechnicalJamboree7

JapanTechnicalJamboree7 Target envirionment: Target hardware OMAP OSK 5912 starter kit Target software Linux kernel 2.6.11 Omap patch U-boot Arm swsusp support patch (developed and posted to ML) Hardware Features: ARM9 core operating at 192 Mhz. DSP core operating at 192 Mhz. TLV320AIC23 Stereo Codec 32 Mbyte DDR SDRAM 32 Mbyte Flash ROM RS-232 Serial Port 10 MBPS Ethernet port USB Host Port Compact flash connector On board IEEE 1149.1 JTAG 2006/MAR/24 JapanTechnicalJamboree7

JapanTechnicalJamboree7 Swsusp (1): 3 states supported by linux Standby state Minimal power savings, low latency to working system. Cpu retains power. ACPI S1 Suspend to ram Sufficient power savings, system in low-power. Memory in self refresh mod. ACPI S3 Suspend to disk Greatest power savings, similar to suspend to ram, mem contents written to disk. ACPI S4 2006/MAR/24 JapanTechnicalJamboree7

JapanTechnicalJamboree7 Swsusp (2): Swsusp is suspend to disk (or suspend to swap, `sw` stands for swap) Save image to nor flash instead of disk On resume, read from nor flash instead of disk 2006/MAR/24 JapanTechnicalJamboree7

JapanTechnicalJamboree7 Swsusp (3): Basic flow of swsusp (suspend phase) Freeze processes Free unnecessary memory Suspend devices Make snapshot image (in memory) Resume devices Write snapshot image to swap Powerdown machine Power off device, save (co)processor regs, snapshot, restore regs, poweron device, write to swap Note: swsusp needs half of total memory 2006/MAR/24 JapanTechnicalJamboree7

JapanTechnicalJamboree7 Swsusp (4): Basic flow of swsusp (resume) Resume begin at `late_initcall` Read image from swap to mem Freeze process Suspend devices Restore snapshot image Resume devices Thaw processes Check sig, alloc mem, read image, freeze process, free mem, suspend dev, poweroff dev, Save processor regs, realloc image to orig addr, restore regs, poweron dev, resume dev, free mem thaw process 2006/MAR/24 JapanTechnicalJamboree7

JapanTechnicalJamboree7 Swsusp (5): Swsusp resume takes time. Swsusp procedure is kicked at late_initcall Almost before init process starts Doing I/O twice Swap to mem (allocated mem) Mem to mem (allocated mem to orig mem addr) Redundant device state transitions Device gets setup, suspend, and resume again. 2006/MAR/24 JapanTechnicalJamboree7

JapanTechnicalJamboree7 Snapshot boot (1): Co-operate kernel side suspend/resume and boot loader side init setups Use snapshot image created by kernel Boot loader does: Power up board Load snapshot image to original memory Initialize and do setups for resume Jump to resume entry point (not normal entry point) 2006/MAR/24 JapanTechnicalJamboree7

JapanTechnicalJamboree7 Snapshot boot (2): restore regs resume dev continue process KERNEL LAND init board copy image setup dev BOOT LOADER ON 2006/MAR/24 JapanTechnicalJamboree7

JapanTechnicalJamboree7 Snapshot boot (3): Implemented in u-boot boot loader new command: bootss <image addr> <resume entry point> Procedure: Load snapshot image in flash to mem Initialization and setups Setup clock speed Setup timer Setup various MMIO registers Enable MMU Jump to resume entry point 2006/MAR/24 JapanTechnicalJamboree7

JapanTechnicalJamboree7 DEMO: [[[demo of swsusp and snapshot boot]]] 2006/MAR/24 JapanTechnicalJamboree7

JapanTechnicalJamboree7 Reference: Swsusp.txt Documentation/power/swsusp.txt Uboot http://sourceforge.net/projects/u-boot/ Suspend2 http://www.suspend2.net 2006/MAR/24 JapanTechnicalJamboree7

JapanTechnicalJamboree7 EOF 2006/MAR/24 JapanTechnicalJamboree7