Parallel Port Complete


Book Description

This book is for programmers, hardware designers, and anyone who uses the PC's parallel port to communicate with printers and other peripheral devices. The tips, tools, and examples in this complete reference will save you time, spark new ideas for your own projects, and help you use all of a port's abilities - including the new high-speed, bidirectional modes.




Programming the Parallel Port


Book Description

Why purchase expensive add-on cards or bus interfaces when you can develop effective and economical data acquisition and process controls using C programs? Using the under-employed printer adapter (that is, the parallel port of your PC), you can turn your computer into a powerful tool for developing microprocessor applications. Learn how to build a




Data Parallel C++


Book Description

Learn how to accelerate C++ programs using data parallelism. This open access book enables C++ programmers to be at the forefront of this exciting and important new development that is helping to push computing to new levels. It is full of practical advice, detailed explanations, and code examples to illustrate key topics. Data parallelism in C++ enables access to parallel resources in a modern heterogeneous system, freeing you from being locked into any particular computing device. Now a single C++ application can use any combination of devices—including GPUs, CPUs, FPGAs and AI ASICs—that are suitable to the problems at hand. This book begins by introducing data parallelism and foundational topics for effective use of the SYCL standard from the Khronos Group and Data Parallel C++ (DPC++), the open source compiler used in this book. Later chapters cover advanced topics including error handling, hardware-specific programming, communication and synchronization, and memory model considerations. Data Parallel C++ provides you with everything needed to use SYCL for programming heterogeneous systems. What You'll Learn Accelerate C++ programs using data-parallel programming Target multiple device types (e.g. CPU, GPU, FPGA) Use SYCL and SYCL compilers Connect with computing’s heterogeneous future via Intel’s oneAPI initiative Who This Book Is For Those new data-parallel programming and computer programmers interested in data-parallel programming using C++.




Embedded Linux


Book Description

A guide to using Linux on embedded platforms for interfacing to the real world. "Embedded Linux" is one of the first books available that teaches readers development and implementation of interfacing applications on an Embedded Linux platform.




USB Embedded Hosts


Book Description

Developers who want to access USB devices from their embedded systems will find a helpful resource in USB Embedded Hosts: The Developer’s Guide. This new book from the author of USB Complete shows how small systems can take advantage of the same wealth of USB devices available to conventional PCs. The book begins with a review of USB host communication protocols. Readers then learn which USB host requirements are relaxed for embedded systems and what new requirements some embedded systems must meet. To help in selecting a development platform, the book explores available hardware and software for USB host communications in small systems. The heart of the book focuses on communicating with USB devices. The topics (with example code) include USB drives, keyboards, virtual serial ports, network bridges, mics, speakers, video cameras, and printers, plus devices that don’t fit defined USB classes. Also discussed are systems that support both USB host and device functions. The example code is written for the BeagleBoard-xM open development board using a distribution of Linux targeted to small systems. Also covered is how to use Linux commands and utilities to learn about, monitor, and debug communications with USB devices.




Introduction to Embedded Systems, Second Edition


Book Description

An introduction to the engineering principles of embedded systems, with a focus on modeling, design, and analysis of cyber-physical systems. The most visible use of computers and software is processing information for human consumption. The vast majority of computers in use, however, are much less visible. They run the engine, brakes, seatbelts, airbag, and audio system in your car. They digitally encode your voice and construct a radio signal to send it from your cell phone to a base station. They command robots on a factory floor, power generation in a power plant, processes in a chemical plant, and traffic lights in a city. These less visible computers are called embedded systems, and the software they run is called embedded software. The principal challenges in designing and analyzing embedded systems stem from their interaction with physical processes. This book takes a cyber-physical approach to embedded systems, introducing the engineering concepts underlying embedded systems as a technology and as a subject of study. The focus is on modeling, design, and analysis of cyber-physical systems, which integrate computation, networking, and physical processes. The second edition offers two new chapters, several new exercises, and other improvements. The book can be used as a textbook at the advanced undergraduate or introductory graduate level and as a professional reference for practicing engineers and computer scientists. Readers should have some familiarity with machine structures, computer programming, basic discrete mathematics and algorithms, and signals and systems.




Programming Massively Parallel Processors


Book Description

Programming Massively Parallel Processors: A Hands-on Approach, Second Edition, teaches students how to program massively parallel processors. It offers a detailed discussion of various techniques for constructing parallel programs. Case studies are used to demonstrate the development process, which begins with computational thinking and ends with effective and efficient parallel programs. This guide shows both student and professional alike the basic concepts of parallel programming and GPU architecture. Topics of performance, floating-point format, parallel patterns, and dynamic parallelism are covered in depth. This revised edition contains more parallel programming examples, commonly-used libraries such as Thrust, and explanations of the latest tools. It also provides new coverage of CUDA 5.0, improved performance, enhanced development tools, increased hardware support, and more; increased coverage of related technology, OpenCL and new material on algorithm patterns, GPU clusters, host programming, and data parallelism; and two new case studies (on MRI reconstruction and molecular visualization) that explore the latest applications of CUDA and GPUs for scientific research and high-performance computing. This book should be a valuable resource for advanced students, software engineers, programmers, and hardware engineers. - New coverage of CUDA 5.0, improved performance, enhanced development tools, increased hardware support, and more - Increased coverage of related technology, OpenCL and new material on algorithm patterns, GPU clusters, host programming, and data parallelism - Two new case studies (on MRI reconstruction and molecular visualization) explore the latest applications of CUDA and GPUs for scientific research and high-performance computing




Linux Device Drivers


Book Description

Device drivers literally drive everything you're interested in--disks, monitors, keyboards, modems--everything outside the computer chip and memory. And writing device drivers is one of the few areas of programming for the Linux operating system that calls for unique, Linux-specific knowledge. For years now, programmers have relied on the classic Linux Device Drivers from O'Reilly to master this critical subject. Now in its third edition, this bestselling guide provides all the information you'll need to write drivers for a wide range of devices.Over the years the book has helped countless programmers learn: how to support computer peripherals under the Linux operating system how to develop and write software for new hardware under Linux the basics of Linux operation even if they are not expecting to write a driver The new edition of Linux Device Drivers is better than ever. The book covers all the significant changes to Version 2.6 of the Linux kernel, which simplifies many activities, and contains subtle new features that can make a driver both more efficient and more flexible. Readers will find new chapters on important types of drivers not covered previously, such as consoles, USB drivers, and more.Best of all, you don't have to be a kernel hacker to understand and enjoy this book. All you need is an understanding of the C programming language and some background in Unix system calls. And for maximum ease-of-use, the book uses full-featured examples that you can compile and run without special hardware.Today Linux holds fast as the most rapidly growing segment of the computer market and continues to win over enthusiastic adherents in many application areas. With this increasing support, Linux is now absolutely mainstream, and viewed as a solid platform for embedded systems. If you're writing device drivers, you'll want this book. In fact, you'll wonder how drivers are ever written without it.




CompTIA A+ Complete Study Guide


Book Description

CompTIA Authorized, fully updated Study Guide for the leading IT certification: CompTIA A+ CompTIA A+ is the de facto certification for IT technicians. Some vendors even require employees to achieve certification as part of their job training. This book prepares you for both required exams: 220-801 and 220-802. Totally updated to cover the 2012 exams, this popular prep guide covers all the exam objectives. Readers will also have access to additional study tools, including the Sybex Test Engine with bonus practice exams, electronic flashcards, and a glossary of important terms in searchable PDF form. Includes a coupon for 10% Off CompTIA Certification Exams A complete study guide to both exams required for CompTIA A+ certification, the standard certification for software and hardware vendors and major technology companies Covers personal computer components, laptops and portable devices, operating systems (including mobile), printers and scanners, networks, security, safety and environmental issues, communication, and professionalism Provides clear and concise information on crucial hardware and operating system maintenance and troubleshooting topics Offers practical examples, real-world insights, exam highlights, and end-of-chapter reviews CompTIA A+ Complete Study Guide prepares the diligent student to pass both parts of the A+ exam with confidence.




Computer Busses


Book Description

As more and more equipment is interface or'bus' driven, either by the use of controllers or directly from PCs, the question of which bus to use is becoming increasingly important both in industry and in the office. 'Computer Busses' has been designed to help choose the best type of bus for the particular application. There are several books which cover individual busses, but none which provide a complete guide to computer busses. The author provides a basic theory of busses and draws examples and applications from real bus case studies. Busses are analysed using from a top-down approach, helping the undergraduate electrical or computer engineer to chose the right type of bus for their particular application. This book is essential reading for students of software engineering and electronic design, as well as for those working in disciplines such as production engineering or process control. It will also be a handy reference book for professional engineers, systems designers, consultants and those working in technical support. Provides a complete guide to computer busses Contains application-specific programme examples Plenty of real-life case studies