Device Driver Basics

Written by Stephen Bucaro


---------------------------------------------------------- Permission is granted forrepparttar below article to forward, reprint, distribute, use for ezine, newsletter, website, offer as free bonus or part of a product for sale as long as no changes are made andrepparttar 107652 byline, copyright, andrepparttar 107653 resource box below is included. ----------------------------------------------------------

Device Driver Basics

By Stephen Bucaro

Most people understand thatrepparttar 107654 "hardware" part of their computer isrepparttar 107655 real physical parts, likerepparttar 107656 keyboard, mouse, modem, hard drive and so on. They understand thatrepparttar 107657 "software" is computer bits stored onrepparttar 107658 hard drive, CD-ROM, or other storage media. But most people are a little hazy about exactly what a "driver" is.

In this article, I'm going to reveal in plain English what a driver is, why we need drivers, and exactly whererepparttar 107659 drivers are hiding. To give you a basic understanding, I'm going to go back, way back, torepparttar 107660 early days of computers.

The Early Days

The year is 1981 andrepparttar 107661 world is inrepparttar 107662 midst of a severe resession. IBM's main frame business has slowed andrepparttar 107663 company is losing money. Up until now they had been laughing atrepparttar 107664 array of microcomputers onrepparttar 107665 market: Atari, Commodore, sinclair. Toys really, mostly used to play computer games.

The problem was, these "toys" were selling like hot cakes. IBM had to get into that market and get into it fast. They didn't have time to design and build a computer complete enough to compete inrepparttar 107666 market, so they built an "open system". They used commonly available electronic components and they published every design detail (includingrepparttar 107667 code), and they even provided plug in slots so that others could build components for their computer.

And people did provide components forrepparttar 107668 IBM PC. They provided video cards, memory expansion cards, input-output port cards, game port cards, hard disk interface cards, and much more. How were all these various devices able to interface withrepparttar 107669 PC's operating system? That's where a "driver" comes in.

A hardware device is constructed with various electronic components using various control signals, butrepparttar 107670 software interface torepparttar 107671 operating system is standardized. A device's interface torepparttar 107672 operating system must followrepparttar 107673 interface specification. A driver is a piece of software that translatesrepparttar 107674 hardware's control signals to signals thatrepparttar 107675 operating system expects, and translates signals fromrepparttar 107676 operating system torepparttar 107677 hardware's control signals.

Whenrepparttar 107678 computer is started up, it would look inrepparttar 107679 "system" directory for files withrepparttar 107680 extension ".drv" and load them into memory. Specific files like autoexec.bat, config.sys, and win.ini were used to informrepparttar 107681 operating system about drivers. Hardware would be configured through these files, or through jumpers located onrepparttar 107682 device itself.

The driver specification evolved along withrepparttar 107683 PC. Today when a PC starts, it executesrepparttar 107684 program ntdetect.com which queriesrepparttar 107685 hardware components and buildsrepparttar 107686 registery key HKEY_LOCAL_MACHINEHARDWARESYSTEMCurrentControlSet. This key exists only in memory and is created each timerepparttar 107687 computer boots. If allrepparttar 107688 drivers are loaded successfully, a copy ofrepparttar 107689 key is saved as ControlSet00X.

Underrepparttar 107690 registery key CurrentControlSet,repparttar 107691 subkey "Enum" contains a subkey for each harware device onrepparttar 107692 computer. Each device key contains fields for Hardware ID, Driver ID, Device Parameters, and other configuration data. The 32-bit drivers are files withrepparttar 107693 extension ".sys" and can be found inrepparttar 107694 folder C:/winnt/system32.

Driver Signing

Microsoft has beenrepparttar 107695 brunt of much criticism because ofrepparttar 107696 poor reliability ofrepparttar 107697 Windows Operating System. I feel that much of this criticism is justified. Onrepparttar 107698 other hand, as I described in part 1 of this article,repparttar 107699 PC was designed by IBM as an "open" system. Anyone can sell a hardware device (or software) forrepparttar 107700 PC. Should Microsoft be held responsible forrepparttar 107701 quality from a third-party?

Microsoft CRM Development: SDK, C#, SQL, Exchange, Integration, Crystal Reports – overview for programmer

Written by Andrew Karasev


Microsoft CRM is new player onrepparttar CRM software market. The whole conception behind CRM seems to be different. In case of traditional CRM software (Siebel, Oracle) -repparttar 107651 application was designed with platform independence in mind. Microsoft CRM is dedicated to Microsoft technology and so deploys allrepparttar 107652 Microsoft tools: Windows Active Directory, Microsoft Exchange 2003/2000, SQL Server, Crystal Reports Enterprise, Biztalk server, Microsoft Outlook, Internet Explorer, Microsoft Great Plains as backend, etc. If you are software developer, database administrator or web designer who is asked: how do we customize Microsoft CRM – we are giving you directions in this article. 1.Microsoft CRM SDK – this is software development kit with C# and partly VB.net code samples – it is supported by Microsoft Business Solutions technical support. It is based on web service calls, if you are C# .NET developer – you are excellently positioned to do this type of customizations. This isrepparttar 107653 preferred modification scenario and this should be easily upgradeable customization. VB.Net examples will be available soon. 2.Legacy SQL Data integration. This is also easy and safe. If you have SQL database, sitting onrepparttar 107654 same or linked SQL Server – you can create ASPX .Net application and simply integrate it into CRM. You can place it onrepparttar 107655 navigation bar or menu in isv.config – please refer to MS CRM SDK 3.Legacy ASP integration – this is somewhat more sophisticated. You have to deploy HTTP handler to be a middle party between CRM which is .Net based and ASP which is legacy IIS. The trick is – you have to have INI file with security settings to penetrate into MS CRM with proper credentials, calling web service.

Cont'd on page 2 ==>
 
ImproveHomeLife.com © 2005
Terms of Use