Sponsored Content
Full Discussion: Could USB ever take over PCI
Special Forums Hardware Could USB ever take over PCI Post 302866263 by Corona688 on Monday 21st of October 2013 04:21:28 PM
Old 10-21-2013
Leaving aside the performance problems, there's a bigger fundamental difference between the two. There's things PCI can do and USB just can't. DMA as mentioned above is one of them.

This is because the PCI bus is an extension of the CPU's own hardwired bus, essentially. It has most of the same features as the CPU's own bus, and communication is extremely direct, to the point all hardware on PCI as well as system memory in general ends up inhabiting the same memory map. (More or less. It's gotten more complicated with each revision, but once configured, still handles itself in a manner like this.) Use one address and you're talking to system memory. Use another address and you're talking to video RAM. Use another address and you're talking to your network card's boot ROM. And such.

This turns out to be vital for things your computer absolutely needs to boot, like video. They can include little bits of machine code on the cards which give the BIOS a very basic ability to use them. The BIOS doesn't have to load a driver to see it, the code just kind of appears in memory where it needs to be thanks to the memory map. This is also why mac's require different kinds of video cards than PC's -- different kind of BIOS.

USB is extremely in-direct; it takes tons of messages back and forth to do anything, and wasn't designed as a CPU bus anyway. Things PCI does with one pulse would have to be emulated in software. Rigidly standard things like USB keyboards are handled in BIOS these days, USB media as well (though often badly). But you couldn't replace a PCI video card with a USB one and have your computer boot. The BIOS by nature is too dumb to load a driver, and sees no video as a result, and cannot boot.

Last edited by Corona688; 10-21-2013 at 05:42 PM..
 

9 More Discussions You Might Find Interesting

1. BSD

WLAN PCI Cards

Hi! I just wanted to know what network cards are supported in FreeBSD. I have looked at the list of supported cards but I can't find any of them in the stores. Is the list not updated, I would really preciate info about where (in EU, Sweden) I can buy them. /Peter (2 Replies)
Discussion started by: Barfly.se
2 Replies

2. Solaris

Pci Id

How do I get the PCI ID for my Realtek adapter? It's a Solaris x86 installation. (5 Replies)
Discussion started by: kuultak
5 Replies

3. UNIX for Dummies Questions & Answers

bad pci slot?

Hi, im having a problem installing my pci wireless card. Im using knoppix, but my problem is with the mobo i think. im using an older laptop, toshiba satellite 2540 and when i plug in the card i get lights on sometimes. this means its getting power right. so then to install the card into the... (0 Replies)
Discussion started by: jestra
0 Replies

4. UNIX for Dummies Questions & Answers

sun blade 100 test-all frozen at pci@1f,0/usb/c,3

platform: sunblade 100 Solaris 10. When running a test-all from the ok prompt on this new (to me) system, it locks up at pci@1f,0/usb/c,3. It's been there for about 25 minutes. I do have a usb keyboard and mouse attached, both are known good. There is no flash stick/ thumb drive... (0 Replies)
Discussion started by: montana77
0 Replies

5. Linux

PCI Card recognized

I installed PCI Card HP SC44Ge - SAS1068E on my linux CentOS 5.4 is there a way to find out if the PCI is properly installed and recognized by linux. lspci is enough? just to add that PCI card is connected to a tape... also how can I find out driver and firmware version? thanks a... (1 Reply)
Discussion started by: karlochacon
1 Replies

6. UNIX for Dummies Questions & Answers

USB-USB cable between linux and windows computers

Is there an easy way to setup a cross-over cable (USB-USB) between a linux box and a windows PC? My 2 machines are next to each other but I really do not want to keep transfering my files using my USB drive. Thanks! (4 Replies)
Discussion started by: Xterra
4 Replies

7. Programming

help writing pci firmware

For a project that I'm working on I want to write a low level PCI driver, but I can't seem to find any free/cheap documentation on PCI firmware specifications. I came across the "pci firmware specification 3.0" manual but this costs USD $1000 :eek:. I am not developing a commercial product... (13 Replies)
Discussion started by: neur0n
13 Replies

8. Solaris

available PCI slots on v440

How do I find any available PCI slots on a v440? When I run prtconf, I get the following output? But I am not able to make out whether all the PCI slots are used. ================================= IO Devices ================================= Bus Freq Brd Type MHz Slot ... (1 Reply)
Discussion started by: jtamminen
1 Replies

9. Slackware

converting mouse to pci

Need to free up a usb port for webcam. What does xorg.conf look like in order to work if I move mouse to PCI port via a converter plug? (1 Reply)
Discussion started by: slak0
1 Replies
UFTDI(4)						   BSD Kernel Interfaces Manual 						  UFTDI(4)

NAME
uftdi -- USB support for serial adapters based on the FT8U100AX and FT8U232AM chips SYNOPSIS
To compile this driver into the kernel, place the following lines in your kernel configuration file: device uftdi device ucom Alternatively, to load the driver as a module at boot time, place the following line in loader.conf(5): uftdi_load="YES" DESCRIPTION
The uftdi driver provides support for various serial adapters based on the FTDI FT2232C, FT8U100AX and FT8U232AM chips. The device is accessed through the ucom(4) driver which makes it behave like a tty(4). HARDWARE
The uftdi driver supports the following adapters: o B&B Electronics USB->RS422/485 adapter o Elexol USB MOD1 and USB MOD3 o HP USB-Serial adapter shipped with some HP laptops o Inland UAS111 o QVS USC-1000 o Buffalo PC-OP-RS / Kurouto-shikou KURO-RS universal remote o Prologix GPIB-USB Controller SEE ALSO
tty(4), ucom(4), usb(4) HISTORY
The uftdi driver appeared in FreeBSD 4.8 from NetBSD 1.5. BSD
November 22, 2006 BSD
All times are GMT -4. The time now is 05:03 AM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy