Small Memory Software: Patterns for systems with limited memory
James Noble, Sydney Macquire University
Charles Weir

ISBN-10: 0201596075
ISBN-13: 9780201596076

Publisher: Addison-Wesley Professional
Copyright: 2001
Format: Paper; 352 pp
Status: Out of Print

Suggested retail price: $46.99
This item is out of print and is no longer available for purchase.

The phenomenal increases in processing power and memory capacity of computing hardware over recent years have allowed manufacturers to produce smaller and smaller computer systems such as palmtop PCs, smart cards and embedded control systems on domestic and industrial appliances. New techniques such as dynamic memory management and object-orientation help programming but tend to require additional memory. Standard programming techniques do not cope with these limited memory-capacity environments. This book will provide practical help for programmers developing software for this kind of environment. The major content is a series of patterns developed by the authors based on solutions which have been found to work in real-life situations. They range from small system design patterns and process management patterns, to patterns for User Interface development, compression and memory storage. This book will appeal to developers using Windows CE or building mobile telephones, smart cards, embedded devices, set-top computers - in short, all programmers working with memory-constrained systems.




  • Short introduction to patterns, pattern languages and the pattern form.
  • Maps of the interactions between the patterns - how they relate to each other.
  • 50 different patterns to apply.
  • Clear, accessible layout with each pattern on a double page spread for ease of reference.
  • Summary of the known uses of the patterns.




Foreword.


Preface.


Acknowledgements.


Introduction.

How to Use This Book.

Introduction to Small Memory.

Introduction to Patterns.

The Patterns in this Book.



1. Small Architecture.

Memory Limit.

Small Interfaces.

Partial Failure.

Captain Oates.

Read-Only Memory.

Hooks.



2. Secondary Storage.

Application Switching.

Data Files.

Resource Files.

Packages.

Paging.



3. Compression.

Table Compression.

Difference Coding.

Adaptive Compression.



4. Small Data Structures.

Packed Data.

Sharing.

Copy-On-Write.

Embedded Pointers.

Multiple Representations.



5. Memory Allocation.

Fixed Allocation.

Variable Allocation.

Memory Discard.

Pooled Allocation.

Compaction.

Reference Counting.

Garbage Collection.



Appendix: A Discussion of Forces.

Forces in this Book.

Forces Related to Non-Functional Requirements.

Architectural Impact.

Development Process.



References.


Index. 0201596075T04062001

James Noble is New Zealand's leading expert on Design Patterns for object-oriented software. James worked on object-oriented design at the Microsoft Research Institute at Macquarie University, establishing the first patterns group in the Southern Hemisphere. He currently lectures at the Victoria University of Wellington, New Zealand. Charles Weir is an independent consultant in object-oriented software architecture. He was initial architect for the EPOC web browser for the Psion series 5, and the Symbian technical lead for two smart mobile phones to be launched later this year. Charles specializes in transferring practical skills to developers, providing mentoring and design assistance to teams in the fields of telecommunications, information systems, and banking

0201596075AB04062001

'Anyone who has ever uttered the joyous words, "I saved eight bytes!" will feel at home with this coherent, easy-to-use set of patterns for limited memory systems. As the computing world moves toward hand-held and specialized tiny computing devices, these patterns will continue to show their worth. This book should be on the shelf of every person who writes software for small systems.'
- Neil Harrison, Avaya Inc.

"Many of us have been waiting for someone to tackle the hard problems of resource shortages. In the growing collection of patterns, this book will provide some guidelines for these problems in a well-written, thoroughly enjoyable style. The authors share their real-world experience in the best patterns tradition--all the examples provide ample opportunity to see the solutions at work. This is a "must have!""
- Linda Rising

"The 1980s and 1990s can be described, harshly but accurately, as decades when software developers were increasingly careless about how much memory their software consumed. In "Small Memory Software", Weir and Noble give a timely wake-up call, pointing out some unexpected merits of more thoughtful usage of memory - and giving clear practical advice that should help reverse what has been a most unfortunate historical trend."
- David Wood, Executive Vice President, Symbian


The market for PDA software is huge and growing. Within five years, a significant proportion of the world population will use an smart, Internet-ready mobile phone. A PC in every home? Maybe, but just as likely is a PDA in every pocket! This book offers you state-of-the-art programming solutions for small memory devices. You will learn the best, most successful design techniques for object-oriented programming in constrained memory.

If you are a developer, team leader, or manager building applications for limited-memory systems, you will find everything you need to design and implement effective software with success.

· 27 patterns, fully illustrated with implementation notes for reference plus example code in C++ or Java
· Patterns organized into five major techniques: small data structures, memory allocation, compression, secondary storage, and small architecture
· Easy-to-use layout, with a quick-reference pattern index on the inside covers
· Tips on efficient memory allocation, dealing with memory exhaustion, using ROM instead of RAM, avoiding memory leaks, and automatically recycling unused memory
· An accompanying web-site, www.smallmemory.com, containing detailed implementations of all the substantial examples in the book, which can be used as templates for your own implementations



0201596075B06012001

Pearson Higher Education offers special pricing when you choose to package your text with other student resources. If you're interested in creating a cost-saving package for your students, contact your Pearson Higher Education representative for pricing and ordering information.

This title is a member of the Software Patterns Series, which also contains the titles below . You can also visit the Software Patterns Series page.

  • 0321247140Design Patterns Explained: A New Perspective on Object-Oriented Design, 2/E
    Shalloway & Trott
    © 2005 | Addison-Wesley Professional | Paper; 480 pages | Instock
    ISBN-10: 0321247140 | ISBN-13: 9780321247148
    Brief Description | Buy from myPearsonStore

  • 0201743973Design Patterns Java™ Workbook
    Metsker
    © 2002 | Addison-Wesley Professional | Paper; 496 pages | Instock
    ISBN-10: 0201743973 | ISBN-13: 9780201743975
    Brief Description | Buy from myPearsonStore

  • 0201184621The Design Patterns Smalltalk Companion
    Alpert, Brown & Woolf
    © 1998 | Addison-Wesley Professional | Paper; 464 pages | Instock
    ISBN-10: 0201184621 | ISBN-13: 9780201184624
    Brief Description | Buy from myPearsonStore

  • 0321126971Design Patterns in C#
    Metsker
    © 2004 | Addison-Wesley Professional | Cloth; 480 pages | Instock
    ISBN-10: 0321126971 | ISBN-13: 9780321126979
    Brief Description | Buy from myPearsonStore

  • 0321333020Design Patterns in Java™, 2/E
    Metsker & Wake
    © 2006 | Addison-Wesley Professional | Cloth; 480 pages | Instock
    ISBN-10: 0321333020 | ISBN-13: 9780321333025
    Buy from myPearsonStore

  • 0321630483Design Patterns in Java™, Safari, 2/E
    Metsker & Wake
    © 2006 | Addison-Wesley Professional | On-line Supplement; 480 pages | Estimated Availability: 06/15/2009
    ISBN-10: 0321630483 | ISBN-13: 9780321630483
    URL: http://safari.informit.com


  • 0201432935Pattern Hatching: Design Patterns Applied
    Vlissides
    © 1998 | Addison-Wesley Professional | Paper; 192 pages | Instock
    ISBN-10: 0201432935 | ISBN-13: 9780201432930
    Brief Description | Buy from myPearsonStore

  • 0321228111Patterns for Parallel Programming
    Mattson, Sanders & Massingill
    © 2005 | Addison-Wesley Professional | Cloth; 384 pages | Instock
    ISBN-10: 0321228111 | ISBN-13: 9780321228116
    Buy from myPearsonStore

  • 0201741172Software Configuration Management Patterns: Effective Teamwork, Practical Integration
    Berczuk & Appleton
    © 2003 | Addison-Wesley Professional | Paper; 256 pages | Instock
    ISBN-10: 0201741172 | ISBN-13: 9780201741179
    Buy from myPearsonStore

Pearson Higher Education offers special pricing when you choose to package your text with other student resources. If you're interested in creating a cost-saving package for your students contact your Pearson Higher Education representative.


Copyright ©2008 Pearson Education. All rights reserved. Legal Notice | Privacy Policy | Permissions