Anthony J. Massa

Total Page:16

File Type:pdf, Size:1020Kb

Anthony J. Massa EMBEDDED SOFTWARE DEVELOPMENT WITH ECOS™ Anthony J. Massa EMBEDDED SOFTWARE DEVELOPMENT WITH ECOS Anthony J. Massa PRENTICE HALL PROFESSIONAL TECHNICAL REFERENCE UPPER SADDLE RIVER, NJ 07458 WWW.PHPTR.COM WWW.PHPTR.COM/MASSA/ Library of Congress Cataloging-in-Publication Data Massa, Anthony J. Embedded software development with eCos / Anthony J. Massa p. cm.--(Bruce Perens' Open source series) ISBN 0-13-035473-2 1. Embedded computer systems--Programming. 2. Application software--Development. 3. Real-time data processing. I. Title. II. Series. QA76.6 .M364317 2002 005.26--dc21 2002035507 Editorial/production supervision: Techne Group Cover design director: Jerry Votta Cover design: Anthony Gemmellaro Art director: Gail Cocker-Bogusz Interior design: Meg Van Arsdale Manufacturing buyer: Maura Zaldivar Editor-in-Chief: Mark L. Taub Editorial assistant: Kate Wolf Marketing manager: Bryan Gambrel Full-service production manager: Anne R. Garcia © 2003 Pearson Education, Inc. Publishing as Prentice Hall Professional Technical Reference Upper Saddle River, New Jersey 07458 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/>). Prentice Hall books are widely used by corporations and government agencies for training, marketing, and resale. For information regarding corporate and government bulk discounts please contact: Corporate and Government Sales (800) 382-3419 or [email protected] Other company and product names mentioned herein are the trademarks or registered trademarks of their respective owners. All rights reserved. No part of this book may be reproduced, in any form or by any means, without permission in writing from the publisher. Printed in the United States of America 10 9 8 7 6 5 4 3 2 1 ISBN 0-13-035473-2 Pearson Education LTD. Pearson Education Australia PTY, Limited Pearson Education Singapore, Pte. Ltd. Pearson Education North Asia Ltd. Pearson Education Canada, Ltd. Pearson Educación de Mexico, S.A. de C.V. Pearson Education—Japan Pearson Education Malaysia, Pte. Ltd. This book is dedicated to my girls, Katie and Deanna. You mean the world to me. I love you. CONTENTS Foreword xv Preface xvii Chapter 1 An Introduction to the eCos World 1 1.1 Where It All Started—Cygnus Solutions 1 1.2 The Origins of eCos 2 1.2.1 In a Word: Configurability 3 1.2.2 The eCos Configuration Method 4 1.2.3 eCos Core Components 5 1.2.4 Processor and Evaluation Platform Support 6 1.2.5 eCos Support 6 1.3 Architecture Overview 8 1.3.1 eCos Terminology 8 1.3.1.1 Component Framework 8 1.3.1.2 Component Repository 10 1.3.1.3 Configuration Options 13 1.3.1.4 Components and Packages 14 1.3.1.5 Targets 14 1.3.1.6 Templates 15 1.4 Summary 16 vii viii Contents Chapter 2 The Hardware Abstraction Layer 17 2.1 Overview 17 2.1.1 HAL Directory Structure 19 2.1.1.1 Example HAL Function Call Trace 22 2.1.2 HAL Macro Definitions 23 2.1.3 HAL Configuration 24 2.1.3.1 Common Configuration Components 25 2.1.3.2 Architecture-Specific Configuration Components 25 2.1.4 HAL Startup 26 2.2 Summary 29 Chapter 3 Exceptions and Interrupts 31 3.1 Exceptions 31 3.1.1 HAL and Kernel Exception Handling 32 3.1.2 Application Exception Handling 38 3.2 Interrupts 40 3.2.1 eCos Interrupt Model 40 3.2.1.1 Interrupt and Scheduler Synchronization 41 3.2.2 Interrupt Configuration 42 3.2.3 Interrupt Handling 44 3.2.4 Interrupt Control 50 3.2.4.1 Interrupt Service Routine Management 51 3.2.4.2 Interrupt State Management 53 3.2.4.3 Interrupt Controller Management 54 3.3 Summary 58 Chapter 4 Virtual Vectors 59 4.1 Virtual Vectors 59 4.1.1 Virtual Vector Configuration 63 4.1.2 Virtual Vector Table Initialization 64 4.1.2.1 Communication Channels 67 4.2 Summary 71 Chapter 5 The Kernel 73 5.1 The Kernel 73 5.1.1 Kernel Directory Structure 74 5.1.2 Kernel Startup 75 5.1.3 The Scheduler 77 5.1.3.1 Multilevel Queue Scheduler 79 Contents ix 5.1.3.2 Bitmap Scheduler 81 5.1.3.3 Priority Levels 81 5.1.3.4 Scheduler Configuration 83 5.2 Summary 84 Chapter 6 Threads and Synchronization Mechanisms 85 6.1 Threads 85 6.1.1 Thread Stacks and Stack Sizes 94 6.2 Synchronization Mechanisms 95 6.2.1 Mutexes 95 6.2.2 Semaphores 101 6.2.3 Condition Variables 105 6.2.4 Flags 110 6.2.5 Message Boxes 113 6.2.6 Spinlocks 118 6.3 Summary 120 Chapter 7 Other eCos Architecture Components 121 7.1 Counters, Clocks, Alarms, and Timers 121 7.1.1 Counters 125 7.1.2 Clocks 129 7.1.3 Alarms 130 7.1.4 Timers 133 7.2 Asserts and Tracing 134 7.3 ISO C and Math Libraries 138 7.4 I/O Control System 140 7.4.1 I/O Sub-System 142 7.4.2 Device Drivers 146 7.5 Summary 148 Chapter 8 Additional Functionality and Third-Party Contributions 149 8.1 Compatibility Layers 150 8.1.1 POSIX 150 8.1.1.1 EL/IX 151 8.1.2 µITRON 152 8.2 ROM Monitors 152 8.2.1 CygMon 153 8.2.2 RedBoot 153 8.2.3 GDB Stub 154 x Contents 8.3 File Systems 155 8.3.1 ROM File System 157 8.3.2 RAM File System 158 8.3.3 Journalling Flash File System Version 2 160 8.4 PCI Support 160 8.4.1 PCI Library API 161 8.5 USB Support 165 8.6 Networking Support 167 8.6.1 OpenBSD 168 8.6.2 FreeBSD 169 8.6.3 lwIP 170 8.6.4 Networking Threads 170 8.6.5 Networking Configuration 171 8.6.6 Networking Tests 176 8.6.7 DNS Support 178 8.7 SNMP Support 179 8.8 The GoAhead Embedded WebServer 180 8.9 Symmetric Multi-Processing Support 182 8.10 Additional Features 183 8.11 Summary 184 Chapter 9 The RedBoot ROM Monitor 185 9.1 Overview 185 9.2 RedBoot Directory Structure 187 9.3 Installation and Configuration 188 9.3.1 RedBoot Configuration 189 9.3.2 Host Configuration 193 9.3.2.1 Serial 193 9.3.2.2 Ethernet 194 9.4 User Interface and Command Set 195 9.4.1 RedBoot Commands 196 9.4.1.1 Boot Scripting 204 9.5 Summary 206 Chapter 10 The Host Development Platform 207 10.1 Overview 207 10.2 Configuring the Windows Host 209 10.2.1 Installing the Cygwin Native Tools 210 Contents xi 10.2.1.1 Cygwin Tools Directory Structure 217 10.2.1.2 Upgrading the Cygwin Tools 219 10.2.2 Installing the Platform-Specific Cross-Development Tools 220 10.2.3 Installing the eCos Development Kit 223 10.2.3.1 eCos Development Kit Directory Structure 229 10.2.4 Accessing the Online eCos Source Code Repository 229 10.2.4.1 Installing WinCVS 230 10.2.4.2 Setting WinCVS Preferences 235 10.2.4.3 WinCVS Update Commands 236 10.3 Summary 238 Chapter 11 The eCos Toolset 239 11.1 Packages 239 11.1.1 Package Directory Structure 240 11.1.2 The Component Definition Language Overview 243 11.1.2.1 CDL Script Files 243 11.2 The Configuration Tool 248 11.2.1 Screen Layout 248 11.2.1.1 Saving Configurations 251 11.2.1.2 Importing and Exporting Configurations 253 11.2.1.3 Configuration Window 254 11.2.1.4 Conflicts Window 255 11.2.1.5 Properties Window 256 11.2.1.6 Short Description Window 256 11.2.1.7 Output Window 256 11.2.1.8 Memory Layout Window 256 11.2.1.9 Memory Layout Manipulation 257 11.2.2 eCos Repository Database 264 11.2.3 Graphical Representation of CDL Script Files 266 11.2.4 Using Templates 270 11.2.4.1 Conflicts and Resolutions 272 11.2.5 Package Control 274 11.3 Other eCos Tools 274 11.3.1 The Package Administration Tool 275 11.3.2 The Command-Line Configuration Tool 277 11.4 Building the eCos Tools 277 11.5 Additional Open-Source Tools 277 11.5.1 Source-Navigator 278 xii Contents 11.5.2 Splint 279 11.6 Summary 280 Chapter 12 An Example Application Using eCos 281 12.1 The eCos Build Process 281 12.1.1 A Closer Look 282 12.2 Examples Overview 285 12.2.1 Development Hardware Setup 286 12.2.2 eCos Tools 288 12.3 RedBoot 288 12.3.1 Building RedBoot 288 12.3.2 Installing RedBoot 292 12.3.3 Booting RedBoot 293 12.4 eCos 295 12.4.1 Building eCos 295 12.5 Application 298 12.5.1 Building the Application 299 12.5.2 Loading the Application 303 12.5.3 Debugging the Application 305 12.5.3.1 Using the GDB Command-Line Interface 309 12.6 The eCos Tests 310 12.7 Simulators 311 12.8 Summary 313 Chapter 13 Porting eCos 315 13.1 Overview of Porting 315 13.2 A Platform Porting Example 317 13.2.1 PowerPC HAL Directory and File Structure 320 13.2.2 Porting Hints 334 13.3 Summary 335 Appendix A Supported Processors and Evaluation Platforms 337 Appendix B eCos License 345 B.1 eCos License 345 B.2 GNU General Public License 346 B.2.1 Version 2, June 1991 346 B.2.2 Preamble 346 B.2.3 How to Apply These Terms to Your New Programs 352 Contents xiii Appendix C Cygwin Tools Upgrade Procedure 355 Appendix D Building the GNU Cross-Development Tools 361 About the Author 369 Index 371 About the CD-ROM 392 FOREWORD n 1997, there were over 100 commercially supported embedded operating systems, none of Iwhich had more than a minority share of the overall embedded OS market, not to mention countless thousands of others developed for specific projects (cell phones, radar arrays, net- working equipment, etc.) that had no application developer base beyond that specific project.
Recommended publications
  • Cisco Telepresence TC Software Licensing Information (TC4.1)
    Cisco TelePresence TC Software License information guide TC Software FEBRUARY 2011 Legal information and third party copyright and licenses For Cisco TelePresence products using TC software D14767.02 License Information for products using TC Software, TC4 February 2011. 1 © 2010-2011 Cisco Systems, Inc. All rights reserved. www.cisco.com Cisco TelePresence TC Software License information guide ipcalc-1.3, ipcalc-license ...................................................................................... 16 TA - ToC - Hidden Table of Contents iproute-2.6.26, GPLv2 .......................................................................................16 What’stext anchor in iptables-1.4.28, GPLv2......................................................................................16 About this guide ..............................................................................................................4 iputils-s20071127, iputils-bsd-license .................................................... 16 The products covered by this guide: .....................................................4 jpeg lib, jpeg-license ................................................................................................ 17 this guide? User documentation .............................................................................................4 Kmod-*, GPLv2 ........................................................................................................19 Software download ................................................................................................4
    [Show full text]
  • Schedule 14A Employee Slides Supertex Sunnyvale
    UNITED STATES SECURITIES AND EXCHANGE COMMISSION Washington, D.C. 20549 SCHEDULE 14A Proxy Statement Pursuant to Section 14(a) of the Securities Exchange Act of 1934 Filed by the Registrant Filed by a Party other than the Registrant Check the appropriate box: Preliminary Proxy Statement Confidential, for Use of the Commission Only (as permitted by Rule 14a-6(e)(2)) Definitive Proxy Statement Definitive Additional Materials Soliciting Material Pursuant to §240.14a-12 Supertex, Inc. (Name of Registrant as Specified In Its Charter) Microchip Technology Incorporated (Name of Person(s) Filing Proxy Statement, if other than the Registrant) Payment of Filing Fee (Check the appropriate box): No fee required. Fee computed on table below per Exchange Act Rules 14a-6(i)(1) and 0-11. (1) Title of each class of securities to which transaction applies: (2) Aggregate number of securities to which transaction applies: (3) Per unit price or other underlying value of transaction computed pursuant to Exchange Act Rule 0-11 (set forth the amount on which the filing fee is calculated and state how it was determined): (4) Proposed maximum aggregate value of transaction: (5) Total fee paid: Fee paid previously with preliminary materials. Check box if any part of the fee is offset as provided by Exchange Act Rule 0-11(a)(2) and identify the filing for which the offsetting fee was paid previously. Identify the previous filing by registration statement number, or the Form or Schedule and the date of its filing. (1) Amount Previously Paid: (2) Form, Schedule or Registration Statement No.: (3) Filing Party: (4) Date Filed: Filed by Microchip Technology Incorporated Pursuant to Rule 14a-12 of the Securities Exchange Act of 1934 Subject Company: Supertex, Inc.
    [Show full text]
  • Embedded Linux Systems with the Yocto Project™
    OPEN SOURCE SOFTWARE DEVELOPMENT SERIES Embedded Linux Systems with the Yocto Project" FREE SAMPLE CHAPTER SHARE WITH OTHERS �f, � � � � Embedded Linux Systems with the Yocto ProjectTM This page intentionally left blank Embedded Linux Systems with the Yocto ProjectTM Rudolf J. Streif Boston • Columbus • Indianapolis • New York • San Francisco • Amsterdam • Cape Town Dubai • London • Madrid • Milan • Munich • Paris • Montreal • Toronto • Delhi • Mexico City São Paulo • Sidney • Hong Kong • Seoul • Singapore • Taipei • Tokyo Many of the designations used by manufacturers and sellers to distinguish their products are claimed as trademarks. Where those designations appear in this book, and the publisher was aware of a trademark claim, the designations have been printed with initial capital letters or in all capitals. The author and publisher have taken care in the preparation of this book, but make no expressed or implied warranty of any kind and assume no responsibility for errors or omissions. No liability is assumed for incidental or consequential damages in connection with or arising out of the use of the information or programs contained herein. For information about buying this title in bulk quantities, or for special sales opportunities (which may include electronic versions; custom cover designs; and content particular to your business, training goals, marketing focus, or branding interests), please contact our corporate sales depart- ment at [email protected] or (800) 382-3419. For government sales inquiries, please contact [email protected]. For questions about sales outside the U.S., please contact [email protected]. Visit us on the Web: informit.com Cataloging-in-Publication Data is on file with the Library of Congress.
    [Show full text]
  • The GNU Configure and Build System
    The GNU configure and build system Ian Lance Taylor Copyright c 1998 Cygnus Solutions Permission is granted to make and distribute verbatim copies of this manual provided the copyright notice and this permission notice are preserved on all copies. Permission is granted to copy and distribute modified versions of this manual under the con- ditions for verbatim copying, provided that the entire resulting derived work is distributed under the terms of a permission notice identical to this one. Permission is granted to copy and distribute translations of this manual into another lan- guage, under the above conditions for modified versions, except that this permission notice may be stated in a translation approved by the Free Software Foundation. i Table of Contents 1 Introduction ............................... 1 1.1 Goals................................................... 1 1.2 Tools ................................................... 1 1.3 History ................................................. 1 1.4 Building ................................................ 2 2 Getting Started............................ 3 2.1 Write configure.in ....................................... 4 2.2 Write Makefile.am ....................................... 6 2.3 Write acconfig.h......................................... 7 2.4 Generate files ........................................... 8 2.5 Example................................................ 8 2.5.1 First Try....................................... 9 2.5.2 Second Try.................................... 10 2.5.3 Third
    [Show full text]
  • RT-ROS: a Real-Time ROS Architecture on Multi-Core Processors
    Future Generation Computer Systems 56 (2016) 171–178 Contents lists available at ScienceDirect Future Generation Computer Systems journal homepage: www.elsevier.com/locate/fgcs RT-ROS: A real-time ROS architecture on multi-core processors Hongxing Wei a,1, Zhenzhou Shao b, Zhen Huang a, Renhai Chen d, Yong Guan b, Jindong Tan c,1, Zili Shao d,∗,1 a School of Mechanical Engineering and Automation, Beihang University, Beijing, 100191, PR China b College of Information Engineering, Capital Normal University, Beijing, 100048, PR China c Department of Mechanical, Aerospace, and Biomedical Engineering, The University of Tennessee, Knoxville, TN, 37996-2110, USA d Department of Computing, The Hong Kong Polytechnic University, Hong Kong, China article info a b s t r a c t Article history: ROS, an open-source robot operating system, is widely used and rapidly developed in the robotics Received 6 February 2015 community. However, running on Linux, ROS does not provide real-time guarantees, while real-time tasks Received in revised form are required in many robot applications such as robot motion control. This paper for the first time presents 20 April 2015 a real-time ROS architecture called RT-RTOS on multi-core processors. RT-ROS provides an integrated Accepted 12 May 2015 real-time/non-real-time task execution environment so real-time and non-real-time ROS nodes can be Available online 9 June 2015 separately run on a real-time OS and Linux, respectively, with different processor cores. In such a way, real-time tasks can be supported by real-time ROS nodes on a real-time OS, while non-real-time ROS nodes Keywords: Real-time operating systems on Linux can provide other functions of ROS.
    [Show full text]
  • Cygwin User's Guide
    Cygwin User’s Guide Cygwin User’s Guide ii Copyright © Cygwin authors Permission is granted to make and distribute verbatim copies of this documentation provided the copyright notice and this per- mission notice are preserved on all copies. Permission is granted to copy and distribute modified versions of this documentation under the conditions for verbatim copying, provided that the entire resulting derived work is distributed under the terms of a permission notice identical to this one. Permission is granted to copy and distribute translations of this documentation into another language, under the above conditions for modified versions, except that this permission notice may be stated in a translation approved by the Free Software Foundation. Cygwin User’s Guide iii Contents 1 Cygwin Overview 1 1.1 What is it? . .1 1.2 Quick Start Guide for those more experienced with Windows . .1 1.3 Quick Start Guide for those more experienced with UNIX . .1 1.4 Are the Cygwin tools free software? . .2 1.5 A brief history of the Cygwin project . .2 1.6 Highlights of Cygwin Functionality . .3 1.6.1 Introduction . .3 1.6.2 Permissions and Security . .3 1.6.3 File Access . .3 1.6.4 Text Mode vs. Binary Mode . .4 1.6.5 ANSI C Library . .4 1.6.6 Process Creation . .5 1.6.6.1 Problems with process creation . .5 1.6.7 Signals . .6 1.6.8 Sockets . .6 1.6.9 Select . .7 1.7 What’s new and what changed in Cygwin . .7 1.7.1 What’s new and what changed in 3.2 .
    [Show full text]
  • OS-9 for Intel IXDP425 Board Guide
    OS-9® for IXDP425 Board Guide Version 4.7 www.radisys.com Revision A • July 2006 Copyright and publication information Reproduction notice This manual reflects version 4.7 of Microware OS-9. The software described in this document is intended to Reproduction of this document, in part or whole, by any means, be used on a single computer system. RadiSys electrical, mechanical, magnetic, optical, chemical, manual, or Corporation expressly prohibits any reproduction of the otherwise is prohibited, without written permission from RadiSys software on tape, disk, or any other medium except for Microware Communications Software Division, Inc. backup purposes. Distribution of this software, in part or whole, to any other party or on any other system Disclaimer may constitute copyright infringements and misappropriation of trade secrets and confidential The information contained herein is believed to be accurate as of processes which are the property of RadiSys the date of publication. However, RadiSys Corporation will not be Corporation and/or other parties. Unauthorized liable for any damages including indirect or consequential, from distribution of software may cause damages far in use of the OS-9 operating system, Microware-provided software, excess of the value of the copies involved. or reliance on the accuracy of this documentation. The information contained herein is subject to change without notice. July 2006 Copyright ©2006 by RadiSys Corporation All rights reserved. EPC and RadiSys are registered trademarks of RadiSys Corporation. ASM, Brahma, DAI, DAQ, MultiPro, SAIB, Spirit, and ValuePro are trademarks of RadiSys Corporation. DAVID, MAUI, OS-9, OS-9000, and SoftStax are registered trademarks of RadiSys Corporation.
    [Show full text]
  • Embedded Market Study, 2013
    2013 EMBEDDED MARKET STUDY Essential to Engineers DATASHEETS.COM | DESIGNCON | DESIGN EAST & DESIGN WEST | EBN | EDN | EE TIMES | EMBEDDED | PLANET ANALOG | TECHONLINE | TEST & MEASUREMENT WORLD 2013 Embedded Market Study 2 UBM Tech Electronics’ Brands Unparalleled Reach & Experience UBM Tech Electronics is the media and marketing services solution for the design engineering and electronics industry. Our audience of over 2,358,928 (as of March 5, 2013) are the executives and engineers worldwide who design, develop, and commercialize technology. We provide them with the essentials they need to succeed: news and analysis, design and technology, product data, education, and fun. Copyright © 2013 by UBM. All rights reserved. 2013 Embedded Market Study 5 Purpose and Methodology • Purpose: To profile the findings of the 2013 results of EE Times Group annual comprehensive survey of the embedded systems markets worldwide. Findings include types of technology used, all aspects of the embedded development process, tools used, work environment, applications, methods and processes, operating systems used, reasons for using and not using chips and technology, and brands and chips currently used by or being considered by embedded developers. Many questions in this survey have been trended over two to five years. • Methodology: A web-based online survey instrument based on the previous year’s survey was developed and implemented by independent research company Wilson Research Group from January 18, 2013 to February 13, 2013 by email invitation • Sample: E-mail invitations were sent to subscribers to UBM/EE Times Group Embedded Brands with one reminder invitation. Each invitation included a link to the survey. • Returns: 2,098 valid respondents for an overall confidence of 95% +/- 2.13%.
    [Show full text]
  • OPERATING SYSTEMS.Ai
    Introduction Aeroflex Gaisler provides LEON and ERC32 users with a wide range of popular embedded operating systems. Ranging from very small footprint task handlers to full featured Real-Time Operating System (RTOS). A summary of available operating systems and their characteristics is outlined below. VxWorks The VxWorks SPARC port supports LEON3/4 and LEON2. Drivers for standard on-chip peripherals are included. The port supports both non-MMU and MMU systems allowing users to program fast and secure applications. Along with the graphical Eclipse based workbench comes the extensive VxWorks documentation. • MMU and non-MMU system support • SMP support (in 6.7 and later) • Networking support (Ethernet 10/100/1000) • UART, Timer, and interrupt controller support • PCI, SpaceWire, CAN, MIL-STD-1553B, I2C and USB host controller support • Eclipse based Workbench • Commercial license ThreadX The ThreadX SPARC port supports LEON3/4 and its standard on-chip peripherals. ThreadX is an easy to learn and understand advanced pico-kernel real-time operating system designed specifically for deeply embedded applications. ThreadX has a rich set of system services for memory allocation and threading. • Non-MMU system support • Bundled with newlib C library • Support for NetX, and USBX ® • Very small footprint • Commercial license Nucleus Nucleus is a real time operating system which offers a rich set of features in a scalable and configurable manner. • UART, Timer, Interrupt controller, Ethernet (10/100/1000) • TCP offloading and zero copy TCP/IP stack (using GRETH GBIT MAC) • USB 2.0 host controller and function controller driver • Small footprint • Commercial license LynxOS LynxOS is an advanced RTOS suitable for high reliability environments.
    [Show full text]
  • Integrating the GNU Debugger with Cycle Accurate Models a Case Study Using a Verilator Systemc Model of the Openrisc 1000
    Integrating the GNU Debugger with Cycle Accurate Models A Case Study using a Verilator SystemC Model of the OpenRISC 1000 Jeremy Bennett Embecosm Application Note 7. Issue 1 Published March 2009 Legal Notice This work is licensed under the Creative Commons Attribution 2.0 UK: England & Wales License. To view a copy of this license, visit http://creativecommons.org/licenses/by/2.0/uk/ or send a letter to Creative Commons, 171 Second Street, Suite 300, San Francisco, California, 94105, USA. This license means you are free: • to copy, distribute, display, and perform the work • to make derivative works under the following conditions: • Attribution. You must give the original author, Jeremy Bennett of Embecosm (www.embecosm.com), credit; • For any reuse or distribution, you must make clear to others the license terms of this work; • Any of these conditions can be waived if you get permission from the copyright holder, Embecosm; and • Nothing in this license impairs or restricts the author's moral rights. The software for the SystemC cycle accurate model written by Embecosm and used in this document is licensed under the GNU General Public License (GNU General Public License). For detailed licensing information see the file COPYING in the source code. Embecosm is the business name of Embecosm Limited, a private limited company registered in England and Wales. Registration number 6577021. ii Copyright © 2009 Embecosm Limited Table of Contents 1. Introduction ................................................................................................................ 1 1.1. Why Use Cycle Accurate Modeling .................................................................... 1 1.2. Target Audience ................................................................................................ 1 1.3. Open Source ..................................................................................................... 2 1.4. Further Sources of Information ......................................................................... 2 1.4.1.
    [Show full text]
  • FOSS Philosophy 6 the FOSS Development Method 7
    1 Published by the United Nations Development Programme’s Asia-Pacific Development Information Programme (UNDP-APDIP) Kuala Lumpur, Malaysia www.apdip.net Email: [email protected] © UNDP-APDIP 2004 The material in this book may be reproduced, republished and incorporated into further works provided acknowledgement is given to UNDP-APDIP. For full details on the license governing this publication, please see the relevant Annex. ISBN: 983-3094-00-7 Design, layout and cover illustrations by: Rezonanze www.rezonanze.com PREFACE 6 INTRODUCTION 6 What is Free/Open Source Software? 6 The FOSS philosophy 6 The FOSS development method 7 What is the history of FOSS? 8 A Brief History of Free/Open Source Software Movement 8 WHY FOSS? 10 Is FOSS free? 10 How large are the savings from FOSS? 10 Direct Cost Savings - An Example 11 What are the benefits of using FOSS? 12 Security 13 Reliability/Stability 14 Open standards and vendor independence 14 Reduced reliance on imports 15 Developing local software capacity 15 Piracy, IPR, and the WTO 16 Localization 16 What are the shortcomings of FOSS? 17 Lack of business applications 17 Interoperability with proprietary systems 17 Documentation and “polish” 18 FOSS SUCCESS STORIES 19 What are governments doing with FOSS? 19 Europe 19 Americas 20 Brazil 21 Asia Pacific 22 Other Regions 24 What are some successful FOSS projects? 25 BIND (DNS Server) 25 Apache (Web Server) 25 Sendmail (Email Server) 25 OpenSSH (Secure Network Administration Tool) 26 Open Office (Office Productivity Suite) 26 LINUX 27 What is Linux?
    [Show full text]
  • WABC Library by Title April 2021
    Title Catalogue Sym Title Author Pub date Copies Acc. No A Beasley contract bridge system, The Beasley, HM 1935 1031 The Power of Pass Schogger,H & Klinger,R 2020 1399, 1414, 1415 DVD #13: Hand Evaluation Magee, Bernard 2013 1164 DVD #14: Pre-emptive Bidding Magee, Bernard 2013 1165 DVD #15: Splinters and Cue-bids Magee, Bernard 2013 1166 DVD #16: Avoidance Play Magee, Bernard 2013 1167 DVD #17: Play & Defence at Duplicate Pairs Magee, Bernard 2013 1168 DVD #18: Thinking Defence Magee, Bernard 2013 1169 DVD #19: Defensive Plan Magee, Bernard 2014 1088 DVD #20: Further into the Auction Magee, Bernard 2014 1089 DVD #21: Weak Twos Magee, Bernard 2014 1090 DVD #22: Trump Control Magee, Bernard 2014 1091 DVD #23: Sacrificing Magee, Bernard 2014 1092 DVD #24: Improving Bridge Memory Magee, Bernard 2014 1093 DVD #25: Defence as Partner of the Leader Magee, Bernard 2015 2 1081, 1151 DVD #26: Aggressive Bidding at Dulicate Pairs Magee, Bernard 2015 2 1082, 1152 DVD #27: Strong Opening Bids Magee, Bernard 2015 2 1083, 1153 DVD #28:Take out Doubles Magee, Bernard 2015 2 1084, 1154 DVD #29: Suit Establisment in Suit Contracts Magee, Bernard 2015 1085, 1155 DVD #30: Landy/Defending Against a 1NT opening Magee, Bernard 2015 2 1086, 1156 DVD #31: Counting Defence Magee, Bernard 2016 1170 DVD #32: Extra Tricks in No-Trumps Magee, Bernard 2016 1171 DVD #33: Supporting Partner Magee, Bernard 2016 1172 DVD #34; Finessing Magee, Bernard 2016 1173 DVD #35: Bidding Distributional Hands Magee, Bernard 2016 1174 DVD #36: Coping with Pre-Empts Magee, Bernard
    [Show full text]