<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Usb Flash Drives and Usb Hard Drives Online Shopping &#187; Benefit Developers</title>
	<atom:link href="http://www.usbis.com/tag/benefit-developers/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.usbis.com</link>
	<description>Discount Usb drive, Usb Hard Drives and Usb Flash Drives Shopping Store.</description>
	<lastBuildDate>Wed, 07 Oct 2009 07:31:28 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8.4</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>USB Benefits for Developers</title>
		<link>http://www.usbis.com/benefits-for-developers/</link>
		<comments>http://www.usbis.com/benefits-for-developers/#comments</comments>
		<pubDate>Sat, 16 May 2009 02:52:41 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[USB Drive Reviews]]></category>
		<category><![CDATA[Application Software]]></category>
		<category><![CDATA[Assumptions]]></category>
		<category><![CDATA[Automatic Error]]></category>
		<category><![CDATA[Benefit Developers]]></category>
		<category><![CDATA[Cable Standards]]></category>
		<category><![CDATA[Controller Chips]]></category>
		<category><![CDATA[Hardware Designers]]></category>
		<category><![CDATA[Input Lines]]></category>
		<category><![CDATA[Line Printers]]></category>
		<category><![CDATA[Maximum Time]]></category>
		<category><![CDATA[Parallel Port]]></category>
		<category><![CDATA[Pc Software]]></category>
		<category><![CDATA[Peripherals]]></category>
		<category><![CDATA[Port Scanners]]></category>
		<category><![CDATA[Programmers]]></category>
		<category><![CDATA[Rsquo]]></category>
		<category><![CDATA[Software Usb]]></category>
		<category><![CDATA[System Device Drivers]]></category>
		<category><![CDATA[Time Constraints]]></category>
		<category><![CDATA[Usb Implementers Forum]]></category>
		<category><![CDATA[Versatility]]></category>

		<guid isPermaLink="false">http://www.usbis.com/?p=70</guid>
		<description><![CDATA[<p>&#160;&#160;&#160;&#160;&#160;&#160;&#160; Many of the user advantages described&#160; above also make things easier for
developers. For example, USB&#8217;s defined cable standards and &#8230;]]></description>
			<content:encoded><![CDATA[<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Many of the user advantages described&nbsp; above also make things easier for<br />
developers. For example, USB&rsquo;s defined cable standards and automatic error<br />
checking mean that developers don&rsquo;t have to worry about specifying cable<br />
characteristics or providing error checking in software.<br />
USB has other advantages that benefit developers. The developers include<br />
the hardware designers who select components and design the circuits in<br />
devices, the programmers who write the software embedded in the devices,<br />
and the programmers who write the PC software&nbsp; that communicates with<br />
the devices.<br />
The benefits to developers result from the flexibility built into the USB pro-<br />
tocol, the support in the controller chips and operating system, and the sup-<br />
port available from the USB Implementers Forum.</p>
<p><a rel="attachment wp-att-71" href="http://www.usbis.com/benefits-for-developers/usb-3-will-launch-next-year/"><img height="280" width="301" class="alignnone size-full wp-image-71" title="usb Benefits for Developers" alt="usb Benefits for Developers" src="http://www.usbis.com/wp-content/uploads/2009/05/usb-3-will-launch-next-year.jpg" /></a></p>
<p><strong>Versatility</strong><br />
USB&rsquo;s four transfer types and three speeds make the interface feasible for<br />
many types of peripherals. There are&nbsp; transfer types suited for exchanging<br />
large and small blocks of data, with and without time constraints. For data<br />
that can&rsquo;t tolerate delays, USB can guarantee bandwidth or a maximum time<br />
between transfers. These abilities are especially welcome under Windows,<br />
where accessing peripherals&nbsp; in real time is often a challenge. Although the<br />
operating system, device drivers, and application software can introduce<br />
unavoidable delays, USB makes it as easy as possible to achieve transfers that<br />
are close to real time.<br />
Unlike other interfaces, USB doesn&rsquo;t assign specific functions to signal lines<br />
or make other assumptions about how the interface will be used. For exam-<br />
ple, the status and control lines on the PC&rsquo;s parallel port were defined with<br />
the intention of communicating with line printers. There are five input lines<br />
with assigned functions such as indicating a busy or paper-out condition.<br />
When developers began using the port&nbsp; for scanners and other peripherals<br />
that send large amounts of data to the PC, having just five inputs was a lim-<br />
itation. (Eventually the interface was enhanced to allow eight bits of input.)<br />
USB makes no such assumptions and is suitable for just about any periph-<br />
eral type.<br />
For communicating with common peripheral types such&nbsp; as printers, key-<br />
boards, and drives, USB has defined classes that specify device requirements<br />
and protocols. Developers can use the classes as a guide instead of having to<br />
reinvent everything from the ground up.</p>
<p><strong>Operating System Support</strong><br />
Windows 98 was the first Windows operating system with reliable support<br />
for USB, and the editions that have followed, including Windows 2000,<br />
Windows Me, Windows XP, and Windows Server 2003, support USB as<br />
well. This book focuses on Windows programming for PCs, but other com-<br />
puters and operating systems also have USB support, including Apple Com-<br />
puter&rsquo;s Macintosh and the Linux operating system for PCs. Some real-time<br />
kernels also support USB.<br />
A claim of operating-system support for USB can mean many things. At the<br />
most basic level, an operating system that supports USB must do three<br />
things:</p>
<p>&bull; Detect when devices are attached to and removed from the system.<br />
&bull; Communicate with newly attached devices to find out how to exchange<br />
data with them.<br />
&bull; Provide a mechanism that enables software drivers to communicate with<br />
the computer&rsquo;s USB hardware and the&nbsp; applications that want to access<br />
USB peripherals.</p>
<p>At a higher level, operating system support may also mean the inclusion of<br />
class drivers that enable application&nbsp; programmers to access devices. If the<br />
operating system doesn&rsquo;t include a driver appropriate for a specific periph-<br />
eral, the peripheral vendor must provide the driver.<br />
With each new edition of Windows, Microsoft has added class drivers. Sup-<br />
ported device types in recent Windows editions include human interface<br />
devices (keyboards, mice, game controllers), audio devices, modems,<br />
still-image and video cameras, scanners, printers, drives, and smart-card<br />
readers. Filter drivers can support device-specific features and abilities<br />
within a class. Applications use Application Programming Interface (API)<br />
functions or other operating-system components to&nbsp; communicate with<br />
device drivers.<br />
For devices that aren&rsquo;t in supported classes, some vendors of USB peripheral<br />
controllers provide drivers that developers can use with the vendor&rsquo;s control-<br />
lers.<br />
USB device drivers use the Windows Driver Model (WDM), which defines<br />
an architecture for drivers that run under Windows 98 and later Windows<br />
editions. The aim is to enable developers to support multiple Windows edi-<br />
tions with a single driver, though some devices may require different drivers<br />
for Windows 98/Windows Me and for Windows 2000/Windows XP.<br />
Because Windows includes low-level&nbsp; drivers that handle communications<br />
with the USB hardware, writing a USB device driver is typically easier than<br />
writing drivers for devices that use other interfaces.</p>
<p><strong>Peripheral Support</strong><br />
On the peripheral side, each USB device&rsquo;s hardware must include a control-<br />
ler chip that manages the details of USB communications. Some controllers<br />
are complete microcontrollers that include a CPU, program and data mem-<br />
ory, and a USB interface. Other controllers must interface to an external<br />
CPU that communicates with the USB controller as needed.<br />
The peripheral is responsible for responding to requests to send and receive<br />
data used in identifying and configuring the device and for reading and<br />
writing other data on the bus. In some controllers, some functions are<br />
microcoded in hardware and don&rsquo;t need to be programmed.<br />
Many USB controllers are based on popular architectures such as Intel Cor-<br />
poration&rsquo;s 8051 or Microchip Technology&rsquo;s PICMicro&reg;, with added circuits<br />
and machine codes to support USB communications. If you&rsquo;re already<br />
familiar with a chip architecture that has a USB-capable variant, you don&rsquo;t<br />
need to learn an entirely new architecture. Most peripheral manufacturers<br />
provide sample code for their chips. Using this code as a starting point can<br />
save much time.</p>
<p><strong>USB Implementers Forum</strong><br />
With some interfaces, you&rsquo;re pretty much on your own when it comes to<br />
getting a design up and running. With USB, you have plenty of help via the<br />
USB Implementers Forum, Inc. (USB-IF) and its Web site (www.usb.org).<br />
The USB-IF is the non-profit corporation founded by the companies that<br />
developed the USB specification. <br />
The USB-IF&rsquo;s mission is to support the advancement and adoption of USB<br />
technology. To that end, the USB-IF offers information, tools, and tests.<br />
The information includes the specification documents, white papers, FAQs,<br />
and a Web forum where developers can discuss USB-related topics. The<br />
tools provided by the USB-IF include software and hardware to help in<br />
developing and testing products. The support for testing includes develop-<br />
ing compliance tests to verify proper operation and holding compliance<br />
workshops where developers can have their products tested and earn the<br />
rights for their devices to display the USB logo.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.usbis.com/benefits-for-developers/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
