\documentclass[11pt,twoside]{article}\makeatletter

\IfFileExists{xcolor.sty}%
  {\RequirePackage{xcolor}}%
  {\RequirePackage{color}}
\usepackage{colortbl}
\usepackage{wrapfig}
\usepackage{ifxetex}
\ifxetex
  \usepackage{fontspec}
  \usepackage{xunicode}
  \catcode`⃥=\active \def⃥{\textbackslash}
  \catcode`❴=\active \def❴{\{}
  \catcode`❵=\active \def❵{\}}
  \def\textJapanese{\fontspec{Noto Sans CJK JP}}
  \def\textChinese{\fontspec{Noto Sans CJK SC}}
  \def\textKorean{\fontspec{Noto Sans CJK KR}}
  \setmonofont{DejaVu Sans Mono}
  
\else
  \IfFileExists{utf8x.def}%
   {\usepackage[utf8x]{inputenc}
      \PrerenderUnicode{–}
    }%
   {\usepackage[utf8]{inputenc}}
  \usepackage[english]{babel}
  \usepackage[T1]{fontenc}
  \usepackage{float}
  \usepackage[]{ucs}
  \uc@dclc{8421}{default}{\textbackslash }
  \uc@dclc{10100}{default}{\{}
  \uc@dclc{10101}{default}{\}}
  \uc@dclc{8491}{default}{\AA{}}
  \uc@dclc{8239}{default}{\,}
  \uc@dclc{20154}{default}{ }
  \uc@dclc{10148}{default}{>}
  \def\textschwa{\rotatebox{-90}{e}}
  \def\textJapanese{}
  \def\textChinese{}
  \IfFileExists{tipa.sty}{\usepackage{tipa}}{}
\fi
\def\exampleFont{\ttfamily\small}
\DeclareTextSymbol{\textpi}{OML}{25}
\usepackage{relsize}
\RequirePackage{array}
\def\@testpach{\@chclass
 \ifnum \@lastchclass=6 \@ne \@chnum \@ne \else
  \ifnum \@lastchclass=7 5 \else
   \ifnum \@lastchclass=8 \tw@ \else
    \ifnum \@lastchclass=9 \thr@@
   \else \z@
   \ifnum \@lastchclass = 10 \else
   \edef\@nextchar{\expandafter\string\@nextchar}%
   \@chnum
   \if \@nextchar c\z@ \else
    \if \@nextchar l\@ne \else
     \if \@nextchar r\tw@ \else
   \z@ \@chclass
   \if\@nextchar |\@ne \else
    \if \@nextchar !6 \else
     \if \@nextchar @7 \else
      \if \@nextchar (8 \else
       \if \@nextchar )9 \else
  10
  \@chnum
  \if \@nextchar m\thr@@\else
   \if \@nextchar p4 \else
    \if \@nextchar b5 \else
   \z@ \@chclass \z@ \@preamerr \z@ \fi \fi \fi \fi
   \fi \fi  \fi  \fi  \fi  \fi  \fi \fi \fi \fi \fi \fi}
\gdef\arraybackslash{\let\\=\@arraycr}
\def\@textsubscript#1{{\m@th\ensuremath{_{\mbox{\fontsize\sf@size\z@#1}}}}}
\def\Panel#1#2#3#4{\multicolumn{#3}{){\columncolor{#2}}#4}{#1}}
\def\abbr{}
\def\corr{}
\def\expan{}
\def\gap{}
\def\orig{}
\def\reg{}
\def\ref{}
\def\sic{}
\def\persName{}\def\name{}
\def\placeName{}
\def\orgName{}
\def\textcal#1{{\fontspec{Lucida Calligraphy}#1}}
\def\textgothic#1{{\fontspec{Lucida Blackletter}#1}}
\def\textlarge#1{{\large #1}}
\def\textoverbar#1{\ensuremath{\overline{#1}}}
\def\textquoted#1{‘#1’}
\def\textsmall#1{{\small #1}}
\def\textsubscript#1{\@textsubscript{\selectfont#1}}
\def\textxi{\ensuremath{\xi}}
\def\titlem{\itshape}
\newenvironment{biblfree}{}{\ifvmode\par\fi }
\newenvironment{bibl}{}{}
\newenvironment{byline}{\vskip6pt\itshape\fontsize{16pt}{18pt}\selectfont}{\par }
\newenvironment{citbibl}{}{\ifvmode\par\fi }
\newenvironment{docAuthor}{\ifvmode\vskip4pt\fontsize{16pt}{18pt}\selectfont\fi\itshape}{\ifvmode\par\fi }
\newenvironment{docDate}{}{\ifvmode\par\fi }
\newenvironment{docImprint}{\vskip 6pt}{\ifvmode\par\fi }
\newenvironment{docTitle}{\vskip6pt\bfseries\fontsize{22pt}{25pt}\selectfont}{\par }
\newenvironment{msHead}{\vskip 6pt}{\par}
\newenvironment{msItem}{\vskip 6pt}{\par}
\newenvironment{rubric}{}{}
\newenvironment{titlePart}{}{\par }

\newcolumntype{L}[1]{){\raggedright\arraybackslash}p{#1}}
\newcolumntype{C}[1]{){\centering\arraybackslash}p{#1}}
\newcolumntype{R}[1]{){\raggedleft\arraybackslash}p{#1}}
\newcolumntype{P}[1]{){\arraybackslash}p{#1}}
\newcolumntype{B}[1]{){\arraybackslash}b{#1}}
\newcolumntype{M}[1]{){\arraybackslash}m{#1}}
\definecolor{label}{gray}{0.75}
\def\unusedattribute#1{\sout{\textcolor{label}{#1}}}
\DeclareRobustCommand*{\xref}{\hyper@normalise\xref@}
\def\xref@#1#2{\hyper@linkurl{#2}{#1}}
\begingroup
\catcode`\_=\active
\gdef_#1{\ensuremath{\sb{\mathrm{#1}}}}
\endgroup
\mathcode`\_=\string"8000
\catcode`\_=12\relax

\usepackage[a4paper,twoside,lmargin=1in,rmargin=1in,tmargin=1in,bmargin=1in,marginparwidth=0.75in]{geometry}
\usepackage{framed}

\definecolor{shadecolor}{gray}{0.95}
\usepackage{longtable}
\usepackage[normalem]{ulem}
\usepackage{fancyvrb}
\usepackage{fancyhdr}
\usepackage{graphicx}
\usepackage{marginnote}

\renewcommand{\@cite}[1]{#1}


\renewcommand*{\marginfont}{\itshape\footnotesize}

\def\Gin@extensions{.pdf,.png,.jpg,.mps,.tif}

  \pagestyle{fancy}

\usepackage[pdftitle={A Three Phase Scheduling for System Energy Minimization of Weakly Hard Real Time Systems},
 pdfauthor={}]{hyperref}
\hyperbaseurl{}

	 \paperwidth210mm
	 \paperheight297mm
              
\def\@pnumwidth{1.55em}
\def\@tocrmarg {2.55em}
\def\@dotsep{4.5}
\setcounter{tocdepth}{3}
\clubpenalty=8000
\emergencystretch 3em
\hbadness=4000
\hyphenpenalty=400
\pretolerance=750
\tolerance=2000
\vbadness=4000
\widowpenalty=10000

\renewcommand\section{\@startsection {section}{1}{\z@}%
     {-1.75ex \@plus -0.5ex \@minus -.2ex}%
     {0.5ex \@plus .2ex}%
     {\reset@font\Large\bfseries}}
\renewcommand\subsection{\@startsection{subsection}{2}{\z@}%
     {-1.75ex\@plus -0.5ex \@minus- .2ex}%
     {0.5ex \@plus .2ex}%
     {\reset@font\Large}}
\renewcommand\subsubsection{\@startsection{subsubsection}{3}{\z@}%
     {-1.5ex\@plus -0.35ex \@minus -.2ex}%
     {0.5ex \@plus .2ex}%
     {\reset@font\large}}
\renewcommand\paragraph{\@startsection{paragraph}{4}{\z@}%
     {-1ex \@plus-0.35ex \@minus -0.2ex}%
     {0.5ex \@plus .2ex}%
     {\reset@font\normalsize}}
\renewcommand\subparagraph{\@startsection{subparagraph}{5}{\parindent}%
     {1.5ex \@plus1ex \@minus .2ex}%
     {-1em}%
     {\reset@font\normalsize\bfseries}}


\def\l@section#1#2{\addpenalty{\@secpenalty} \addvspace{1.0em plus 1pt}
 \@tempdima 1.5em \begingroup
 \parindent \z@ \rightskip \@pnumwidth 
 \parfillskip -\@pnumwidth 
 \bfseries \leavevmode #1\hfil \hbox to\@pnumwidth{\hss #2}\par
 \endgroup}
\def\l@subsection{\@dottedtocline{2}{1.5em}{2.3em}}
\def\l@subsubsection{\@dottedtocline{3}{3.8em}{3.2em}}
\def\l@paragraph{\@dottedtocline{4}{7.0em}{4.1em}}
\def\l@subparagraph{\@dottedtocline{5}{10em}{5em}}
\@ifundefined{c@section}{\newcounter{section}}{}
\@ifundefined{c@chapter}{\newcounter{chapter}}{}
\newif\if@mainmatter 
\@mainmattertrue
\def\chaptername{Chapter}
\def\frontmatter{%
  \pagenumbering{roman}
  \def\thechapter{\@roman\c@chapter}
  \def\theHchapter{\roman{chapter}}
  \def\thesection{\@roman\c@section}
  \def\theHsection{\roman{section}}
  \def\@chapapp{}%
}
\def\mainmatter{%
  \cleardoublepage
  \def\thechapter{\@arabic\c@chapter}
  \setcounter{chapter}{0}
  \setcounter{section}{0}
  \pagenumbering{arabic}
  \setcounter{secnumdepth}{6}
  \def\@chapapp{\chaptername}%
  \def\theHchapter{\arabic{chapter}}
  \def\thesection{\@arabic\c@section}
  \def\theHsection{\arabic{section}}
}
\def\backmatter{%
  \cleardoublepage
  \setcounter{chapter}{0}
  \setcounter{section}{0}
  \setcounter{secnumdepth}{2}
  \def\@chapapp{\appendixname}%
  \def\thechapter{\@Alph\c@chapter}
  \def\theHchapter{\Alph{chapter}}
  \appendix
}
\newenvironment{bibitemlist}[1]{%
   \list{\@biblabel{\@arabic\c@enumiv}}%
       {\settowidth\labelwidth{\@biblabel{#1}}%
        \leftmargin\labelwidth
        \advance\leftmargin\labelsep
        \@openbib@code
        \usecounter{enumiv}%
        \let\p@enumiv\@empty
        \renewcommand\theenumiv{\@arabic\c@enumiv}%
	}%
  \sloppy
  \clubpenalty4000
  \@clubpenalty \clubpenalty
  \widowpenalty4000%
  \sfcode`\.\@m}%
  {\def\@noitemerr
    {\@latex@warning{Empty `bibitemlist' environment}}%
    \endlist}

\def\tableofcontents{\section*{\contentsname}\@starttoc{toc}}
\parskip0pt
\parindent1em
\def\Panel#1#2#3#4{\multicolumn{#3}{){\columncolor{#2}}#4}{#1}}
\newenvironment{reflist}{%
  \begin{raggedright}\begin{list}{}
  {%
   \setlength{\topsep}{0pt}%
   \setlength{\rightmargin}{0.25in}%
   \setlength{\itemsep}{0pt}%
   \setlength{\itemindent}{0pt}%
   \setlength{\parskip}{0pt}%
   \setlength{\parsep}{2pt}%
   \def\makelabel##1{\itshape ##1}}%
  }
  {\end{list}\end{raggedright}}
\newenvironment{sansreflist}{%
  \begin{raggedright}\begin{list}{}
  {%
   \setlength{\topsep}{0pt}%
   \setlength{\rightmargin}{0.25in}%
   \setlength{\itemindent}{0pt}%
   \setlength{\parskip}{0pt}%
   \setlength{\itemsep}{0pt}%
   \setlength{\parsep}{2pt}%
   \def\makelabel##1{\upshape ##1}}%
  }
  {\end{list}\end{raggedright}}
\newenvironment{specHead}[2]%
 {\vspace{20pt}\hrule\vspace{10pt}%
  \phantomsection\label{#1}\markright{#2}%

  \pdfbookmark[2]{#2}{#1}%
  \hspace{-0.75in}{\bfseries\fontsize{16pt}{18pt}\selectfont#2}%
  }{}
      \def\TheFullDate{2011-04-30 (revised: 30 April 2011)}
\def\TheID{\makeatother }
\def\TheDate{2011-04-30}
\title{A Three Phase Scheduling for System Energy Minimization of Weakly Hard Real Time Systems}
\author{}\makeatletter 
\makeatletter
\newcommand*{\cleartoleftpage}{%
  \clearpage
    \if@twoside
    \ifodd\c@page
      \hbox{}\newpage
      \if@twocolumn
        \hbox{}\newpage
      \fi
    \fi
  \fi
}
\makeatother
\makeatletter
\thispagestyle{empty}
\markright{\@title}\markboth{\@title}{\@author}
\renewcommand\small{\@setfontsize\small{9pt}{11pt}\abovedisplayskip 8.5\p@ plus3\p@ minus4\p@
\belowdisplayskip \abovedisplayskip
\abovedisplayshortskip \z@ plus2\p@
\belowdisplayshortskip 4\p@ plus2\p@ minus2\p@
\def\@listi{\leftmargin\leftmargini
               \topsep 2\p@ plus1\p@ minus1\p@
               \parsep 2\p@ plus\p@ minus\p@
               \itemsep 1pt}
}
\makeatother
\fvset{frame=single,numberblanklines=false,xleftmargin=5mm,xrightmargin=5mm}
\fancyhf{} 
\setlength{\headheight}{14pt}
\fancyhead[LE]{\bfseries\leftmark} 
\fancyhead[RO]{\bfseries\rightmark} 
\fancyfoot[RO]{}
\fancyfoot[CO]{\thepage}
\fancyfoot[LO]{\TheID}
\fancyfoot[LE]{}
\fancyfoot[CE]{\thepage}
\fancyfoot[RE]{\TheID}
\hypersetup{citebordercolor=0.75 0.75 0.75,linkbordercolor=0.75 0.75 0.75,urlbordercolor=0.75 0.75 0.75,bookmarksnumbered=true}
\fancypagestyle{plain}{\fancyhead{}\renewcommand{\headrulewidth}{0pt}}

\date{}
\usepackage{authblk}

\providecommand{\keywords}[1]
{
\footnotesize
  \textbf{\textit{Index terms---}} #1
}

\usepackage{graphicx,xcolor}
\definecolor{GJBlue}{HTML}{273B81}
\definecolor{GJLightBlue}{HTML}{0A9DD9}
\definecolor{GJMediumGrey}{HTML}{6D6E70}
\definecolor{GJLightGrey}{HTML}{929497} 

\renewenvironment{abstract}{%
   \setlength{\parindent}{0pt}\raggedright
   \textcolor{GJMediumGrey}{\rule{\textwidth}{2pt}}
   \vskip16pt
   \textcolor{GJBlue}{\large\bfseries\abstractname\space}
}{%   
   \vskip8pt
   \textcolor{GJMediumGrey}{\rule{\textwidth}{2pt}}
   \vskip16pt
}

\usepackage[absolute,overlay]{textpos}

\makeatother 
      \usepackage{lineno}
      \linenumbers
      
\begin{document}

             \author[1]{Dr. Smriti  Agrawal}

             \affil[1]{  JB Institute of Engg and Technology, Hyderabad, India}

\renewcommand\Authands{ and }

\date{\small \em Received: 22 March 2011 Accepted: 19 April 2011 Published: 30 April 2011}

\maketitle


\begin{abstract}
        


This paper aims to present a three phase scheduling algorithm that offers lesser energy consumption for weakly hard real time systems modeled with (????, ????) constraint. The weakly hard real time system consists of a DVS processor (frequency dependent) and peripheral devices (frequency independent) components. The energy minimization is done in three phase taking into account the preemption overhead. The first phase partitions the jobs into mandatory and optional while assigning processor speed ensuring the feasibility of the task set. The second phase proposes a greedy based preemption control technique which reduces the energy consumption due to preemption. While the third phase refines the feasible schedule received from the second phase by two methods, namely speed adjustment and delayed start. The proposed speed adjustment assigns optimal speed to each job whereas fragmented idle slots are accumulated to provide better opportunity to switch the component into sleep state by delayed start strategy as a result leads to energy saving. The simulation results and examples illustrate that our approach can effectively reduce the overall system energy consumption (especially for systems with higher utilizations) while guaranteeing the (????, ????) at the same time.

\end{abstract}


\keywords{Dynamic power down, Dynamic voltage scaling, model, Preemption Control, Scheduling, W eakly hard real time system.}

\begin{textblock*}{18cm}(1cm,1cm) % {block width} (coords) 
\textcolor{GJBlue}{\LARGE Global Journals \LaTeX\ JournalKaleidoscope\texttrademark}
\end{textblock*}

\begin{textblock*}{18cm}(1.4cm,1.5cm) % {block width} (coords) 
\textcolor{GJBlue}{\footnotesize \\ Artificial Intelligence formulated this projection for compatibility purposes from the original article published at Global Journals. However, this technology is currently in beta. \emph{Therefore, kindly ignore odd layouts, missed formulae, text, tables, or figures.}}
\end{textblock*}


\let\tabcellsep& 	 	 		 
\section[{Introduction}]{Introduction}\par
eal time applications are usually composed of set of tasks that interact with each other by exchanging messages. These tasks and their corresponding messages are often invoked repeatedly and are required to complete their services by respective deadlines. Examples of such applications include process control automated manufacturing system and delivery of audio/video frames in multimedia \hyperref[b0]{[1]}. In process control automated manufacturing system finishing beyond deadline can have a catastrophic effect whereas it may be annoying but acceptable without much loss in case of multimedia applications. An application with catastrophic effect is defined as hard real time whereas degraded performance application is soft real time in nature. Besides these hard and soft deadlines, multimedia application such as video conferencing is being referred to as weakly hard real time where missing of some tasks to complete by frame/sec from which at least 24 frames/sec are needed to visualize the movement of the image \hyperref[b16]{[17]}. When transmitting such frames if sufficient processing power and network bandwidth are available then a high quality video (receiving 30 frames/sec at destination) can be projected whereas degraded but acceptable quality of image is received. In case at least 24 frames/sec reach at the destination within deadline then desired quality is received. For weakly hard real time systems the assurance of minimum acceptable quality result is attained by imprecise concept \hyperref[b16]{[17,}\hyperref[b17]{18]} or by (??, ??) model \hyperref[b10]{[11]}. In imprecise concept a frame has to be received at destination (may be full or portion of it) while a partially received frame is considered as dropped frame in (??, ??). That is, all frames are required to be received for imprecise computation whereas certain frames may be dropped to maintain the minimum quality in (??, ??) constraints. To ensure a deterministic quality of service (QoS) to such systems, Hamdaoui and Ramanathan \hyperref[b0]{[1]} used the (??, ??) model in which, out of ?? consecutive task instances any ?? instances must meet their respective deadlines. The (??, ??) model scatters the effect of ?? deadline misses over a window of ?? which is different from accepting low miss rate in which a series of frames may be lost in a burst load leading to intolerant behavior in terms of missing a portion. Besides guaranteeing for QoS in terms of (??, ??) designer of real time system has to take care of minimization of energy especially for portable devices.\par
Energy-aware computing has been realized as one of the key area for research in real time systems \hyperref[b19]{[20]}. Energy-driven scheduling algorithms have been developed to reduce system's energy consumption while satisfying the timing constraints \hyperref[b1]{[2,}\hyperref[b2]{3,}\hyperref[b3]{4,}\hyperref[b4]{5,}\hyperref[b5]{6,}\hyperref[b18]{19,}\hyperref[b19]{20,}\hyperref[b20]{21,}\hyperref[b21]{22,}\hyperref[b24]{25]} are applicable for system having frequency dependent component (speed of the system varies with variation in its operating frequency) as resource. They will be able to reduce energy for system having frequency dependent components only. Besides frequency dependent component many systems have frequency independent components such as memory where above energy-driven voltage scheduling algorithms are inadequate.\par
For the systems having frequency dependent component energy consumption decreases with R ©2011 Global Journals Inc. (US) because on reducing the frequency, components which are frequency independent may be forced to be active for longer duration leading to more energy consumption. Authors \hyperref[b6]{[7,}\hyperref[b7]{8,}\hyperref[b8]{9,}\hyperref[b9]{10]} revealed that the frequency dependent component (processor core) consumes around 30\% of total energy while frequency independent (memory and peripherals devices) account for the remaining 70\% of energy consumption. Thus, the energy consumption of the frequency independent components plays a crucial role in overall energy consumption of a system. Group of researcher \hyperref[b5]{[6,}\hyperref[b27]{28,}\hyperref[b28]{29,} {\ref 32]} are focused for minimization of system energy (energy required by frequency dependent and independent component) rather than minimization of processor energy only. We use the term frequency dependent component to refer a processor and frequency independent for memory or peripheral devices. The three common techniques used for minimization of system energy are dynamic voltage scaling (DVS), dynamic power down (DPD) and Preemption control (PC) which will be discussed in the following subsection.\par
Dynamic Voltage Scaling (DVS), is based on adjusting the processor voltage and frequency on-the-fly \hyperref[b11]{[12,}\hyperref[b12]{13]} as energy requirement depends on operating frequency as well as voltage. The DVS attempts to reduce the processor speed to the extent it is possible, to obtain reduction in energy consumption. The speed of a frequency dependent component is said to be reduced if it is either operating at lower voltage or frequency. The task execution time increases with the reduction in processor speed leading to the following consequences:\par
? a release may miss its deadline while it is feasible at higher speed. ? the longer execution time will be able to decrease the energy consumption of the processor whereas the system energy may be increased ? frequency independent components remain active for longer time and increase the energy consumption. ? longer execution time implies more losses in energy due to leakage current  {\ref [44]}. However, the task execution times do not always scale linearly with the processor speed \hyperref[b12]{[13,}\hyperref[b13]{14,}\hyperref[b14]{15,}\hyperref[b15]{16,}\hyperref[b22]{23,}\hyperref[b25]{26]} because system may have some components (memory and peripheral devices) which do not scale with the operating frequency. Thus, DVS may not be efficient (further reduction in the speed would increase the energy consumption) when the system energy is considered. To solve this problem, authors \hyperref[b26]{[27,}\hyperref[b28]{29,}\hyperref[b29]{30,} {\ref 31]} suggested a lower bound (critical speed which balanced the energy consumption between the processor and peripheral devices to minimize the negative impact of the DVS. Niu and Quan \hyperref[b10]{[11]} used a combined static/dynamic partitioning strategy for (??, ??) model to reduce the processor energy and are not efficient for system energy. Beside the DVS energy minimization approach authors \hyperref[b34]{[35,}\hyperref[b35]{36]} suggested to switch off the system (power down) rather than scale down the speed to reduce the energy requirement which is discussed briefly in next subsection.\par
Dynamic Power Down (DPD) is switching to sleep mode (least power mode) of the unused components since the workload is not constant at all times. Although leaving a component (frequency dependent or independent) in idle/active state consumes power but switching to sleep mode too often may also be counter productive due to heavy context switching overheads. Thus, the DPD technique strives to balance the active and the sleeping time of the components.\par
Authors  {\ref [32,}\hyperref[b33]{34,}\hyperref[b34]{35]} used DPD to switch the processor and the peripheral devices into sleep mode based on threshold (minimum time for which the component may sleep for positive energy saving) value to save energy for both hard and soft real time systems. The Niu and Quan \hyperref[b35]{[36]} proposed a DPD based scheduling method to reduce the system energy consumption for weakly hard real-time systems with (??, ??) constraints. The reduction in energy consumption achieved by the DPD technique would increase with the enlargement of the idle slot length. The increment in the length of the idle slot can be achieved by the preemption control technique which is discussed in the following sub-section.\par
Preemption Control (PC) is allowing a lower priority job to continue execution even when a higher priority job is ready such that none miss their deadline. When a job starts execution on the processor then the associated devices are switched to active state in which they remain till it completes. Thus, if a lower priority job is preempted by the higher priority job then the associated components remain active and consume energy for the time for which the job is preempted. This extra consumption in the energy can be reduced by delaying the higher priority job if possible and completing the lower priority job in the meanwhile (laxity of the higher one). Moreover, each time a job is preempted the context of the job needs to be saved and to be restored when it resumes. This context saving and retrieval would incur an overhead both in terms of time and energy. Thus, reducing number of preemptions reduces the response time of the job and undue energy dissipations due to preemption overhead, longer response time. Agrawal et. al. \hyperref[b28]{[29]} proposed a preemption control technique where the lower priority job is forced to execute at higher speed levels and complete before the arrival of a higher priority one. The authors themselves say that such a policy may not always lead to energy saving performance.\par
It is observed if only DPD is applied on a system then based on the threshold the components would be allowed to switch into sleep state and gain the energy reduction. Although, increasing the length or accumulating the idle slots further reduces the energy by DPD; DPD technique itself does not suggest any method to do so. While DVS would lower the assigned speed to each job and increase its execution time which in turn increases its response time. An increment in response time of a job not only increases the energy consumption by the associated components which remain active for longer time but also due to additional preemption which may occur. On the other hand, preemption control at the assigned speed may not be able to reduce the response time and/or number of preemptions. To address the shortcoming of each (DVS, DPD and PC) and to enhance the overall reduction in system energy consumption we suggest a judicious combination of all the above techniques.\par
The length of the idle slot can be enhanced by selecting better speed level for DVS (suggested in third phase) or reducing the response time by PC (suggested in second phase) or delaying the execution of a job (suggested in third phase). The priorities are assigned based on the earliest deadline first (EDF) policy in which the job whose absolute deadline is lower has higher priority. The number of preemptions for different jobs of a task may vary as the earliest deadline first scheduling is dynamic at task level and arrival of mandatory jobs depends on the partitioning strategy. Thus, a job level DVS view would increase its efficiency (suggested in third phase). On the other hand, increasing the speed of few jobs (selected based on the greedy technique suggested in phase-2) could reduce energy consumbed by lower priority job with longer execution as well as preemption overhead.\par
Recently, two groups of researcher Agrawal et. al. \hyperref[b28]{[29]} and Niu and Quan \hyperref[b36]{[37]} have used a two phase approach for system energy minimization for weakly hard real time system with (??, ??) constraints. The authors have suggested a combination of DVS, DPD and PC techniques however, neither have they taken into the account the preemption overhead nor do they balance the effects of the three techniques.\par
In this paper we aim to minimize the system energy consumption for weakly hard real time system modeled with (??, ??) constraints using a fine balance of DVS, DPD and PC. The reduction in energy consumption is achieved at both, task as well as job level for which we adopt a three phase approach. In the first phase the task level view of the system is taken. The feasibility to each task in the set is ensured keeping in account the preemption overhead. While the second and third phase adopts job level view. A greedy based preemption control technique is proposed at the job level in the second phase. It is further refined in the third phase by adjusting the speed assigned to a job and accumulation of idle slots by delayed start to effectively balance the three approaches.\par
The rest of the paper is organized as follows; the next section provides a system model followed by section III which presents our new approach along with algorithm. The simulation results are enlisted in section IV whereas section V concludes the work. 
\section[{II.}]{II.} 
\section[{System Model}]{System Model}\par
This paper aims to minimize the system energy consumption for a system having independent periodic task set ?? = \{?? 1 , ?? 2 , ?? 3 ? ?? ?? \} that assures minimum QoS defined by (??, ??). The priority of a job is assigned based on the earliest deadline first policy. The system consists of two types of components namely, frequency dependent (processor) and frequency independent (memory and peripheral devices). The following considerations are made:\par
1. The frequency independent components are represented by set ?? = \{?? 1 , ?? 2 , ?? 3 ? ?? ?? \} where ?? ?? represents a memory or peripheral device. The power management policies reported in \hyperref[b28]{[29,}\hyperref[b36]{37,}\hyperref[b38]{39]} used only two states (active and sleeping) for a frequency independent component and there is no ?? ???????? ?? ???????? + ?? ???????? ?? ???????? + ?? ?????? (?? ? ?? ???????? ? ?? ???????? ) (2)\par
To attain a positive energy gain the energy consumed by switching to sleep state (as measured in equation (  {\ref 2})) should be less than that consumed in the idle mode (as measure in equation (  {\ref 1})), i.e., (2)<(  {\ref 1})? ?? ???????? ?? ???????? + ?? ???????? ?? ???????? + ?? ?????? (?? ? ?? ???????? ? ?? ???????? ) < ?? ???????? ??\par
In worst case when no energy gain is measured (equation (1)=(  {\ref 2})) then the threshold ??? can be estimated??? = ??? ???????? ?? ???????? + ?? ???????? ?? ???????? ? ?? ?????? (?? ???????? + ?? ???????? )? ??? ???????? ??? ?????? ? ?\textbf{(3)}\par
The threshold of each component can be estimated by equation \hyperref[b2]{(3)}. Substituting the value of ?? ???????? ?? ???????? + ?? ???????? ?? ???????? in terms of th in the equation (  {\ref 2}) we get,?????? ???????? ? ?? ?????? ? + ?? ?????? (?? ???????? + ?? ???????? ) + ?? ?????? (?? ? ?? ???????? ? ?? ???????? )\par
(3a) Energy saved by switching to sleep state would be the difference between equations (  {\ref 1}) and (3a).???????? = ?? ???????? ?? ? ?????? ???????? ? ?? ?????? ? + ?? ?????? = (?? ? ???)??? ???????? ? ?? ?????? ?\par
If (?? > ???)then the energy gain (????????) would be positive hence, energy consumed in switching to sleep state and remain in it for ?? units of time would reduce energy consumption and hence, is advisable to switch to sleep state. For (?? = ???)the energy consumed to remain idle or sleep are same. 
\section[{Global Journal of Computer Science and Technology}]{Global Journal of Computer Science and Technology}\par
Volume XI Issue X Version I When (?? < ???)then it is recommended to remain in the idle state rather than to switch to sleep state in which it would consume more energy. Thus, the energy consumed by a component for an idle slot of (??)would be:??(??) = ? ?? ???????? ?? 0 ? ?? ? ??? ?? ???????? ??? + ?? ?????? (?? ? ???) ?? > ??? (4)\par
Critical speed of the task (ð??"ð??" ???? ): The DVS technique advocates that reduction in the speed of the frequency dependent component would reduce the energy consumption. This may not be true when the system is having both frequency dependent and independent components because lower speed leads to longer execution time for which the frequency independent components would remain active and consume energy. That is, on reduction in speed, the system energy consumption first decreases then it starts increasing incase speed is further reduced. The speed at which system energy requirement is least for a task is called the critical speed. Each task in the system has its own critical speed because its computation demand and set of associated components may differ. It can be determined as follows:\par
Consider a task ?? ?? with computation time ?? ?? (??) = ?? ?? ?? ? + ?? ?? where ?? ?? and ?? ?? are the computation requirement for frequency dependent component at the speed s and independent component respectively. Then the energy consumed by the task ?? ?? at speed ?? would be ?? ?? (??) = ?? ?? (??) * ??? ??ð??"ð??" + ? ?? ???????? ,?? ?? ????? ? where ð??"ð??" is the speed index of ??, i.e., ?? ð??"ð??" = ??. Thus, ?? ??ð??"ð??" is the rate of energy consumption of the processor at speed ??(???? ?? ð??"ð??" ), ? ?? ???????? ,?? ?? ????? is the total energy consumption rate of all the frequency independent devices associated with task ?? ?? .\par
In \hyperref[b10]{[11,}\hyperref[b12]{13]} authors have used energy model where energy consumed by the processor is directly proportional to the cube of the operating speed i.e., ?? ?? ? ?? 3 hence, ?? ?? = ???? 3 where ?? ? ?? and ?? is the proportionality constant.\par
As the task energy consumption function, ?? ?? (??) is a strictly convex function over speed ?? it can have a single speed at which energy consumption could be minimum, this can be estimated by setting its first derivative to zero followed by the second derivative to be positive. Thus, taking the first derivative of ?? ?? (??) with respect to ?? as???? (??) ???? = ????? ?? ?? 2 ? ?????? 3 + ? ?? ???????? ,?? ?? ????? ?? + ???? ?? ?? ? + ?? ?? ?(3???? 2 )? = 0 ???? (??) ???? = 3???? ?? ?? 4 + 2???? 3 ?? ?? ? ?? ?? ? ?? ???????? ,?? ?? ????? = 0\par
(5) By Descartes' Rule of Signs  {\ref [43]}, there is only one positive root of the equation since the sign between two consecutive terms changes only once. This root is referred to as the critical speed of the task ?? ?? represented as ?? ???? .\par
In the following subsection we discuss the various methods for partitioning the jobs into mandatory and optional. The partitioning problem is NP-hard \hyperref[b39]{[40]} hence, various heuristic techniques (Red\textunderscore Pattern, Even\textunderscore Pattern, Rev\textunderscore Pattern, Hyd\textunderscore Pattern, Mix\textunderscore Pattern) can be used which are discussed below:\par
Deeply Red-Pattern (Red\textunderscore Pattern): This pattern was proposed by Koren \& Shasha \hyperref[b40]{[41]}. Mathematically, this can be described as?? ?? ?? = ? 1, 0 ? ?? ?????? ?? ?? < ?? ?? 0, ????????????????? ?? = 0, 1, ? . . ?? ?? ? 1 When ?? ?? ?? is 1, release ?? ?? ?? is mandatory while it is\par
optional in case 0 is assigned to ?? ?? ?? . We refer this pattern as Red\textunderscore Pattern. Advantage of applying this pattern to a task set for energy minimization is that it aligns the optional jobs together so that a component has a better opportunity to switch into sleep state to save energy. For a task whose critical speed is higher than or equal to the highest possible speed (?? ?? ) the operating speed should never be scaled down.\par
Assigning Red\textunderscore Pattern to such a task helps to extend the idle interval for switching to sleep state. However, for a task whose critical speed is lower than ?? ?? Red\textunderscore Pattern overloads the system leading to large size busy intervals and need more energy to be feasible. Evenly Distributed Pattern (Even\textunderscore Pattern): Ramanathan \hyperref[b41]{[42]} used evenly distributed pattern in which the first release is always mandatory and the distribution of mandatory and optional is evenly i.e., alternating. Mathematically, this can be described as?? ?? ?? = ? 1, ???? ?? = ?? ?? * ?? ?? ?? ?? ? * ?? ?? ?? ?? ? 0, ????????????????? ?????? ?? = 0, 1, ? ?? ?? ? 1 
\section[{Reverse}]{Reverse}\par
Evenly Distributed Pattern (Rev\textunderscore Pattern): This pattern is a reverse of the Even\textunderscore Pattern, hence the first release is always optional and the distribution of mandatory and optional is alternating. Mathematically:?? ?? ?? = ? 0, ???? ?? = ?? ?? * (?? ?? ??? ?? ) ?? ?? ? * ?? ?? (?? ?? ??? ?? ) ? 1, ????????????????? ?? = 0, 1, ? ?? ?? ? 1\par
This pattern was first proposed by Niu \& Quan \hyperref[b10]{[11]} and we refer it as Rev\textunderscore Pattern.\par
Hybrid Pattern (Hyd\textunderscore Pattern): This pattern was proposed by \hyperref[b10]{[11]} in which instead of assigning same pattern to all the tasks in the task set, they assigned different type of patterns (Red\textunderscore Pattern or Even\textunderscore Pattern) to each task. For example, task ?? 1 is partitioned into mandatory and optional according to Red\textunderscore Pattern while ?? 2 and ?? 3 could be assigned Red\textunderscore Pattern or Even\textunderscore Pattern. Thus, yielding 2 ?? possible combination of pattern assignment where ?? is the number of the tasks in the task set. Mixed Pattern (Mix\textunderscore Pattern): The hybrid pattern allows a task in the task set to be scheduled by Red\textunderscore Pattern or Even\textunderscore Pattern. In both cases at least the first release of each task is mandatory (if not more e.g. (??, ??) = \{(3, 5), (4, 7)\} first two releases of both the task are mandatory with the Hyd\textunderscore Pattern) and are in phase hence, will overload the system, forcing it to be feasible with high energy requirement. Therefore, to improve the performance of Hyd\textunderscore Pattern authors \hyperref[b28]{[29]} suggested a mixed pattern (Mix\textunderscore Pattern) which combines the Hyd\textunderscore Pattern with the Rev\textunderscore Pattern yielding 3 ?? possible combination of pattern assignment. By including the Rev\textunderscore Pattern the Mix\textunderscore Pattern would give a task fairer chance to execute at lower speed assignment (the second release of both the task in the above example would be mandatory while the first may or may not be so. Since the second release of a task would usually be out of phase with the other releases and will not overload the system as hybrid pattern does). Thus, Mix\textunderscore Pattern is the superset of all the above suggested patterns. In this paper we would use Mix\textunderscore Pattern. 
\section[{Global Journal of Computer Science and Technology}]{Global Journal of Computer Science and Technology}\par
In the following section we propose the energy minimization technique for the weakly hard real time system which was modeled in this section. 
\section[{III.}]{III.} 
\section[{Three-phase Energy Minimization Technique}]{Three-phase Energy Minimization Technique}\par
This work is refinement of the two phase approach suggested by Agrawal et. al. \hyperref[b28]{[29]}. In the first phase authors estimate the critical speed for each task and use a static partitioning strategy called Mix\textunderscore Pattern. Based on the critical speed and the mandatory job distribution authors assigned the speed to each task such that the task set is feasible. While in phase two the authors suggested a preemption control strategy. They suggested increasing the speed of the lower priority job so that it can complete before preemption. However, the reduction in energy due to preemption control may be less than the energy consumed to fit the lower priority job in the slack of the higher priority job, i.e., the technique may be counter productive. In such cases they suggest to execute at the assigned speed as was done by Niu and Quan \hyperref[b36]{[37]}.\par
In this paper we suggest a three phase technique for system energy minimization. In the first phase we generate a feasible schedule which assigns the speed closest to the critical speed to all the tasks partitioned by Mix\textunderscore Pattern. In the second phase, we refine the preemption control technique suggested by Agrawal et. al. \hyperref[b28]{[29]}, Niu and Quan \hyperref[b36]{[37]} after locating their pitfalls. Further, in the third phase we measure the idle slots available on either side of a job execution window. Based on which we adjust the speed of the job or delay the starting of a job so as to combine the two slot. In the following subsection we illustrate the three phases.\par
Phase-1: Task Level Feasibility and Speed Assignment In this phase we first estimate the critical speed of each task according to the equation \hyperref[b4]{(5)}. Further, the jobs of each task are marked mandatory/optional according to Mix\textunderscore Pattern and speed closest to the critical speed on which the task set is feasible is assigned. The algorithm for speed\textunderscore fitting as suggested by \hyperref[b28]{[29]}   
\section[{Phase-2: Modified Preemption Control Technique}]{Phase-2: Modified Preemption Control Technique}\par
The feasible schedule generated after speed\textunderscore fitting for the task set ?? in the first phase may not be optimal in terms of energy consumption. To further reduce the energy consumption in this phase we suggest a greedy based preemption control followed by speed adjustment and delayed start in third phase.\par
When a job is scheduled on the processor then the associated devices are switched to active state in which they remain till it completes. Thus, if a lower priority job is preempted by the higher priority job then the associated device remain active and consume energy for the time for which the job is preempted. This extra consumption in the energy can be reduced by 
\section[{Global Journal of Computer Science and Technology}]{Global Journal of Computer Science and Technology}\par
Volume XI Issue X Version I 2011 16 
\section[{May}]{May}\par
A Three Phase Scheduling for System Energy Minimization of Weakly Hard Real Time Systems? ?? = ????? ??ð??"ð??" ?? +1 ?? ?? (?? ð??"ð??" ?? +1 )? ? ??? ??ð??"ð??" ?? ?? ?? (?? ð??"ð??" ?? )?? ?? ?? ? ?? ?? ?? ?? ? ©2011 Global Journals Inc. (US)\par
delaying the higher priority job if possible and completing the execution of the lower priority job in the meanwhile (laxity).\par
The higher priority preempting job can be delayed up to its laxity available so that it does not miss its deadline. This laxity can be estimated as follows: ???????????? ? ?? = ?? ? ?? ?\par
where ?? ???????? is the current time when no higher job is available then ?????? ? ?? = ? . If the time available is sufficient to complete the job ?? ?? ?? non-preemptively as suggested by \hyperref[b36]{[37]} then we do so. However, when more than one higher priority jobs preempt a single lower priority job then approach suggested in \hyperref[b36]{[37]} may fail to finish the lower priority job earlier. This is due to the fact that once a higher job finishes and another higher priority job is available in the ready queue then it would be scheduled as it has priority higher than the incomplete preempted job. This can be observed from the example 1.\par
Example1: Consider a task set ?? = \{??? ?? (?? ???? ), ?? ?? , ?? ?? ?: ?15, 25, 25?, ?25, 100, 100?\}.\par
When scheduled without preemption control then the response time of the lower priority job ?? 2 1 after being preempted by ?? 1 2 and ?? 1 3 would be 70 refer figure 1a. However, as illustrated by figure 1b (obtained by utilizing the concept of preemption control used in \hyperref[b36]{[37]}) the response time of job ?? 2 1 remains 70 whereas the number of preemptions is reduced from 2 to 1. This is because ?? 2 1 is unable to complete in slack of ?? 1 2 which completes at time 50 after which the scheduler schedules the higher priority job ?? 1 3 since; no job is being preempted so no preemption control is applied.\par
Thus, we refine the preemption control approach suggested in \hyperref[b36]{[37]} without varying the speed as modified preemption control at assigned speed (MPCAS). Here a lower priority job may be allowed to restart even when higher priority job is ready, provided feasibility of the higher priority is assured. The effectiveness of this approach is seen in figure 1(c) where the response time of the job ?? 2 1 is reduced to 55 from 70. The proposed MPCAS approach is given as below: higher priority is assured. The effectiveness of this approach is seen in figure 1(c The MPCAS algorithm would reduce the response time of the lower priority job (?? 2\par
1 would finish at time 55 for the example) so the associated devices have better opportunity to switch to sleep state and save energy according to DPD. However, when component's DPD threshold is large than this reduction in response time may not be sufficient to allow the associated components to sleep and save energy. Agrawal et. al. \hyperref[b28]{[29]} increase the speed of the lower priority job and hence, reduce its execution time so that it can fit in the slack available before it could be preempted (speed of the job ?? 2 1 would be increased such that it would finish by 35 in the example). The authors themselves state that this may be counter productive. That is, increment in energy consumption by executing the lower priority job at higher speed is more than the energy reduction gained due to early switching to sleep state for some components. To overcome this drawback we suggest a speed refinement for the preempted lower priority job as well as preempting higher priority jobs. This speed combination is predicted by greedy based preemption control (GBPC) which utilizes right and left idle slot (refer figure  {\ref 2} and definition 1, 2, 3, 4) of the processor and the devices. \par
Energy estimation for processor during the idle slots:\par
For a processor idle slot ?????????? = ?? ???? ?? ?? ? ???? ????????? = ?? ???? ?? ?? ??, if this idle time is greater than threshold of the processor ????? then the processor would switch to sleep state otherwise remain in idle state. Thus, the energy consumption rate for the processor can be estimated from the equation (  {\ref 4}) is?? ???? ?? (????????) = ? ?? ?????????? ???????? 0 ? ???????? ? ????? ?? ?????????? ????? + ?? ???????? (???????? ? ?????) ???????? > ?????\textbf{(7)}\par
In the next subsection we estimate the energy consumed by the frequency dependent and independent components during job execution.\par
Energy (refer equation ( \hyperref[formula_14]{7})). The energy consumed during the execution of the job would be ?? ?? ?? ??? ?? ?? ? as estimated in the equation (  {\ref 8}). Thus, the energy consumption of the job ?? ?? ?? along with its left and the right idle slots is?? ?? ?? ??? ?? ?? ? = ?? ???? ?? ??? ???? ?? ?? ? + ?? ???? ?? ??? ???? ?? ?? ? + ?? ?? ?? ??? ?? ?? ? + ?? ???? ?? ??? ???? ?? ?? ? + ?? ???? ?? ??? ???? ?? ?? ? (9)\par
After estimating the energy we now discuss the technique for greedy based preemption control. If the lower priority job is preempted then the preemption control at the assigned speed is done (using PCAS algorithm) and the energy is estimated for the preempting higher priority jobs and the preempted lower priority job. If the lower priority job is still preempted by one or more, higher priority jobs then the response time of the lower priority can be further reduced. The reduction in the response time of the lower priority job can be achieved by increasing the speed of either the higher priority bottleneck job ?? ? ?? (such that ???? ?? ?? = ?(?????? ? ?? ? ?? ???????? ) + ?????????? ?? ?? ?) or the preempted lower priority job. The choice between the two is made based on the minimum increment in energy, i.e., ?????? ???? ? ?? (?? ? ?? ), ??? ?? ?? ??? ?? ?? ?? where??? ? ?? (?? ? ?? ) = ?? ? ??? ð??"ð??" ? +1 ???? ??ð??"ð??" ? +1 + ? ?? ???????? ,?? ? ????? ? ? ?? ? ??? ð??"ð??" ? +1 ???? ??ð??"ð??" ? + ? ?? ???????? ,?? ? ????? ? (ð??"ð??" ? is the speed index of ?? ? ?? ) similarly, estimate ??? ?? ?? ??? ?? ?? ?.\par
The speed of the chosen job is incremented and the energy is estimated. The process of further reduction in response time of the lower priority job is repeated and the energy for different combinations is estimated till either a) the lower priority job is no longer preempted; b) all the jobs are assigned maximum available speed level. The speed combination which requires minimum energy is assigned and the schedule is updated. Further, energy minimization is achieved by improving the schedule obtained in phase-2. 
\section[{Phase-3: Speed Adjustment and Delay Start (SADS)}]{Phase-3: Speed Adjustment and Delay Start (SADS)}\par
After assigning speeds to each task in the phase-1 ensuring feasibility followed by the reduction in energy consumption by preemption control in the second phase. This phase will adjust the speed assigned (increase or decrease) and accumulate the idle slot (delay start a job if possible) to reduce the energy consumption. In this phase detail analysis of the preemption controlled schedule is done where right and left idle slot (refer figure 1 and definition 1, 2, 3, 4) of the processor and the device are re-estimated. After estimating the energy we now propose the new technique for improvement namely, speed adjustment and delay start which we finally combine to provide overall reduction in energy. The next subsection discusses the speed adjustment. 
\section[{Global}]{Global} 
\section[{Speed adjustment}]{Speed adjustment}\par
In the phase-1 the feasibility of the task set was to be ensured by assigning the speed at the task level, while the phase-2 increases the speed of some jobs to decrease loss in energy due to preemption. In this phase the speed is adjusted by considering each job separately to reduce the energy consumption based on the left and right idle slots. The philosophy for this approach is that speed fitting was done at the task level to make all the jobs feasible. Executing job at higher speed may favor switching to sleep state by more components (sleeping for more time) in some cases while executing at lower speed may favor the idea of DVS. Thus, depending on the left and the right idle slots we estimate the optimal speed for each job which may be different from that of the task. In the next subsection we measure the energy consumption at the job level after adjusting the speed.\par
Energy estimation of a job after adjusting the speed i.  {\ref Energy}  ?? ?? ?? ??? ?? ? = ?? ???? ?? ??? ???? ?? ?? ? + ?? ???? ?? ??? ???? ?? ?? ? + ?? ?? ?? ??? ?? ? + ?? ???? ?? ??? ???? ?? ?? ? ? ?? ?? ??? ?? ?? + ?? ???? ?? ??? ???? ?? ?? ? ? ?? ?? ??? ?? ??.\par
Thus, in general the energy estimated at any speed s can be stated as:?? ?? ?? (??) = ?? ???? ?? ??? ???? ?? ?? ? + ?? ???? ?? ??? ???? ?? ?? ? + ?? ?? ?? (??) + ?? ???? ?? ??? ???? ?? ?? ? ???????+?????????????????? ????????\textbf{(10)}\par
Where ? ?? ?? (??) = ?? ?? ?? (??) ? ?? ?? ?? ??? ???? ?? ?\par
In the next subsection we discuss the technique for accumulation of idle slots by delaying the task execution window. 
\section[{Delay Start Technique}]{Delay Start Technique}\par
In this part of the third phase we aim to assemble the idle slots fragmented on the two sides of a job by delaying its execution if the schedule permits i.e. shift the job execution towards its deadline. This may enable the associated components to sleep or sleep for longer time to save energy. A job may delay its execution up to its deadline so as to be feasible. But extending the job up to its deadline may force the up coming job to miss their deadlines. Thus, a job would be allowed to consume only the processor right idle slot so that it may not push the upcoming jobs. Thus, a job ?? ?? ?? may shift up to ?????? ??? ?? ?? , ?? ???? ?? ?? ?, without missing its own deadline or modifying the schedule of the subsequent jobs. Hence, a delay will move the task execution by an amount?? ?? ?? (??) = ?????? ??? ?? ?? , ?? ???? ?? ?? ? ? ?? ?? ?? (??).\par
In the next subsection we measure the energy consumption at the job level after delaying its execution and adjusting its speed. 
\section[{Global Journal of Computer Science and Technology}]{Global Journal of Computer Science and Technology}\par
Volume XI Issue X Version I Energy estimation of a job with delayed start i. Energy estimation due to delayed start at assigned speed ð??"ð??" ???? ?? : Delaying a job ?? ?? ?? would shift it towards right will elongate the left idle slot of the components hence provide better opportunity to the components to switch to sleep state. Thus, when execution of a job is shifted then its left idle slot will increase by ?? ?? ?? ??? ???? ?? ? while the right idle slot will decrease by the same. The energy consumption of the job ?? ?? ?? along with its left and the right idle slots is ii. Energy estimation due to delayed start at speed ð??"ð??" ?? < ð??"ð??" ???? ?? : In a scenario where some of the components may not be able to switch to the sleep state (depending on their thresholds) then executing the job at a lower speed (?? ?? ) than the assigned speed ??? ???? ?? ? may save energy and reduce length of the right idle slot. Further, delaying the job would add the remaining right idle slot to the left idle slot, hence save energy. The energy consumption will be?? ?? ?? ??? ???? ?? ? =?? ?? ?? (?? ?? ) = ?? ???? ?? ??? ???? ?? ?? + ?? ?? ?? (?? ?? )? + ?? ???? ?? ??? ???? ?? ?? + ?? ?? ?? (?? ?? )? + ?? ?? (?? ?? ) + ?? ???? ?? ??? ???? ?? ?? ? ?? ?? ?? (?? ?? )? + ?? ???? ?? ??? ???? ?? ?? ? ?? ?? ?? (?? ?? )?.\par
iii. Energy estimation due to delayed start at speed ð??"ð??" ?? > ð??"ð??" ???? ?? : When some components are unable to sleep in the left idle slot generated after accumulation with speed ?? ???? ?? then increasing the speed would reduce the response time. Thus, a combination of higher speed and shift would elongate the left idle slot to provide room for switching into the sleep state. Hence, the energy consumption will be?? ?? ?? ??? ?? ? = ?? ???? ?? ??? ???? ?? ?? + ?? ?? ?? ??? ?? ?? + ?? ???? ?? ??? ???? ?? ?? + ?? ?? ?? ??? ?? ?? + ?? ?? ?? ??? ?? ? + ?? ???? ?? ??? ???? ?? ?? ? ?? ?? ?? ??? ?? ?? + ?? ???? ?? ??? ???? ?? ?? ? ?? ?? ?? ??? ?? ??.\par
Thus, in general the energy estimated at any speed s and shifting can be stated as?? ?? ?? (??) = ?? ???? ?? ??? ???? ?? ?? + ?? ?? ?? (??)? + ?? ???? ?? ??? ???? ?? ?? + ?? ?? ?? (??)? + ?? ?? (??) + ?? ???? ?? ??? ???? ?? ?? ? ?? ?? ?? (??)? + ?? ???? ?? ??? ???? ?? ?? ? ?? ?? ?? (??)?\textbf{(11)}\par
Combining adjusting the speed and delayed start concept Finally, combining the two concepts the speed adjustment (equation ( \hyperref[formula_18]{10})) and delayed (equation ( \hyperref[formula_23]{11} In the following section we present the results obtained by implementation of the approach discussed in this section. 
\section[{IV.}]{IV.} 
\section[{Simulation Results}]{Simulation Results}\par
This section compares the performance of our proposed three phase scheduling algorithm (in which we apply greedy based preemption control, speed adjustment and delayed start) referred to as GBSADS with the higher speed preemption control (HSPC) approach suggested by \hyperref[b28]{[29]}. All simulation results are computed on a DVS processor with operating speed level set as ?? = \{0, ?? 1 , ?? 2 , ?? 3 ? ?? 10 \} where ?? ?? is a uniform random number generated in the interval \hyperref[b9]{[10,} {\ref 200]}. We consider ten types of devices with multiple instances forming a pool of devices. For a task, devices are randomly selected from this pool. Rate of energy consumption for a device is computed based on the energy required by the processor at the maximum speed, i.e., ?? ???????? ,?? = Þ?? ??10 where Þ is a uniform random number in the range [0. \hyperref[b0]{1,}\hyperref[b19]{20]}. The task set ?? = \{?? 1 , ?? 2 , ?? 3 ? ?? ?? \} with (??, ??) utilization U (i.e. ? ?? ?? ?? ?? ?? ?? ?? ?? ? a uniform random number in the range (0, 1]). The preemption overhead and energy required during preemption are uniform random number in the range (0, 1] and (0, 100] respectively. Similar type of considerations where taken in \hyperref[b28]{[29]}. The other parameters are summarized in the table \hyperref[tab_11]{3}.\par
The key parameter, measured for simulation is energy consumed during one MK\textunderscore hyperperiod. The result reported is the average value of results obtained for hundred task sets. The following section deals with the variation in energy with component threshold, task set utilization and device to processor energy proportionality constant. Effect of component threshold on Energy consumption: The value of the threshold of a component indicates the length of the idle slot for which the component will consume same energy in active state as it would do so in sleep state. Thus, as the threshold increases the requirement for long idle slots increases in absence of which energy consumption increases. However, increment in threshold will affect the energy requirement up to a certain value (length of the longest idle slot) beyond which no component would switch to sleep state, so any further increment in the threshold will not increase the energy consumption of the system. The effect of the increment in threshold for frequency independent and dependent components can be seen in the figure  {\ref 3}  The effect of the variation of the device threshold is shown in the figure  {\ref 3}. When the device threshold is lower (0-80) it can be observed that the energy consumption by GBSADS approach is almost 23\% lower than that of the HSPC approach, while this reduction in the energy consumption is more prominent (approximately 32\%) at higher values of the threshold range (90-140). Beyond 130 it is constant due to the fact that at lower threshold value both GBSADS and HSPC control preemption around the assigned speed. But as this threshold increases the shorter idle slots become inadequate to switch the device into sleep state, the greedy based preemption control in second phase and delay start done in the third phase of the GBSADS approach assembles these idle slots efficiently and hence, provide better opportunity to switch the device into sleep state. Similar trends are seen for the variation in the processor threshold (refer figure  {\ref 4}) in which we get an overall gain of approximately 30\%.\par
EFFECT OF RATE OF PROCESSOR TO DEVICE ENERGY (Þ) ON ENERGY CONSUMPTION: The rate of energy consumption by a frequency independent component is a constant. This constant could be less than the rate of the energy consumption in the processor (for processor dominant system Þ ? 1) while for device dominant systems this would be greater than one. This variation in the ratio (0.1-10) for both processor and device dominant systems is observed in the figure  {\ref 5} for which task sets of utilization U=[0.5, 0.6]. For lower value of the ratio (0.1-1) processor dominated system the GBSADS approach saves approximately 20\% of the energy and this saving increase up to 26\% for device dominant systems. A sudden rise in the energy consumption is observed for a value of Þ = 2 which indicates the dominance of the devices energy consumption and as more devices are added to such a system this rise is even more prominent. At lower level the DVS approach is more prominent due to the fact the processor energy consumption is dominant, the HSPC approach applies DVS and high speed preemption control which would be inadequate. On the other hand, GBSADS approach applies the concept of DVS at three levels (speed assignment, greedy based preemption control and speed adjustment) thus, a gain of   
\section[{May}]{May}\par
20\% is received. However, at the higher ratio the device energy consumption is dominant and hence DVS is less effective compared to the DPD technique. The GBSADS approach is able to accumulate the idle slots efficiently as it does delayed start along with speed adjustment while controlling the preemption based on greedy approach whereas HSPC only controlled preemption.\par
EFFECT OF SYSTEM UTILIZATION ON THE ENERGY CONSUMPTION: The energy consumption is measured as the system utilization increases for different values of Þ. The value of Þ indicates the dominance of the device energy consumption on the overall energy consumption of the system (higher its value more the system is device dominated). It can be observed from all the following figures (6, 7 and 8) that when the utilization is high (0.8-1) then the reduction in the energy consumption is substantial. This is because for such utilizations the system is overloaded hence, the speed assignment for the feasibility in the first phase is at higher speeds. The HSPC approach does not slow the once assigned speed while GBSADS approach may reduce the speed assigned to the out of phase jobs substantially leading to reduction in the energy consumption. Besides speed adjustment it also delays the start and controls the preemption of lower priority jobs to accumulate the idle slots favoring the sleeping off the components.\par
EFFECT OF ONLY PROCESSOR ENERGY CONSUMPTION (WHEN NO DEVICES ARE ATTACHED Þ=0): When no frequency independent components are associated with the system then the effect of the utilization on the system energy consumption can be seen in the figure  {\ref 6}. For lower utilization (0.1-0.3) the GBSADS approach consumes around 18\% less energy while this reduction improves up to around 24\% for medium utilizations (0.4-0.7) and still further up to approximately 30\% for higher utilizations. For lower utilizations the speed assigned by both approaches in first phase is close to the critical speed and hence, energy saving by GBSADS is only due to the delayed start in the third phase which accumulates the fragmented idle slots and favor the processor to switch into the sleep mode (or sleep for longer time). For task sets with higher utilization, the speed assigned to a task in the first phase are generally higher than its critical speed due to overloading of the system by both the approaches. For reducing the energy consumption the HSPC approach the execution of the preempted jobs at either higher or at the same assigned speed. Executing preempted jobs at higher speed of such systems having no devices attached would be counter productive while execution at the assigned speed would not incur any reduction in energy. On the other hand, GBSADS would adjust the speed (may reduce the assigned speed) taking into the account the thresholds and the idle slots in the second and the third phase so as to balance the impact of DVS, DPD and PC techniques. 
\section[{WHEN THE DEVICE TO PROCESSOR RATE OF ENERGY}]{WHEN THE DEVICE TO PROCESSOR RATE OF ENERGY}\par
CONSUMPTION IS COMPARABLE Þ=1: The effect of the utilization on the overall energy consumption can be seen from the figure  {\ref 7}. The trend of the energy consumption is similar to that observed in the figure  {\ref 6}. But for higher utilizations the reduction in the energy consumption is less (approximately 26\%) as compared to 30\% in figure  {\ref 6}. This is due to the fact; when higher speeds are assigned in the phase-1 reducing the speed by the GBSADS approach increases the response time of a job which would in turn force the devices to remain active for longer period and consume energy hence, lower gain is observed when compared to system comprising of frequency dependent components only. dominated system can be observed in the figure  {\ref 8} which is similar to the trend seen in figure  {\ref 6} and 7 in which at higher utilizations GBSADS approach performs better than HSPC approach.\par
V. 
\section[{Conclusion}]{Conclusion}\par
In this paper we presented a three phase scheduling algorithm which minimizes the system energy consumption for weakly hard real-time system while maintaining the (??, ??) guarantee. The system consists of a DVS processor (capable of operating at various frequencies) and frequency independent peripheral devices. We proposed a three phase scheduling algorithm where in the first phase a mixed pattern based partitioning is used to determine the mandatory and optional jobs of a task and assign speed levels to ensure the feasibility of the task set.\par
However, the major contribution of the work lays in the second and third phase which analyses and refines the first phase schedule at job level. In the second phase we formulated a greedy based preemption control technique which adjusted the speed of the preempted/preempting jobs based on the laxity to further reduce the energy consumption. The third phase focused on accumulation of the idle slots through utilizing the concept of delay start and speed adjustment. The speed adjustment is a method of assigning an optimal speed to individual job based on the availability of idle slot on the either side of the execution window of a job and the threshold of the components. While delayed start technique delays the execution of a job up to its available slack time to assimilate the idle slots fragmented on the either side of a job's execution window. The effectiveness of the proposed algorithm has been discussed through examples and extensive simulation results.\par
The proposed three phase scheduling algorithm is compared with \hyperref[b28]{[29]} where the authors have adopted similar scenario. The simulation results indicate that the three phase scheduling algorithm consumes approximately 30\% less energy for task set at higher utilizations (0.8-1) while it is 24\% better for lower utilization systems (0.1-0.7). The reduction in the energy consumption is 30\% for higher values of the threshold of a component while lesser improvement is observed approximately 23\% for lower threshold value. The proposed algorithm was targeted for device dominant systems for which it performed 26\% better. However, the simulations indicate that the approach is valid for processor dominant systems as well for which an improvement of about 20\% is received. Thus, the proposed algorithm is capable of performing better in the system/process energy constrained systems when the system is overloaded (utilization is high) or the threshold of the components are high.\begin{figure}[htbp]
\noindent\textbf{14}\includegraphics[]{image-2.png}
\caption{\label{fig_0}2011 14 May}\end{figure}
        \begin{figure}[htbp]
\noindent\textbf{1} \par 
\begin{longtable}{P{0.22585078534031414\textwidth}P{0.6241492146596859\textwidth}}
\multicolumn{2}{l}{?? ??,?? Computation required by the frequency dependent}\\
\tabcellsep components of task ?? ??\\
\multicolumn{2}{l}{?? ??,?? Computation required by the frequency}\\
?????? ?? ?? ?? ?? ?? ???? ?? ??\tabcellsep independent components of task ?? ?? Release time of a job ?? ?? ?? = ??  *  ?? ?? ?? , i.e., ?????? ?? Absolute deadline of a job ?? ?? ?? = ??  *  ?? ?? + ?? ?? ?? , i.e., ?? ?? Finish time of a job ?? ?? ??\\
?? ????\tabcellsep Critical speed of the processor for the task ?? ??\\
?? ????\tabcellsep Speed of the processor assigned to the task ?? ??\\
?? ???? ?? ?? ?? ??\tabcellsep ?? Speed of the processor assigned to the job ?? ?? Frequency independent component ?? ?? is associated with task ?? ??\\
?? ?? ???????? ,??\tabcellsep Energy consumed per unit time by the device ?? ?? associated with task ?? ?? in sleep state\\
?? ???????? ,?? ??\tabcellsep Energy consumed per\end{longtable} \par
 
\caption{\label{tab_0}Table 1 :}\end{figure}
 \begin{figure}[htbp]
\noindent\textbf{} \par 
\begin{longtable}{P{0.6525486381322957\textwidth}P{0.00033073929961089494\textwidth}P{0.1971206225680934\textwidth}}
\multicolumn{2}{l}{recourse conflicts. Same consideration is taken}\tabcellsep switching the system has to save the state of the task at\\
in this work.\tabcellsep \tabcellsep the beginning and restore the saved status at the end of\\
\multicolumn{2}{l}{2. The frequency dependent components (DVS}\tabcellsep sleep state (switching from sleep state to active state).\\
\multicolumn{2}{l}{processor) can operate at ?? + 1 discrete}\tabcellsep These two activities incur an overhead called the DPD\\
\multicolumn{2}{l}{voltage levels, i.e., The symbols used in this paper are summarized}\tabcellsep overhead. To have a positive energy saving the component should not be switched to sleep state for duration (??) less than the DPD threshold ??? which can be estimated as follows: Energy consumed by a component when it remains idle during idle slot ?? is ?? ???????? ?? (1) Energy consumed in sleep state during ?? Energy consumed by the component to go into sleep state is\\
\multicolumn{2}{l}{in the table1 while the terms used are discussed in the}\\
next subsection.\tabcellsep \\
a) Terms Used\tabcellsep \\
\multicolumn{2}{l}{MK\textunderscore hyperperiod (??): It can be defined as the}\\
\multicolumn{2}{l}{point after which all the task in the set are in phase and}\\
\multicolumn{2}{l}{(??, ??) pattern for each task is restarted i.e. the situation}\\
\multicolumn{2}{l}{at time t = 0 is restored, mathematically,?? = ??????((?? ??  *}\\
\multicolumn{2}{l}{?? ?? ) ????????? ?? = 1, 2 ? ??) where LCM stands for least}\\
common multiple.\tabcellsep \\
\multicolumn{2}{l}{in ?? : It is the sum ?? (??)? of a job ?? ?? Response time ??? ??}\\
\multicolumn{2}{l}{the sleep state Energy consumed per unit time by the processor when running at a speed ?? ?? (?? ???? = ???? ?? 3 where ?? is constant) ?? and higher priority of the time requirement of the job ?? ?? ?? ???? preempting jobs. Mathematically, ?? ?? ?? (??) = ?? ?? (??) + ? (?? ? (?? ??? ?? ) + ð?"?ð?"?) ??? ? ?? ??? ( ??,?? ) where ?? (??,?? ) is the set of}\\
\multicolumn{2}{l}{????? DPD threshold of the processor ?? ?? mandatory jobs preempting ?? ?? MK\textunderscore hyperperiod ð?"?ð?"? ??????? ?? ?? , ?????? ?? ?? + ?? ?? ?? ,???1 (?? ?? )?. The equation ?? ?? during the time ?? (??) is an Preemption Overhead is context switching time required when a higher priority preempts a lower iterative equation which can be solved using different}\\
\multicolumn{2}{l}{priority task iterations represented by ?? = 0, 1, 2 ? ?. For the first}\\
\multicolumn{2}{l}{?? ð?"?ð?"? iteration ?? ?? Energy consumed during each preemption ?? ,0 (??) = ?? ?? (??). The iterative equation ?? ?? ?? ,?? (??) terminates when either of the two conditions is satisfied:}\\
\multicolumn{2}{l}{a) value of the two consecutive iteration is same i.e.,}\\
\multicolumn{2}{l}{?? ?? ?? ,???1 (??) = ?? ?? ?? ,?? (??) or b) value exceeds its relative deadline i.e., ?? ?? ?? ,?? (??) > ?? ?? .}\\
DPD Threshold (????): In DPD policy\tabcellsep a\\
\multicolumn{2}{l}{component is switched to a sleep state on the}\\
\multicolumn{2}{l}{occurrence of idle slot to save energy. For such a}\end{longtable} \par
 
\caption{\label{tab_1}unit time by the device ?? ?? associated with task ?? ?? in active state ????? ?? DPD threshold of the device ?? ?? ?? ?????????? Energy consumed per unit time by the processor in the idle state ?? ???????? Energy consumed per unit time by the processor}\end{figure}
 \begin{figure}[htbp]
\noindent\textbf{} \par 
\begin{longtable}{P{0.85\textwidth}}
// Greedy approach based speed fitting algorithm\\
Algorithm speed\textunderscore fitting(task set ??)\\
Begin\\
1. Repeat\\
2. While (not feasible)\\
Do\\
a. For all task ?? ?? ? ??\\
Do\\
i. If (ð??"ð??" ð??"ð??" ??\\
iii. Goto step 2\\
Else\\
i. Goto step 2b. to select next smallest ? ??\\
Repeat\\
End\\
In the following subsection we describe the job level\\
second phase.\end{longtable} \par
  {\small\itshape [Note: ?? < ??) 1. Compute Else 1. ? ?? = ? Repeat b. Select a task ?? ?? with smallest ? ?? c. If (ð??"ð??" ?? < ??) i. ð??"ð??" ?? = ð??"ð??" ?? + 1 ii. ?? ???? = ??]} 
\caption{\label{tab_2}}\end{figure}
 \begin{figure}[htbp]
\noindent\textbf{} \par 
\begin{longtable}{P{0.85\textwidth}}
?? of mandatory jobs which preempts ?? ?? ?????? ? ?? > ?????? ?? ?? . Hence, the time available for execution non-such that\\
preemptively by the lower job would be\\
???? ?? ?? = ?????? ??????? ??? ? ?? ??? (??,?? ) :??????? ? ?? +???????????? ? ?? ?<?? ???????? (?????? ? ?? ?\\
??????????+???????????????,?????????????????\end{longtable} \par
 
\caption{\label{tab_3}}\end{figure}
 \begin{figure}[htbp]
\noindent\textbf{} \par 
\begin{longtable}{P{0.85\textwidth}}
Begin\\
1. Set the ?? ???????? = 0 // the current time\\
2. For all jobs in one MK\textunderscore hyperperiod\\
Do\\
a. if(incomplete\textunderscore queue is empty)\\
i. if(ready\textunderscore queue is empty)\\
1. wait for a job to arrive in it\\
2. Update ?? ???????? ?? be read from the ready\textunderscore queue ii. Let ?? ?? ?? iii. Estimate the time available ???? ?? iv. If ????? ?? ?? )? ?? ? ?? ?? (?? ?? 1. Execute ?? ?? ?? non-preemptively for ?? ?? (?? ?? ?? ) ?? ) 2. Update ?? ???????? = ?? ???????? + ?? ?? (?? ?? 3. ?? ?? ??? ?? ?? ? = 0\\
4. Goto step 2a.\\
v. Else\\
1. Execute ?? ?? ?? non-preemptively for ???? ?? ?? 2. ?? ?? ??? ?? ?? ? = ?? ?? ??? ?? ?? + ð?"?ð?"? ?? ? ? ???? ?? 3. Insert ?? ?? ?? into incomplete\textunderscore queue based on its\\
priority\\
4. Update ?? ???????? = ?? ???????? + ???? ?? ??\\
5. Goto step 2a.\\
b. Else\\
?? be read from the incomplete\textunderscore queue i. Let ?? ?? ?? ii. Estimate the time available ???? ?? iii. If ????? ?? ?? )? ?? ? ?? ?? (?? ?? 1. Execute ?? ?? ?? ) ?? non-preemptively for ?? ?? (?? ?? ?? ) 2. Update ?? ???????? = ?? ???????? + ?? ?? (?? ?? 3. ?? ?? ??? ?? ?? ? = 0\\
4. Goto step 2a.\\
Else\\
?? into incomplete\textunderscore queue based on its 1. Insert ?? ?? priority\\
2. Goto step 2.a.i.\\
Repeat\\
End\end{longtable} \par
 
\caption{\label{tab_4}}\end{figure}
 \begin{figure}[htbp]
\noindent\textbf{} \par 
\begin{longtable}{P{0.85\textwidth}}
?? ?? ?? (?? ?? ) = ?? ???? ?? ??? ???? ?? ?? ? + ?? ???? ?? ??? ???? ?? ?? ? + ?? ?? ?? (?? ?? )\\
+ ?? ???? ?? ??? ???? ?? ?? ? ? ?? ?? (?? ?? )?\\
+ ?? ???? ?? ??? ???? ?? ?? ? ? ?? ?? (?? ?? )?\\
iii. Energy estimation at speed ð??"ð??" ?? > ð??"ð??" ???? ?? : When some\\
components are unable to switch to sleep state then\\
if a job executes at a higher speed then it will\\
complete earlier. This would improve the possibility to\\
switch the components into sleep state and increase\\
the sleeping time of the already sleeping\\
?? ??? ?? ? = components. The time thus saved is ? ?? ?? ?? ?? ??? ?? ? ? ?? ?? ?? ??? ???? ?? ? which will increase length of the\\
right idle slot. Hence, the total energy consumption\\
will be\\
?? : The energy estimation at speed ð??"ð??" ???? consumed by the device during the left (or right) idle\\
slot would ?? ???? ?? ??? ???? ?? ?? ? (or ?? ???? ?? ??? ???? ?? ?? ?) (refer equation (6))\\
while the energy consumption by the processor during\\
the left(or right) idle slot would be ?? ???? ?? ??? ???? ?? ?? ? (or\\
?? ???? ?? ??? ???? ?? ?? ? ) (refer equation (7)). The energy consumed during the execution of the job would be ?? ?? ?? ??? ???? ?? ? as\\
estimated in the equation (8). Thus, the energy\\
consumption of the job ?? ?? ?? along with its left and the\\
right idle slots is\\
?? ?? ?? ??? ???? ?? ? = ?? ???? ?? ??? ???? ?? ?? ? + ?? ???? ?? ??? ???? ?? ?? ? + ?? ?? ?? ??? ???? ?? ? + ?? ???? ?? ??? ???? ?? ?? ?\\
+ ?? ???? ?? ??? ???? ?? ?? ?\\
ii. Energy estimation at speed ð??"ð??" ?? < ð??"ð??" ????\end{longtable} \par
  {\small\itshape [Note: ?? : In a scenario where some of the components may not be able to switch to the sleep state (depending on their thresholds) then executing the job at a lower speed (?? ?? ) than the assigned speed ??? ???? ?? ? may save the processor energy. But this execution is subject to the availability of the right idle slot since this reduction in speed will force longer response time.]} 
\caption{\label{tab_7}}\end{figure}
 \begin{figure}[htbp]
\noindent\textbf{} \par 
\begin{longtable}{P{0.20852390852390854\textwidth}P{0.5944698544698545\textwidth}P{0.0010602910602910602\textwidth}P{0.003180873180873181\textwidth}P{0.01130977130977131\textwidth}P{0.031455301455301454\textwidth}}
1. Estimate ?? ?? ?? (??, 0) according to the equation (12)\tabcellsep \multicolumn{4}{l}{?? ?? ?? (??, ð?"?ð?"?) = ?? ???? ?? ??? ???? ?? ?? + ð?"?ð?"??? ?? ?? (??)? + ?? ???? ?? ??? ???? ?? ?? + ð?"?ð?"??? ?? ?? (??)? +}\\
2. If ??????? > ?? ?? ?? (??, 0)? ?? (??, 0) a. Update ?????? = ?? ?? b. Update ?? ???? ?? = ?? and shifting as ð?"?ð?"? ?? ?? = 0 End if ?? (??, 1) according to the equation (12) 3. Estimate ?? ?? 4. If ??????? > ?? ?? ?? (??, 1)? ?? (??, 1) a. Update ?????? = ?? ?? b. Update ?? ???? ?? = ?? and shifting as ð?"?ð?"? ?? ?? = 1 End if End for End for 2. Estimate the total energy for a MK\textunderscore hyperperiod (??) End while End\tabcellsep \multicolumn{4}{l}{?? ?? ?? (??) + ?? ???? ?? ??? ???? ?? ?? ? ð?"?ð?"??? ?? ?? (??) ? ð?"?ð?"? ? ? ?? ?? (??)? + ?? ???? ?? ??? ???? ?? ?? ? ð?"?ð?"??? ?? ?? (??) ? ð?"?ð?"? ? ? ?? ?? (??)? Where s ? S set of speed levels available, ð?"?ð?"? is a binary (12) number which has a value 1 if a shift operation is made and ð?"?ð?"? ? is its complement. Thus, for minimum energy consumption of a job ?? ?? ?? must be assigned a speed s and delayed start operation ð?"?ð?"? such that ?? ?? , ?? ???????? ,?? ?? >: < ?? 1 1 , 10, 54687, 0.0 >, < ?? 2 2 , 30, 262285, 0.0 >. The preemption overhead is ð?"?ð?"? = 5 and energy it consumes for preemption is E ð?"?ð?"? = 8568937. The critical speed (?? ??1 , ?? ??2 ) as estimated from equation (5) would be 25 and 30 respectively. The MK\textunderscore hyperperiod will be 100. // Speed adjustment and delay start based third phase algorithm //Algorithm SADS(task set T) //input is the feasible schedule generated after speed fitting and GBPC after phase-2 Begin 1. While (no further reduction in energy) Do a. For each job ?? ?? ?? ? ?? where ?? is the set of mandatory ?? (??, ??}\tabcellsep 2011 May Global Journal of Computer Science and Technology 21 Volume XI Issue X Version I\\
\tabcellsep \multicolumn{4}{l}{jobs in the task set ?? arriving during any}\\
\tabcellsep MK\textunderscore hyperperiod (??)\tabcellsep \tabcellsep \\
\tabcellsep Do\tabcellsep \tabcellsep \\
\tabcellsep \multicolumn{4}{l}{i. Estimate the left and the right idle time for device}\\
\tabcellsep ??? ???? ?? ?? , ?? ???? ?? ?? ?and\tabcellsep the\tabcellsep processor\tabcellsep ??? ???? ?? ?? , ?? ???? ?? ?? ?\\
\tabcellsep \multicolumn{3}{l}{according to definitions 1, 2, 3 and 4.}\\
\tabcellsep \multicolumn{4}{l}{ii. Assign speed to job ?? ?? ?? as ?? ???? ?? = ?? ???? and shifting as ?? = 0 ð?"?ð?"? ?? iii. Assign ?????? = ?? ?? ?? ??? ???? ?? , ð?"?ð?"? ?? ?? ? according to the}\\
))\tabcellsep equation (12)\tabcellsep \tabcellsep \\
for considering each job for improvement individually we\tabcellsep \multicolumn{2}{l}{iv. For every speed ?? ? ??}\tabcellsep \\
get\tabcellsep Do\tabcellsep \tabcellsep \\
©2011 Global Journals Inc. (US)\tabcellsep \tabcellsep \tabcellsep \end{longtable} \par
 
\caption{\label{tab_9}}\end{figure}
 \begin{figure}[htbp]
\noindent\textbf{2} \par 
\begin{longtable}{P{0.049484536082474224\textwidth}P{0.03505154639175258\textwidth}P{0.009278350515463918\textwidth}P{0.01958762886597938\textwidth}P{0.020103092783505153\textwidth}P{0.2721649484536082\textwidth}P{0.2639175257731959\textwidth}P{0.18041237113402062\textwidth}}
ð??"ð??" ???? ??\tabcellsep ð??"ð??" ???? ??\tabcellsep ð??"ð??" ???? ??\tabcellsep ð??"ð??" ???? ??\tabcellsep ð??"ð??" ???? ??\tabcellsep ???? ?? ??\tabcellsep Energy\tabcellsep Remark\\
25\tabcellsep \multicolumn{2}{l}{25 25}\tabcellsep 25\tabcellsep 30\tabcellsep 100\tabcellsep \multicolumn{2}{l}{56393661 Uncontrolled Preemption technique with DVS and DPD}\\
25\tabcellsep \multicolumn{2}{l}{25 25}\tabcellsep 25\tabcellsep 30\tabcellsep 75\tabcellsep \multicolumn{2}{l}{33473217 Preemption control as suggested by [37]. Reduction in energy consumption is 40.6\%.}\\
25\tabcellsep \multicolumn{2}{l}{25 25}\tabcellsep 25\tabcellsep 105\tabcellsep 35\tabcellsep \multicolumn{2}{l}{36900380 Preemption control by increasing the speed of the lower priority job as suggested by}\\
\tabcellsep \tabcellsep \tabcellsep \tabcellsep \tabcellsep \tabcellsep \tabcellsep {}[29].\\
\multicolumn{3}{l}{Phase 2: GBPC}\tabcellsep \tabcellsep \tabcellsep \tabcellsep \tabcellsep \\
25\tabcellsep \multicolumn{2}{l}{25 25}\tabcellsep 25\tabcellsep 30\tabcellsep 60\tabcellsep \multicolumn{2}{l}{29538942 Performing preemption control at the assigned speed (ASPC). This incapable of}\\
\tabcellsep \tabcellsep \tabcellsep \tabcellsep \tabcellsep \tabcellsep \tabcellsep preventing preemption but reduces the response time. Reduction in energy from [37]\\
\tabcellsep \tabcellsep \tabcellsep \tabcellsep \tabcellsep \tabcellsep \tabcellsep 11.7\% and 47.6\% from uncontrolled preemption technique.\\
25\tabcellsep \multicolumn{2}{l}{30 25}\tabcellsep 25\tabcellsep 30\tabcellsep \multicolumn{3}{l}{58.3 29126514 Increasing the speed of ?? 1 2 based on the ??? 1 2 (?? 1 2 ) = 31757.1, ??? 2 1 (?? 2 1 ) = 91715.}\\
\tabcellsep \tabcellsep \tabcellsep \tabcellsep \tabcellsep \tabcellsep \tabcellsep Preemption could not be prevented but the energy consumption is decreased.\\
25\tabcellsep \multicolumn{2}{l}{30 25}\tabcellsep 25\tabcellsep 35\tabcellsep \multicolumn{3}{l}{57.3 29219229 ?E 1 2 (s 1 2 ) = 94063.1, ?E 2 1 (s 2 1 ) = 91715. Increasing the speed of ? 2 1}\\
25\tabcellsep \multicolumn{2}{l}{30 25}\tabcellsep 25\tabcellsep 37\tabcellsep 57\tabcellsep \multicolumn{2}{l}{29312320 ?E 1 2 (s 1 2 ) = 94063.1, ?E 2 1 (s 2 1 ) = 92790. Increasing the speed of ?? 2 1}\\
25\tabcellsep \multicolumn{2}{l}{35 25}\tabcellsep 25\tabcellsep 37\tabcellsep \multicolumn{3}{l}{55.8 29092841 ?E 1 2 (s 1 2 ) = 94063.1, ?E 2 1 (s 2 1 ) = 185809. Increasing the speed of ? 1 2}\\
25\tabcellsep \multicolumn{2}{l}{37 25}\tabcellsep 25\tabcellsep 37\tabcellsep \multicolumn{3}{l}{55.5 29076167 ?E 1 2 (s 1 2 ) = 62511, ?E 2 1 (s 2 1 ) = 185809. Increasing the speed of ? 1 2}\\
25\tabcellsep \multicolumn{2}{l}{40 25}\tabcellsep 25\tabcellsep 37\tabcellsep \multicolumn{3}{l}{38.7 16205293 ?E 1 2 (s 1 2 ) = 98151, E 2 1 (s 2 1 ) = 185809. Increasing the speed of ? 1 2 . Preemption is}\\
\tabcellsep \tabcellsep \tabcellsep \tabcellsep \tabcellsep \tabcellsep \tabcellsep avoided. Reduction in energy consumption by 51.59\% from [29, 37] and 71.3\% from\\
\tabcellsep \tabcellsep \tabcellsep \tabcellsep \tabcellsep \tabcellsep \tabcellsep uncontrolled preemption is received.\\
\multicolumn{3}{l}{Phase -3: SADS}\tabcellsep \tabcellsep \tabcellsep \tabcellsep \tabcellsep \\
\multicolumn{5}{l}{Delaying job ? 1 4 for 10 units}\tabcellsep \tabcellsep \multicolumn{2}{l}{15648423 Reduction of 53.3\% from [29, 37] and 72.3\% from uncontrolled preemption is}\\
\tabcellsep \tabcellsep \tabcellsep \tabcellsep \tabcellsep \tabcellsep \tabcellsep received.\end{longtable} \par
 
\caption{\label{tab_10}Table 2 :}\end{figure}
 \begin{figure}[htbp]
\noindent\textbf{3} \par 
\begin{longtable}{P{0.2577512776831346\textwidth}P{0.41269165247018735\textwidth}P{0.17955706984667802\textwidth}}
Parameter\tabcellsep Condition\tabcellsep Range\\
UTh Utilization\tabcellsep Is assigned\tabcellsep 0.01\\
Threshold\tabcellsep \tabcellsep \\
?? ?? Utilization\tabcellsep If ?? ? ? ?? ???1 ? ????? the select a uniform\tabcellsep (0, ?? ? ? ?? ???1 ]\\
\tabcellsep random number\tabcellsep \\
\tabcellsep If ?? ? ? ?? ???1 < ????? then assign\tabcellsep ?? ?? = ?? ? ? ?? ???1\\
?? ?? worst case\tabcellsep select a uniform\tabcellsep (0,100]\\
execution time\tabcellsep random number\tabcellsep \\
?? ?? period\tabcellsep select a uniform\tabcellsep (0,1000]\\
\tabcellsep random number\tabcellsep \\
?? ?? deadline\tabcellsep select a uniform\tabcellsep {}[?? ?? , ?? ?? ]\\
\tabcellsep random number\tabcellsep \\
?? ??\tabcellsep Is a random integer\tabcellsep {}[1,10]\\
\tabcellsep selected uniformly\tabcellsep \\
?? ?? is the number\tabcellsep Assigned a value\tabcellsep ??? ?? ?? ?? ?? ?? ?? ?? ? ?\\
of mandatory jobs in ?? ??\tabcellsep \tabcellsep \\
thp processor\tabcellsep select a uniform\tabcellsep {}[0, 200]\\
threshold\tabcellsep random number\tabcellsep \end{longtable} \par
 
\caption{\label{tab_11}Table 3 :}\end{figure}
 			\footnote{A Three Phase Scheduling for System Energy Minimization of Weakly Hard Real Time Systems ©2011 Global Journals Inc. (US)} 		 		\backmatter  			  				\begin{bibitemlist}{1}
\bibitem[Hamdaoui and Ramanathan (1995)]{b0}\label{b0} 	 		‘A dynamic priority assignment technique for streams with (m, k)-firm deadlines’.  		 			M Hamdaoui 		,  		 			P Ramanathan 		.  	 	 		\textit{IEEE Trans. Compute}  		Dec. 1995. 44  (12)  p. .  	 
\bibitem[Kim et al. ()]{b21}\label{b21} 	 		‘A dynamic voltage scaling algorithm for dynamic-priority hard real-time systems using slack analysis’.  		 			W Kim 		,  		 			J Kim 		,  		 			S L Min 		.  	 	 		\textit{Proc. DATE},  				 (DATE)  		2002. 788.  	 
\bibitem[Agrawal and Yadav ()]{b28}\label{b28} 	 		\textit{A Preemption Control Technique for System Energy Minimization of Weakly Hard Real-time Systems},  		 			S Agrawal 		,  		 			R S Yadav 		,  		 			Ranvijay 		.  		2008.  	 
\bibitem[Yao et al. ()]{b18}\label{b18} 	 		‘A scheduling model for reduced CPU energy’.  		 			A F Yao 		,  		 			A Demers 		,  		 			S Shenker 		.  	 	 		\textit{Proc. AFCS},  				 (AFCS)  		1995. p. .  	 
\bibitem[Chen and Cheng]{b17}\label{b17} 	 		‘An Imprecise Algorithm for Real-Time Compressed Image and Video Transmission’.  		 			Xiao Chen 		,  		 			Albert Mo Kim Cheng 		.  	 	 		\textit{Sixth International Conference on Computer Communications and Networks, Proceedings},  				 (Las Vegas, NV, USA)  		p. .  	 
\bibitem[Zhang and Chakraborty (2006)]{b23}\label{b23} 	 		‘An Unified approach for fault-tolerance and dynamic power management in fixed-priority real-time embedded systems’.  		 			Y Zhang 		,  		 			K Chakraborty 		.  	 	 		\textit{IEEE Transactions on Computer-Aided Design of Integrated Circuit and Systems}  		January 2006. 25  (1) .  	 
\bibitem[Huang and Cheng (1995)]{b16}\label{b16} 	 		‘Applying Imprecise Algorithms to Real-Time Image and Video Transmission’.  		 			X Huang 		,  		 			A M K Cheng 		.  	 	 		\textit{Real-Time Technology and Applications Symposium},  				 (Chicago, USA)  		May 1995. p. .  	 
\bibitem[Bernat and Burns (1997)]{b20}\label{b20} 	 		‘Combining (n;m)-hard deadlines and dual priority scheduling’.  		 			G Bernat 		,  		 			A Burns 		.  	 	 		\textit{Proc. RTSS},  				 (RTSS)  		Dec. 1997. p. .  	 
\bibitem[Lu and Micheli (2001)]{b37}\label{b37} 	 		‘Comparing systemlevel power management’.  		 			Y H Lu 		,  		 			G D Micheli 		.  	 	 		\textit{IEEE Design and Test of Computers}  		March-April 2001.  	 
\bibitem[Moss´e et al. ()]{b1}\label{b1} 	 		‘Compiler-Assisted Dynamic Power-Aware Scheduling for Real-Time Applications’.  		 			D Moss´e 		,  		 			H Aydin 		,  		 			B Childers 		,  		 			R Melhem 		.  	 	 		\textit{Workshop on Compiler and OS for Low Power},  				2000.  	 
\bibitem[Aydin et al. ()]{b24}\label{b24} 	 		‘Dynamic and Aggressive Power-Aware Scheduling Techniques for Real-Time Systems’.  		 			H Aydin 		,  		 			R Melhem 		,  		 			D Moss´e 		,  		 			P Mejia-Alvarez 		.  	 	 		\textit{Proceedings of the 22nd IEEE Real-time Systems Symposium (RTSS'01)},  				 (the 22nd IEEE Real-time Systems Symposium (RTSS'01))  		2001.  	 
\bibitem[Qiu et al. ()]{b2}\label{b2} 	 		‘Dynamic Power Management in a Mobile Multimedia System with Guaranteed Quality-of-Service’.  		 			Q Qiu 		,  		 			Q Wu 		,  		 			M Pedram 		.  	 	 		\textit{ACM/IEEE Design Automation Conference},  				2001. p. .  	 
\bibitem[Jejurikar and Gupta ()]{b26}\label{b26} 	 		\textit{Dynamic voltage scaling for system-wide energy minimization in real-time embedded systems},  		 			R Jejurikar 		,  		 			R Gupta 		.  		2004.  	 
\bibitem[Jejurikar and Gupta ()]{b30}\label{b30} 	 		\textit{Dynamic voltage scaling for system-wide energy minimization in real-time embedded systems},  		 			R Jejurikar 		,  		 			R Gupta 		.  		2004. ISLPED.  	 
\bibitem[Doherty et al. ()]{b6}\label{b6} 	 		‘Energy and performance considerations for smart dust’.  		 			L Doherty 		,  		 			B Warneke 		,  		 			B Boser 		,  		 			K Pister 		.  	 	 		\textit{International Journal of Parallel Distributed Systems and Networks}  		2001.  	 
\bibitem[Quan and Hu ()]{b4}\label{b4} 	 		‘Energy Efficient Fixed-Priority Scheduling for Real-Time Systems on Variable Voltage Processors’.  		 			G Quan 		,  		 			X Hu 		.  	 	 		\textit{38th IEEE/ACM Design Automation Conference},  				2001. p. .  	 
\bibitem[Niu and Quan (2006)]{b10}\label{b10} 	 		‘Energy minimization for real time systems with (m, k)-guarantee’.  		 			L Niu 		,  		 			G Quan 		.  	 	 		\textit{IEEE Tans. On Very large scale integrated (VLSI) systems},  				July 2006. 14.  	 
\bibitem[Niu and Quan ()]{b19}\label{b19} 	 		‘Energy-Aware Scheduling for Real-Time Systems With (m; k)-Guarantee’.  		 			L Niu 		,  		 			G Quan 		.  		 TR-2005-005.  	 	 		\textit{Dept. Comput. Sci. Eng., Univ. South Carolina}  		2005.  	 	 (Tech. Rep.) 
\bibitem[Hua and Qu ()]{b5}\label{b5} 	 		‘Energy-Efficient Dual-Voltage Soft Real-Time System with (m, k)-Firm Deadline Guarantee’.  		 			S Hua 		,  		 			G Qu 		.  	 	 		\textit{CASES'04},  				 (Washington, DC, USA)  		September 22-25, 2004. p. .  	 
\bibitem[Quan and Hu ()]{b38}\label{b38} 	 		‘Enhanced fixed-priority scheduling with (m, k)-firm guarantee’.  		 			G Quan 		,  		 			X Hu 		.  	 	 		\textit{RTSS},  				2000. p. .  	 
\bibitem[Seth et al. ()]{b15}\label{b15} 	 		‘FAST: Frequency-Aware Static Timing Analysis’.  		 			K Seth 		,  		 			A Anantaraman 		,  		 			F Mueller 		,  		 			E Rotenberg 		.  	 	 		\textit{Proc. of the 24th IEEE Real-Time System Symposium},  				 (of the 24th IEEE Real-Time System Symposium)  		2003.  	 
\bibitem[Cucu and Goossens]{b36}\label{b36} 	 		\textit{Feasibility Intervals for Multiprocessor Fixed-Priority Scheduling of Arbitrary deadline Periodic Systems},  		 			Liliana Cucu 		,  		 			Jo¨el Goossens 		.  		p. E07.  	 
\bibitem[Choi et al. ()]{b14}\label{b14} 	 		‘Fine-grained dynamic voltage and frequency scaling for precise energy and performance trade-off based on the ratio of off-chip access to on-chip computation times’.  		 			K Choi 		,  		 			R Soma 		,  		 			M Pedram 		.  	 	 		\textit{Proceedings of Design, Automation and Test in Europe},  				 (Design, Automation and Test in Europe)  		2004.  	 
\bibitem[Global Journal of Computer Science and Technology Volume XI Issue X Version I (2011 27 May)]{b42}\label{b42} 	 		\textit{Global Journal of Computer Science and Technology Volume XI Issue X Version I},  		2011 27 May.  	 
\bibitem[Rong and Pedram ()]{b32}\label{b32} 	 		\textit{Hierarchical power management with application to scheduling},  		 			P Rong 		,  		 			M Pedram 		.  		2005. ISLPED.  	 
\bibitem[Kim and Ha ()]{b29}\label{b29} 	 		‘Hybrid run-time power management technique for real-time embedded system with voltage scalable processor’.  		 			M Kim 		,  		 			S Ha 		.  	 	 		\textit{OM'01},  				2001. p. .  	 
\bibitem[Jejurikar et al. ()]{b41}\label{b41} 	 		‘Leakage aware dynamic voltage scaling for real-time embedded systems’.  		 			R Jejurikar 		,  		 			C Pereira 		,  		 			R Gupta 		.  		 \url{http://www.purplemath.com/modules/drofsign.htm43}  	 	 		\textit{Proc. of the Design Automation Conf},  				 (of the Design Automation Conf)  		2004. p. .  	 
\bibitem[Zedlewski et al. ()]{b9}\label{b9} 	 		\textit{Modeling harddisk power consumption},  		 			J Zedlewski 		,  		 			S Sobti 		,  		 			N Garg 		,  		 			F Zheng 		,  		 			A Krishnamurthy 		,  		 			R Wang 		.  		2003. p. .  	 
\bibitem[Cheng and Goddard ()]{b31}\label{b31} 	 		\textit{Online energy-aware i/o device scheduling for hard real-time systems},  		 			H Cheng 		,  		 			S Goddard 		.  		2006. DATE.  	 
\bibitem[Ramanathan (1999)]{b40}\label{b40} 	 		‘Overload management in realtime control applications using (m; k)-firm guarantee’.  		 			P Ramanathan 		.  	 	 		\textit{IEEE Trans. Parallel. Distrib. Syst}  		Jun. 1999. 10  (6)  p. .  	 
\bibitem[Niu and Quan]{b35}\label{b35} 	 		\textit{Peripheral-Conscious Scheduling on Energy Minimization for Weakly Hard Real-time Systems},  		 			L Niu 		,  		 			G Quan 		.  		p. E07.  	 
\bibitem[Viredaz and Wallach ()]{b8}\label{b8} 	 		\textit{Power evaluation of a handheld computer},  		 			M A Viredaz 		,  		 			D A Wallach 		.  		2003. Micro: IEEE. p. .  	 
\bibitem[Qu and Potkonjak ()]{b3}\label{b3} 	 		‘Power Minimization Using System-Level partitioning of Applications with Quality of Service Requirements’.  		 			G Qu 		,  		 			M Potkonjak 		.  	 	 		\textit{IEEE/ACM International Conference on Computer-Aided Design},  				1999. p. .  	 
\bibitem[Saewong and Rajkumar ()]{b22}\label{b22} 	 		‘Practical Voltage-Scaling for Fixed-Priority Real-time Systems’.  		 			S Saewong 		,  		 			R Rajkumar 		.  	 	 		\textit{Proceedings of the IEEE Real-Time and Embedded Technology and Applications Symposium (RTAS'03)},  				 (the IEEE Real-Time and Embedded Technology and Applications Symposium (RTAS'03))  		2003.  	 
\bibitem[Swaminathan and Chakrabarty (2005)]{b33}\label{b33} 	 		‘Pruningbased, energy optimal, deterministic i/o device scheduling for hard real-time systems’.  		 			V Swaminathan 		,  		 			K Chakrabarty 		.  	 	 		\textit{Trans. on Embedded Computing Sys., ACM Transactions on Embedded Computing Systems}  		February 2005. 4  (1)  p. .  	 
\bibitem[Weiser et al. ()]{b11}\label{b11} 	 		‘Scheduling for Reduced CPU energy’.  		 			M Weiser 		,  		 			B Welch 		,  		 			A Demers 		,  		 			S Shenker 		.  	 	 		\textit{USENIX Symposium on Operating Systems Design and Implementation},  				1994.  	 
\bibitem[Koren and Shasha ()]{b39}\label{b39} 	 		‘Skip-over: Algorithms and complexity for overloaded systems that allow skips’.  		 			G Koren 		,  		 			D Shasha 		.  	 	 		\textit{Proc. RTSS},  				 (RTSS)  		1995. p. 110.  	 
\bibitem[Bini et al. ()]{b13}\label{b13} 	 		‘Speed Modulation in Energy-Aware Real-Time Systems’.  		 			E Bini 		,  		 			G C Buttazzo 		,  		 			G Lipari 		.  	 	 		\textit{Proc. of the 17th Euromicro Conference on Real-Time Systems (ECRTS)},  				 (of the 17th Euromicro Conference on Real-Time Systems (ECRTS))  		2005.  	 
\bibitem[Zhuo and Chakrabarti ()]{b27}\label{b27} 	 		\textit{System level energy efficient dynamic task scheduling},  		 			J Zhuo 		,  		 			C Chakrabarti 		.  		2005. DAC.  	 
\bibitem[Aydin et al.]{b12}\label{b12} 	 		‘System-level Energy Management for Periodic Real-Time Tasks’.  		 			H Aydin 		,  		 			V Devadas 		,  		 			D Zhu 		.  	 	 		\textit{Proceedings of the 27th IEEE ©2011 Global Journals Inc. (US) International Real-Time Systems Symposium (RTSS'06)},  				 (the 27th IEEE ©2011 Global Journals Inc. (US) International Real-Time Systems Symposium (RTSS'06))  		 	 
\bibitem[Niu and Quan ()]{b34}\label{b34} 	 		‘System-wide dynamic power management for multimedia portable devices’.  		 			L Niu 		,  		 			G Quan 		.  	 	 		\textit{IEEE International Symposium on Multimedia (ISM'06)},  				2006.  	 
\bibitem[Douglis et al. ()]{b7}\label{b7} 	 		‘The power-hungry disk’.  		 			F Douglis 		,  		 			P Krishnan 		,  		 			B Marsh 		,  		 			Thwarting 		.  	 	 		\textit{proceedings of the Winter USENIX Conference},  				 (the Winter USENIX Conference)  		1994. p. .  	 
\bibitem[Fan et al. (2003)]{b25}\label{b25} 	 		‘The Synergy between Power aware Memory systems and Processor Voltage’.  		 			X Fan 		,  		 			C Ellis 		,  		 			A Lebeck 		.  	 	 		\textit{Workshop on Power-Aware Computing Systems},  				December 2003.  	 
\end{bibitemlist}
 			 		 	 
\end{document}
