📄 node542.html
字号:
<html><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN"><!--Converted with jLaTeX2HTML 2002 (1.62) JA patch-1.4patched version by: Kenshi Muto, Debian Project.LaTeX2HTML 2002 (1.62),original version by: Nikos Drakos, CBLU, University of Leeds* revised and updated by: Marcus Hennecke, Ross Moore, Herb Swan* with significant contributions from: Jens Lippmann, Marek Rouchal, Martin Wilck and others --><HTML><HEAD><TITLE>39.2 Real-Time Scheduler</TITLE><META NAME="description" CONTENT="39.2 Real-Time Scheduler"><META NAME="keywords" CONTENT="everything"><META NAME="resource-type" CONTENT="document"><META NAME="distribution" CONTENT="global"><META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=iso-8859-1"><META NAME="Generator" CONTENT="jLaTeX2HTML v2002 JA patch-1.4"><META HTTP-EQUIV="Content-Style-Type" CONTENT="text/css"><LINK REL="STYLESHEET" HREF="everything.css" tppabs="http://www.isi.edu/nsnam/ns/doc/everything.css"><LINK REL="next" HREF="node543.html" tppabs="http://www.isi.edu/nsnam/ns/doc/node543.html"><LINK REL="previous" HREF="node541.html" tppabs="http://www.isi.edu/nsnam/ns/doc/node541.html"><LINK REL="up" HREF="node540.html" tppabs="http://www.isi.edu/nsnam/ns/doc/node540.html"><LINK REL="next" HREF="node543.html" tppabs="http://www.isi.edu/nsnam/ns/doc/node543.html"></HEAD><BODY ><!--Navigation Panel--><A NAME="tex2html9742" HREF="node543.html" tppabs="http://www.isi.edu/nsnam/ns/doc/node543.html"><IMG WIDTH="37" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="next" SRC="file:/usr/share/latex2html/icons/next.png"></A> <A NAME="tex2html9736" HREF="node540.html" tppabs="http://www.isi.edu/nsnam/ns/doc/node540.html"><IMG WIDTH="26" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="up" SRC="file:/usr/share/latex2html/icons/up.png"></A> <A NAME="tex2html9730" HREF="node541.html" tppabs="http://www.isi.edu/nsnam/ns/doc/node541.html"><IMG WIDTH="63" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="previous" SRC="file:/usr/share/latex2html/icons/prev.png"></A> <A NAME="tex2html9738" HREF="node1.html" tppabs="http://www.isi.edu/nsnam/ns/doc/node1.html"><IMG WIDTH="65" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="contents" SRC="file:/usr/share/latex2html/icons/contents.png"></A> <A NAME="tex2html9740" HREF="node590.html" tppabs="http://www.isi.edu/nsnam/ns/doc/node590.html"><IMG WIDTH="43" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="index" SRC="file:/usr/share/latex2html/icons/index.png"></A> <BR><B> Next:</B> <A NAME="tex2html9743" HREF="node543.html" tppabs="http://www.isi.edu/nsnam/ns/doc/node543.html">39.3 Tap Agents</A><B> Up:</B> <A NAME="tex2html9737" HREF="node540.html" tppabs="http://www.isi.edu/nsnam/ns/doc/node540.html">39. Emulation</A><B> Previous:</B> <A NAME="tex2html9731" HREF="node541.html" tppabs="http://www.isi.edu/nsnam/ns/doc/node541.html">39.1 Introduction</A>   <B> <A NAME="tex2html9739" HREF="node1.html" tppabs="http://www.isi.edu/nsnam/ns/doc/node1.html">Contents</A></B>   <B> <A NAME="tex2html9741" HREF="node590.html" tppabs="http://www.isi.edu/nsnam/ns/doc/node590.html">Index</A></B> <BR><BR><!--End of Navigation Panel--><H1><A NAME="SECTION09120000000000000000">39.2 Real-Time Scheduler</A></H1><P>The real-time scheduler implements a soft real-time schedulerwhich ties event execution within the simulator to real time.Provided sufficient CPU horsepower is available to keep upwith arriving packets, the simulator virtual time should closelytrack real-time.If the simulator becomes too slow to keep up with elapsing realtime, a warning is continually produced if the skew exceeds apre-specified constant ``slop factor'' (currently 10ms).<P>The main dispatch loop is found in the routine <TT>RealTimeScheduler::run()</TT>,in the file <TT>scheduler.cc</TT>.It follows essentially the following algorithm:<UL><LI>While simulator is not halted <UL><LI>get current real time (``now'')</LI><LI>dispatch all pending simulator events prior to now</LI><LI>fetch next (future) event if there is one</LI><LI>delay until the next simulator event is ready or a Tcl event occurs</LI><LI>if a tcl event occured, re-insert next event in simulator event queue and continue</LI><LI>otherwise, dispatch simulator event, continue</LI><LI>if there was no future even, check for Tcl events and continue </LI></UL></LI></UL><P>The real-time scheduler should always be used with the emulation facility.Failure to do so may easily result in the simulator running fasterthan real-time.In such cases, traffic passing through the simulated network willnot be delayed by the proper amount of time.Enabling the real-time scheduler requires thefollowing specification at the beginning of a simulation script:<PRE> set ns [new Simulator] $ns use-scheduler RealTime</PRE><P><HR><!--Navigation Panel--><A NAME="tex2html9742" HREF="node543.html" tppabs="http://www.isi.edu/nsnam/ns/doc/node543.html"><IMG WIDTH="37" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="next" SRC="file:/usr/share/latex2html/icons/next.png"></A> <A NAME="tex2html9736" HREF="node540.html" tppabs="http://www.isi.edu/nsnam/ns/doc/node540.html"><IMG WIDTH="26" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="up" SRC="file:/usr/share/latex2html/icons/up.png"></A> <A NAME="tex2html9730" HREF="node541.html" tppabs="http://www.isi.edu/nsnam/ns/doc/node541.html"><IMG WIDTH="63" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="previous" SRC="file:/usr/share/latex2html/icons/prev.png"></A> <A NAME="tex2html9738" HREF="node1.html" tppabs="http://www.isi.edu/nsnam/ns/doc/node1.html"><IMG WIDTH="65" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="contents" SRC="file:/usr/share/latex2html/icons/contents.png"></A> <A NAME="tex2html9740" HREF="node590.html" tppabs="http://www.isi.edu/nsnam/ns/doc/node590.html"><IMG WIDTH="43" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="index" SRC="file:/usr/share/latex2html/icons/index.png"></A> <BR><B> Next:</B> <A NAME="tex2html9743" HREF="node543.html" tppabs="http://www.isi.edu/nsnam/ns/doc/node543.html">39.3 Tap Agents</A><B> Up:</B> <A NAME="tex2html9737" HREF="node540.html" tppabs="http://www.isi.edu/nsnam/ns/doc/node540.html">39. Emulation</A><B> Previous:</B> <A NAME="tex2html9731" HREF="node541.html" tppabs="http://www.isi.edu/nsnam/ns/doc/node541.html">39.1 Introduction</A>   <B> <A NAME="tex2html9739" HREF="node1.html" tppabs="http://www.isi.edu/nsnam/ns/doc/node1.html">Contents</A></B>   <B> <A NAME="tex2html9741" HREF="node590.html" tppabs="http://www.isi.edu/nsnam/ns/doc/node590.html">Index</A></B> <!--End of Navigation Panel--><ADDRESS>2003-09-23</ADDRESS></BODY></HTML>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -