⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 hal-interfaces.html

📁 有关ecos2。0介绍了实时嵌入式的结构以及线程调度的实现和内存的管理等
💻 HTML
字号:
<!-- Copyright (C) 2003 Red Hat, Inc.                                --><!-- This material may be distributed only subject to the terms      --><!-- and conditions set forth in the Open Publication License, v1.0  --><!-- or later (the latest version is presently available at          --><!-- http://www.opencontent.org/openpub/).                           --><!-- Distribution of the work or derivative of the work in any       --><!-- standard (paper) book form is prohibited unless prior           --><!-- permission is obtained from the copyright holder.               --><HTML><HEAD><TITLE>HAL Interfaces</TITLE><meta name="MSSmartTagsPreventParsing" content="TRUE"><METANAME="GENERATOR"CONTENT="Modular DocBook HTML Stylesheet Version 1.76b+"><LINKREL="HOME"TITLE="eCos Reference Manual"HREF="ecos-ref.html"><LINKREL="UP"TITLE="The eCos Hardware Abstraction Layer (HAL)"HREF="the-ecos-hardware-abstraction-layer.html"><LINKREL="PREVIOUS"TITLE="General principles"HREF="hal-general-principles.html"><LINKREL="NEXT"TITLE="Architecture Characterization"HREF="hal-architecture-characterization.html"></HEAD><BODYCLASS="CHAPTER"BGCOLOR="#FFFFFF"TEXT="#000000"LINK="#0000FF"VLINK="#840084"ALINK="#0000FF"><DIVCLASS="NAVHEADER"><TABLESUMMARY="Header navigation table"WIDTH="100%"BORDER="0"CELLPADDING="0"CELLSPACING="0"><TR><THCOLSPAN="3"ALIGN="center">eCos Reference Manual</TH></TR><TR><TDWIDTH="10%"ALIGN="left"VALIGN="bottom"><AHREF="hal-general-principles.html"ACCESSKEY="P">Prev</A></TD><TDWIDTH="80%"ALIGN="center"VALIGN="bottom"></TD><TDWIDTH="10%"ALIGN="right"VALIGN="bottom"><AHREF="hal-architecture-characterization.html"ACCESSKEY="N">Next</A></TD></TR></TABLE><HRALIGN="LEFT"WIDTH="100%"></DIV><DIVCLASS="CHAPTER"><H1><ANAME="HAL-INTERFACES">Chapter 9. HAL Interfaces</H1><DIVCLASS="TOC"><DL><DT><B>Table of Contents</B></DT><DT><AHREF="hal-interfaces.html#HAL-BASE-DEFINITIONS">Base Definitions</A></DT><DT><AHREF="hal-architecture-characterization.html">Architecture Characterization</A></DT><DT><AHREF="hal-interrupt-handling.html">Interrupt Handling</A></DT><DT><AHREF="hal-input-and-output.html">HAL I/O</A></DT><DT><AHREF="hal-cache-control.html">Cache Control</A></DT><DT><AHREF="hal-linker-scripts.html">Linker Scripts</A></DT><DT><AHREF="hal-diagnostic-support.html">Diagnostic Support</A></DT><DT><AHREF="hal-smp-support.html">SMP Support</A></DT></DL></DIV><P>This section describes the main HAL interfaces. </P><DIVCLASS="SECTION"><H1CLASS="SECTION"><ANAME="HAL-BASE-DEFINITIONS">Base Definitions</H1><P>These are definitions that characterize the properties of the basearchitecture that are used to compile the portable parts of thekernel. They are concerned with such things a portable typedefinitions, endianness, and labeling.</P><P>These definitions are supplied by the<TTCLASS="FILENAME">cyg/hal/basetype.h</TT> header file which is suppliedby the architecture HAL. It is included automatically by<TTCLASS="FILENAME">cyg/infra/cyg_type.h</TT>.</P><DIVCLASS="SECTION"><H2CLASS="SECTION"><ANAME="AEN7743">Byte order</H2><P></P><DIVCLASS="VARIABLELIST"><DL><DT><TTCLASS="VARNAME">CYG_BYTEORDER</TT></DT><DD><P>      This defines the byte order of the target and must be set to either      <TTCLASS="VARNAME">CYG_LSBFIRST</TT> or <TTCLASS="VARNAME">CYG_MSBFIRST</TT>.      </P></DD></DL></DIV></DIV><DIVCLASS="SECTION"><H2CLASS="SECTION"><ANAME="AEN7753">Label Translation</H2><P></P><DIVCLASS="VARIABLELIST"><DL><DT><TTCLASS="FUNCTION">CYG_LABEL_NAME(name)</TT></DT><DD><P>      This is a wrapper used in some C and C&#0043;&#0043; files which      use labels defined in assembly code or the linker script.      It need only be defined if the default implementation in      <TTCLASS="FILENAME">cyg/infra/cyg_type.h</TT>, which passes the name      argument unaltered, is inadequate. It should be paired with      <TTCLASS="FUNCTION">CYG_LABEL_DEFN()</TT>.      </P></DD><DT><TTCLASS="FUNCTION">CYG_LABEL_DEFN(name)</TT></DT><DD><P>      This is a wrapper used in assembler sources and linker scripts      which define labels.  It need only be defined if the default      implementation in      <TTCLASS="FILENAME">cyg/infra/cyg_type.h</TT>, which passes the name      argument unaltered, is inadequate. The most usual alternative      definition of this macro prepends an underscore to the label      name.       </P></DD></DL></DIV></DIV><DIVCLASS="SECTION"><H2CLASS="SECTION"><ANAME="AEN7769">Base types</H2><TABLEBORDER="5"BGCOLOR="#E0E0F0"WIDTH="70%"><TR><TD><PRECLASS="PROGRAMLISTING">	cyg_halint8	cyg_halint16	cyg_halint32	cyg_halint64	cyg_halcount8	cyg_halcount16	cyg_halcount32	cyg_halcount64	cyg_halbool</PRE></TD></TR></TABLE><P>These macros define the C base types that should be used to definevariables of the given size. They only need to be defined if thedefault types specified in <TTCLASS="FILENAME">cyg/infra/cyg_type.h</TT>cannot be used. Note that these are only the base types, they will becomposed with <TTCLASS="LITERAL">signed</TT> and<TTCLASS="LITERAL">unsigned</TT> to form full type specifications.</P></DIV><DIVCLASS="SECTION"><H2CLASS="SECTION"><ANAME="AEN7776">Atomic types</H2><TABLEBORDER="5"BGCOLOR="#E0E0F0"WIDTH="70%"><TR><TD><PRECLASS="PROGRAMLISTING">	cyg_halatomic CYG_ATOMIC</PRE></TD></TR></TABLE><P>These types are guaranteed to be read or written in a singleuninterruptible operation. It is architecture defined what size thistype is, but it will be at least a byte.</P></DIV></DIV></DIV><DIVCLASS="NAVFOOTER"><HRALIGN="LEFT"WIDTH="100%"><TABLESUMMARY="Footer navigation table"WIDTH="100%"BORDER="0"CELLPADDING="0"CELLSPACING="0"><TR><TDWIDTH="33%"ALIGN="left"VALIGN="top"><AHREF="hal-general-principles.html"ACCESSKEY="P">Prev</A></TD><TDWIDTH="34%"ALIGN="center"VALIGN="top"><AHREF="ecos-ref.html"ACCESSKEY="H">Home</A></TD><TDWIDTH="33%"ALIGN="right"VALIGN="top"><AHREF="hal-architecture-characterization.html"ACCESSKEY="N">Next</A></TD></TR><TR><TDWIDTH="33%"ALIGN="left"VALIGN="top">General principles</TD><TDWIDTH="34%"ALIGN="center"VALIGN="top"><AHREF="the-ecos-hardware-abstraction-layer.html"ACCESSKEY="U">Up</A></TD><TDWIDTH="33%"ALIGN="right"VALIGN="top">Architecture Characterization</TD></TR></TABLE></DIV></BODY></HTML>

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -