Network & Internet    Other     PortTalk

PortTalk 2.2


Description of

PortTalk


PortTalk is a Windows NT I/O Port Device Driver.A problem that plagues Windows NT/2000 and Windows XP, is it's strict control over I/O ports. Unlike Windows 95 & 98, Windows NT/2000/XP will cause an exception (Privileged Instruction) if an attempt is made to access a port that you are not privileged to talk to. Actually its not Windows NT that does this, but any 386 or higher processor running in protected mode.Accessing I/O Ports in protected mode is governed by two events, The I/O privilege level (IOPL) in the EFLAGS register and the I/O permission bit map of a Task State Segment (TSS).Under Windows NT, there are only two I/O privilege levels used, level 0 & level 3. Usermode programs will run in privilege level 3, while device drivers and the kernel will run in privilege level 0, commonly referred to as ring 0.PortTalk will allow the trusted operating system and drivers running in kernel mode to access the ports, while preventing less trusted usermode processes from touching the I/O ports and causing conflicts. All usermode programs should talk to a device driver which arbitrates access.The I/O permission bitmap can be used to allow programs not privileged enough (I.e. usermode programs) the capability to access the I/O ports. When an I/O instruction is executed, the processor will first check if the task is privileged enough to access the ports. Should this be the case, the I/O instruction will be executed. However if the task is not allowed to do I/O, the processor will then check the I/O permission bitmap.The I/O permission bitmap, as the name suggests uses a single bit to represent each I/O address. If the bit corresponding to a port is set, then the instruction will generate an exception however if the bit is clear then the I/O operation will proceed. This gives a means to allow certain processes to access certain ports. There is one I/O permission bitmap per task.Accessing I/O Ports under NT/2000/XPThere are two solutions to solving the problem of I/O access under Windows NT. The first solution is to write a device driver which runs in ring 0 (I/O privilege level 0) to access your I/O ports on your behalf. Data can be passed to and from your usermode software to the device driver via IOCTL calls. The driver can then execute your I/O instructions. The problem with this, is that it assumes you have the source code to make such a change.Another possible alternative is to modify the I/O permission bitmap to allow a particular task, access to certain I/O ports. This grants your usermode software running in ring 3 to do unrestricted I/O operations on selected ports, per the I/O permission bitmap. This method is not really recommended, but provides a means of allowing existing applications to run under windows NT/2000. Writing a device driver to support your hardware is the preferred method. The device driver should check for any contentions before accessing the port.However, using a driver such as PortTalk can become quite inefficient. Each time an IOCTL call is made to read or write a byte or word to a port, the processor must switch from ring 3 to ring 0 perform the operation, then switch back. If your intentions were to write, for example a microcontroller programmer which is programmed serially using a parallel port pin, it would make better sense to send a pointer to a buffer of x many bytes. The device driver would then serialise the data and generate the handshake necessary in the programming of a PIC device.Such an example is the USBLPTPD11 driver at www.beyondlogic.org/usb/usblptpd11.htm. This driver accepts a buffer of bytes via the IOCTL_WRITE_I2C IoDeviceCall and then big bangs this out in I2C format on a parallel port pin. The source code for this driver is available and is well worth a look.The porttalk device driver comes complete with source code. It provides the facility to modify the IO permission bitmap and/or write and read to I/O ports via IOCTL calls.Compatibility - Using existing applications under Windows NT/2000/XPPortTalk can be used in conjunction with allowio to make existing programs that access the I/O ports work under Windows NT/2000/XP. As you already know, any 32bit software will cause a Privileged Instruction Exception. Many hacks have been produced for I/O port access under Windows 95 and 98 such as .DLL libraries. Should you need to run such a software under Windows NT, an exception will occur. Try PortTalk.16 Bit Windows and DOS programs will run on virtual machines. In many cases existing applications should be transparent on Windows NT/2000/XP. However others just refuse to run. The virtual machines has support for communication ports, video, mouse, and keyboard. Therefore any software using these common I/O ports should run, however there is often a problem with timing. Other MS-DOS programs accessing specific hardware requires VDDs (Virtual Device Drivers) written to enable them to be used with Windows NT.The Virtual Machine will intercept I/O operations and send them to a I/O handler for processing. The way the Virtual Machine does this, is by giving insufficient rights to I/O operations and creating an exception handler to dig back into the stack, find the last instruction and decode it. By giving the VDM full rights to I/O ports, it has no means of intercepting I/O operations, thus creating less problems with timing or the need to provide VDDs for obscurer hardware.In order to change a processes IOPM, we must first have the process ID for the process we want to grant access too. This is accomplished by creating the process ourselves, so we can pass the ProcessID to our device driver. An small software is used which accepts the software name as an argument. This software then creates the process (i.e. executes the program) which starts and continues as another process in the system.Note : We can also register a callback with the operating system which notifies our driver of any processes started and what their ID is. We can then keep a directory of processes that we want to have access to certain ports. When this process is executed, the callback informs the driver it has started and what it's process ID is. We could then automatically change the IOPM of this process. See


Published by: beyondlogic.org
Downloads: 573
File Size: 66.4 KB
License: Freeware
Product Homepage: Visit beyondlogic.org
Release Date: 09 July, 2012
OS: Windows
Download Location: Primary Download Link Broken? Report it!


PortTalk 2.2 Download Tags:


Files32.com collects software information directly from original developers using software submission form. Sometimes it can happen that software data are not complete or are outdated. You should confirm all information before relying on it. Using crack, serial number, registration code, keygen and other warez or nulled soft is illegal (even downloading from torrent network) and could be considered as theft in your area. Files32 does not provide download link from Rapidshare, Yousendit, Mediafire, Filefactory and other Free file hosting service also. The software has been submitted by its publisher directly, not obtained from any Peer to Peer file sharing applications such as Shareaza, Limewire, Kazaa, Imesh, BearShare, Overnet, Morpheus, eDonkey, eMule, Ares, BitTorrent Azureus etc..
 
Top Software

FTP Rush 2.1.8
FTP Rush is a free comprehensive FTP client for smooth file transfer. The program offers fully-fledged functionality delivered in a user-friendly interface and allows experienced users to create...

Crypt4Free by

Crypt4Free 5.47
Crypt4Free is files encryption software with ability to encrypt files and text messages. Support for ZIP files and ability to secure delete sensitive files. Skinnable user friendly interface.

Luxand Blink! by

Luxand Blink! 2.0
Login to your PC without touching a thing! Luxand Blink! is a free tool to let you log in to your Windows account by simply looking into a webcam - no passwords to type and no fingers to scan.

InTask Personal by

InTask Personal 1.5
InTask designed to help team leaders, developers and QA persons to share their efforts and deliver the products on time. The product includes fast task management, interactive gantt, document...

Pop-up Free by

Pop-up Free 1.56
Get rid of annoying popup windows and enhance your Web surf experience. Kill unexpected popup windows and protect your privacy. No more annoying advertisement windows and save your time.

Glary Utilities Portable by

Glary Utilities Portable 2.56.0.8322
One Click A Day For PC Maintenance, Keeps Any PC Problems Away. With 7 million worldwide users, the first-rank & free Glary Utilities is an INDISPENSABLE friend for your PC, with its 100% safe,...

VPSpro by

VPSpro 3.695
VPSpro is the ultimate in the creation of financial projection and general business plans. The unique walk-through process is simple to use and makes easy work of the hard parts of business planning.

Rylstim Budget Lite by

Rylstim Budget Lite 4.5.1.6376
Plan and manage your finances with a simple friendly calendar. Perfect solution for home users and freelancers!

Neox Screen by

Neox Screen 1.0.0.277
Neox Screen is a free application which with the help of the hotkeys you can take screenshots that are crystal sharp, small in size and ready to be shared.

EMCO Remote Installer Free by

EMCO Remote Installer Free 4.1.1
This free remote software deployment tool is designed to install and uninstall Windows software on remote PCs through local networks. You can use it to install and uninstall EXE setups and MSI...

Latest Software

NoteBurner M4V Converter Plus 5.4.8
Easily convert your entire iTunes movie library including purchased and rented DRM M4V videos to MP4, MOV and so on with AC3 5.1 as well as AD audio tracks and subtitles preseved, which you can...

DMS-Shuttle by

DMS-Shuttle 1.4.0.94
DMS-Shuttle is a File Migration Tool for SharePoint. Intuitive user Interface allows to transfer folder structures between SharePoint and File Shares by using drag-n-drop or copy-paste shortcuts....

FaxTalk Multiline Server 9.0.0.1400
Easy to use network fax server software and broadcast fax software. Provides an affordable and reliable network fax server solution. Users can submit faxes directly from their computers without a...

Start Menu 8 by

Start Menu 8 4.5.0.1
Start Menu 8 is a desktop customized utility for Windows users, specifically designed to bring back the familiar Classic Start Menu to Windows 8/8.1 & Windows 10.

Dynamsoft Barcode Reader for Windows by

Dynamsoft Barcode Reader for Windows 6.4
Dynamsoft Barcode Reader enables developers to expedite the creation of applications for the recognition of 1D barcode formats. It is available on Windows, Linux, macOS, supporting various...

Speaking Teacher 3.0
Speaking Teacher can be used by either non-disabled or blind people. Speaking Teacher to work properly needs installed SAPI voices. Especially useful feature for the blinds learners is spelling...

Magic Lines 4.0
An engaging and cute variation of the beloved Lines game with nice 3D effects! 3 balls per turn are placed on the playing board randomly. You need to line them up by color, and if you get 5 they...

WidsMob PhotoVault 3.1.1228
WidsMob PhotoVault is able to hide photos in JPEG, GIF and RAW formats. Whether you have some personal photos, or important documents in JPEG, you need to encrypt and hidden photos from others.

Aquarium Lab by

Aquarium Lab 2018.5
Properly monitoring and maintain aquarium conditions can lead to a truly beautiful and healthy aquarium. Aquarium Lab makes it easy to track and graph water quality conditions for 21 different...

Slitheris Network Discovery by

Slitheris Network Discovery 1.1.278
Slitheris Network Discovery is a new network tool from Komodo Labs that provides world-class ipscans with a simple, easy-to-use interface.

User Time Control by

User Time Control 6.1.2.6
User Time Control Center lets you specify when exactly and how long the computer can be used. Schedule time intervals and the number of hours each child can use the computer per day a week.

quickSMTP by

quickSMTP 0.3.2
Easy to install and use mail server for Windows with POP3 and SMTP support. Unlimited domains and mailboxes. Comfortable management interface. Multi-threaded outgoing deliveries. Internal browser...

Related Searches

Currently Searching

Currently Downloading

Hardwood Backgammon by

Hardwood Backgammon 1.0.11
This is the closest thing to a real backgammon game you can get on your computer. With 3d graphics and quality computer players, it will keep you hooked. Not only can you play by yourself, but you...

Beautiful Cactus by

Beautiful Cactus 3.0
Beautiful flowering cactus show to an accompaniment of an acoustically based digital soundtrack, and all images are captioned. Beautiful flowering cactus from many unique habitats are presented for...

Corel PhotoImpact x3
PhotoImpact X3 is packed with fun photo projects, easy one-click photo fixes and new digital art tools that make your creative projects look their best. Quickly touch up your favorite pictures with...

Press Release Script by

Press Release Script 2.8
Press Release Script - Create Own Press Release Submission Web Site. Make Money with Google Adsense, Affiliates and Advertisement. Easily Handles Thousands of Press Releases. 12 Professionally...

Arcade Race Crash by

Arcade Race Crash 1.0
3D races with powerful weapons. Feel the heat! Your goal is to be the first at the finish. Up to 6 frontal and 6 rear weapons. Buy new weapons. Earn credits by destroying enemies' cars and being...

ExInsight for Microsoft Exchange by

ExInsight for Microsoft Exchange 1.1.144
ExInsight is a monitoring and statistics tool that provides a real-time view of the internals of Exchange Server transactions and allows you to evaluate individual user's usage of Exchange Server.

PA Server Monitor by

PA Server Monitor 4.0
PA Server Monitor is a Windows service that monitors the health and availability of Windows servers, network services (on Windows, Linux and other operating systems), and devices. No agents are...

W32/AutoIt Free Trojan Removal Tool by

W32/AutoIt Free Trojan Removal Tool 1.0
This free virus removal tool will detect and remove W32/AutoIt Trojan and its variants from your computer.

Flying Toasters Screen Saver 2.1
Toasters, watch them fly. Flying Toasters Screen Saver is a screensaver of flying toasters.

Keep It (a) Secret! by

Keep It (a) Secret! 2002B
Keep all your passwords, userid's, codes, etc. safe and secure in just one place. - In todays world there are so many codes, that you have to remembers - now you just have to remember one, and all...

Awesome Aliens of the Deep Screen Saver by

Awesome Aliens of the Deep Screen Saver 1.0
A screen saver with photos of unusual alien-like sea life. All photos are 800x600 high-quality images (a 1024x768 version is available). This Lite version (5 photos) is free, a Gold version has 30...

Green Metal Pasta Wallpaper v1.0
Green Metal Pasta Wallpaper is an abstract JPG wallpaper image of green waves with grey lines. The image is in 800 x 600 resolution.