Domain: linux1394.org
Stories and comments across the archive that link to linux1394.org.
Comments · 16
-
Re:I love reporters
FireWire hardware can be set up to allow or disallow DMA requests depending on the device on the other end of the wire. Most OSes now only allow it if the device on the other end looks like a hard drive for security reasons. You can lock them down further if you want:
http://matt.ucc.asn.au/apple/
http://rentzsch.com/macosx/securingFirewireLinux also has security features in recent versions of its kernel to protect against arbitrary DMA attacks. (Search for firewire-ohci.) Windows does the same thing. With the right tweaks, disabling FireWire DMA is completely within the realm of possibility if you're that paranoid.
Unfortunately. once you have FireWire DMA access, there is no way to actually fake the data in RAM, but you could theoretically require the user to take some action to enable FireWire devices, and upon detecting an unexpected DMA-capable device on the bus, use the power management hardware to power down the PHY for a few seconds, causing a bus reset and a stall for just long enough for you to page everything out to disk and replace the entire contents of RAM with naked pictures of Janet Reno, then reenable the PHY just before you overwrite the page that the wiper code occupies.
:-DOf course, this is very nearly undeniable proof that you are guilty of something. Nobody would do anything REMOTELY that insane if they didn't have something really MAJOR to hide.
-
Re: Successful GPL ProjectsHey, thanks! Instead of complaining about the article, let me see what I can come up with as a counter-argument. Good idea! So here's my list of GPL projects that seem to be relatively open to random contributions. This is IMHO, and you're welcome to disagree with what I think of the "openness" of each development community.
I'm sticking to GPL projects because I don't know about other ones as well. This is not meant to diss the BSD crowd.
- ALSA everyone welcome to submit a driver for their card. I might add that most Linux Kernel drivers and most drivers for a number of other projects (X, CUPS, gcc backends, etc.) are fairly open and you can jump right in.
- gentoo packages you might not get into the main distribution right away, but the community is very open and will try out pretty much anything you have to contribute. Like drivers, above.
- GIMP and GTK at least, pre-2000. Now there are a lot more developers, so jumping in isn't quite as easy.
- kino has a very flat hierarchy. linux1394 is the same. Like drivers, above.
- MediaWiki
Okay, but I also think that cataloging open source projects is kind of fruitless, since there are so many. The internet connects people with common interests. They develop projects. Some are more open than others. Still, if the project gets too rigidly hierarchical, someone will fork the code and head off in a different direction. Example: the different flavors of BSD.
-
Exactly what you wantI found this a while ago at http://www.linux1394.org/:
http://oss.oracle.com/projects/endpoint/ - it turns a linux machine into a SBP-2 endpoint.
-
frame-by-frame retouching
http://cinepaint.sourceforge.net/ CinePaint is painting and retouching software primarily used for motion picture frame-by-frame retouching and dust-busting http://www.linux1394.org/ For Firewire Tools
-
Make Linux machine into an external disk?
I have not had the time to investigate this, but for the longest time I have wanted to be able to make a linux machine look like an external FireWire/IEEE 1394 hard disk.
The point of this would be that I could put all the drives I want in a cheap case, with a cheap mobo and ieee 1394 card and 'serve' as many HD's as I could fit into my case and configure into a raid array as a large disk. RAID 1 and/or 5 drive enclosures that accomplish this seem to run at over $1200, not including the disks.
I've poked around a bit at the Linux1394 site, but It's way over my head at the moment. -
Re:Easy
Interesting you should bring up HDTV; I'm in the middle of setting up a HD PVR based on a G3 PowerMac I just bought on eBay.
My digital cable box, the Motorola DCT-6200, puts out a MPEG2-TS stream over its 1394 port. Using the VirtualDVHS package that's part of Apple's Firewire SDK, it should be possible to record HD video; playback will probably require something a little beefier than the 300 MHz G3, but I have more powerful Windows boxen that can handle that.
If you're a Linux guy, check out Linux1394; it should be able to handle both DV and HDTV. AFAIK, there's no working Windows solution for my particular situation just yet (Windows doesn't recognize the Moto box as being anything particularly useful; promised firmware updates from Moto may change that). These guys have been in beta for quite a while now, but no release date has been announced.
HD-capable PVR solutions should become more common in the next few months -- as of April 1, per a recent FCC ruling, US digital cable providers who supply HD services must, at customer request, provide a box that makes the HD signal available through a computer-friendly interface (everyone's taken this to mean 1394, AFAIK). -
Re:IEEE1394 connectivity, huh?
Well, I can't say anything about 2.6.4, but I know with 2.6.3 when I boot it detects and adds my firewire primary drive as a SCSI drive, as well as removes it and automatically re-adds it when I unplug it and plug it back in. The only issue I have had with it so far is that it doesnt automagically detect my second Firewire drive. If I cycle the power on the second drive after boot up, it gets added automagically however, so it really isn't that big an issue for me. I haven't read the changelog for 2.6.4 yet, and this may have been addressed.
With the 2.4 kernels I had to manually add them by echoing an add-single-device command into /proc/scsi/scsi. My understanding was that hotplug wasnt working well with SCSI devices, so I just stuck with doing that. It may have been fixed in later 2.4 kernels and/or versions of Hotplug.
As to installing Knoppix on the drive itself, unless your BIOS will boot from IEEE1394 drives it wont do you any good, better to put it on the internal.
You could go the route of using a kernel on a boot floppy with the firewire SB2 driver built into it, and then have the boot floppy mount the drive.
As to the general level of support for IEEE1394, there are of course some things that could be fixed, there is some hardware that doesn't play nice yet, but overall I would say it's damn good.
Here is a link to help you check and see if your external drive is supported, as well as any other IEEE1394 hardware you may have. Linux1394 -
you'll need this..what you need for this is recipt:
*eth1394 (depends on ieee1394 - and both are in the latest kernels - I know it's in the 2.4.20+ for a fact *use it myself..not eth1394, but ieee1394...*)
- but Read this site carefully, check your kernel,
- download a patch & patch it if necessary... the 'usual common sense'-principle...
so grab a supported/the patched kernel...,and don't don't forget to configure & compile it with these options:
- 'OHCI-1394 support'
'Ethernet over 1394
'Raw IEEE1394 I/O support' ...ps, and maybe while you're at it, add 'SBP-2 support (Harddisks etc.)' too ...
(btw, in 2.4.20+ - you'll need to enable "Code maturity level options --> [*] Prompt for development and/or incomplete code/drivers" , or else you won't see the "IEEE 1394 (FireWire) support (EXPERIMENTAL)" all this is under..)
if you compiled 'all of these things' as 'Modules', don't forget to load up these modules(and try to do them in that order....):
- ieee1394
raw1394
ohci1394
eth1394
elsewise, load only those that are modules
.... - and if you compiled all of them into your kernel, just skip all of the above...!PS - on some hardware it's also required that you first unload 'ohci1394' before you remove your the Firewire Controller (ONLY for PCMCIA users
...)!PS - if you are a really 'unfamiliar with loading & unloading drivers' & 'don't know how to automate these things'.... don't bother, stick with your windows/OS X box... }:-)
- DVTS - for some furthur info if you don't manage on your own ( they are implementing a "..DV streams from IEEE1394 over IP.", sorta related, I guess)
- FIREHOSE - "FIREHOSE gives you a basic data transfer over multiple network devices supporting TCP/IP layers. Stripe multiple 100Mbit, Gigabit, 10 Gigabit, or firewire to give one humungous pipe for firehosing your gigabytes and gigabytes of data." (I guess, also related...)
-
you'll need this..what you need for this is recipt:
*eth1394 (depends on ieee1394 - and both are in the latest kernels - I know it's in the 2.4.20+ for a fact *use it myself..not eth1394, but ieee1394...*)
- but Read this site carefully, check your kernel,
- download a patch & patch it if necessary... the 'usual common sense'-principle...
so grab a supported/the patched kernel...,and don't don't forget to configure & compile it with these options:
- 'OHCI-1394 support'
'Ethernet over 1394
'Raw IEEE1394 I/O support' ...ps, and maybe while you're at it, add 'SBP-2 support (Harddisks etc.)' too ...
(btw, in 2.4.20+ - you'll need to enable "Code maturity level options --> [*] Prompt for development and/or incomplete code/drivers" , or else you won't see the "IEEE 1394 (FireWire) support (EXPERIMENTAL)" all this is under..)
if you compiled 'all of these things' as 'Modules', don't forget to load up these modules(and try to do them in that order....):
- ieee1394
raw1394
ohci1394
eth1394
elsewise, load only those that are modules
.... - and if you compiled all of them into your kernel, just skip all of the above...!PS - on some hardware it's also required that you first unload 'ohci1394' before you remove your the Firewire Controller (ONLY for PCMCIA users
...)!PS - if you are a really 'unfamiliar with loading & unloading drivers' & 'don't know how to automate these things'.... don't bother, stick with your windows/OS X box... }:-)
- DVTS - for some furthur info if you don't manage on your own ( they are implementing a "..DV streams from IEEE1394 over IP.", sorta related, I guess)
- FIREHOSE - "FIREHOSE gives you a basic data transfer over multiple network devices supporting TCP/IP layers. Stripe multiple 100Mbit, Gigabit, 10 Gigabit, or firewire to give one humungous pipe for firehosing your gigabytes and gigabytes of data." (I guess, also related...)
-
Re:Firewire
I'm not sure if this is due to the fact that I have a Sony Vaio laptop (they may or may not use a standard ieee1394, for their i.link) or if firewire support is just jacked on Linux. But everytime i boot my computer, I have to run a stupid script to re-detect it. In addition it drop's off and drops back on all the time that kudzu doesn't even know what to do with itself anymore. This is all on a docking station that I never use to remove. However, it's gotten to the point where I just gave up and switched to an External USB and removed the docking station. Everything just works and I am happy.
-
PS2 + Linux + MiniDV = home AV
Why not use the PS2 Linux distribution? The Linux1394 project offers strong support for FireWire, especially DV gear. You could use your gifts to get your video on the TV, with Open Source editing tools. Along the way, you'll get your PS2 on the network, and much more portable gear in the PS2 formfactor. And you'll support the OSS FW and DV communities with your feedback.
-
Re:WTF?
Won't this work?
-
Re:I agree with this postGuess I need to defend myself, which is odd, because everthing that didn't start with something akin to "in my opinion..."
from Linux1394: What exactly is IEEE 1394? It is a serial bus similar in principle to USB, but runs at speeds of up to 400 Mbit/s and is not centered around a PC (i.e. there may be none or multiple PCs on the same bus). It has a mode of transmission which guarantees bandwidth which makes it ideal for digital video cameras and similar devices.
from Linux-USB:The specification (version 1.0) was first released in January 1996 and the latest official version 1.1 was released in September 1998 The document is still under development and a version 2.0 was announced in 1999. The USB is strictly hierarchical and it is controlled by one host. The host uses a master / slave protocol to communicate with attached USB devices. This means that every kind of communication is initiated by the host and devices cannot establish any direct connection to other devices. This seems to be a drawback in comparison to other bus architectures but it is not because the USB was designed as a compromise of costs and performance. The master / slave protocol solves implicitly problems like collision avoidance or distributed bus arbitration. The current implementation of the USB allows 127 devices to be connected at the same time and the total communication bandwidth is limited to 12Mbit/s. Howewer use of low speed devices, management of USB "interrupts" and other overheads mean that actual throughput cannot exceed about 8.5Mbit/s under near ideal conditions, and typical performance may be around 2Mbit/s.
finally, for the speed of USB2, check out any one of numerous product descriptions such as this one:USB 2.0 runs at up to 480 Mbits/sec.
-
Re:Parallel & Serial ATA? Where is Firewire?
How exactly is SATA better than IEEE 1394 (firewire) for internal uses? Do you like being limited to the number of ports the motherboard manufacturer thought was necessary? 1394 allows you to chain devices, akin to scsi - much more convenient.
SATA requires a special power connector too, likely on the motherboard itself. 1394 gives you power too, in one little connector.
Linux certainly does support 1394. When our tape library failed at work, we replaced it with a bunch of firewire disks. Not only do they offer more storage at a lower cost, but they are all simultaneously online and are hell of a lot faster than tape. See linux1394.org
Do you really want to perpetuate the cruft that is ATA? You don't need drivers for SATA because it inherits many of PATA's limitations. Personally, i like hotswap (important for software raid) and i like isochonous transfer (good for cd burners as well as video streams). 1394 requires new drivers because it offers more. Linux has no problem reading 1394 drives. Windows has no problem reading 1394 drives. MacOS has no problem reading 1394 drives. How difficult would it have been to boot off of 1394? The only real obstacle is that anachonism - the PC BIOS. Replace with linuxBIOS and you'd be golden.
If Apple and Co had not decided to tax firewire, we would have had this years ago. Back in the days of the FX chipset, intel promised to include 1394 in it's motherboard chipsets, right next to USB. But no. They didn't want to be beholden to a third party, so they went off and invented the abomination that is USB2.
-
WiebeTech Firewire RAIDCheck out the WiebeTech Firewire Raid.
Check out the comparitive review at barefeats in which they conclude that the WiebeTech product performs better than the competition.
Note that if you don't have firewire hardware on your box, you can get a PCI or Cardbus card to do it. There is a compatibility list at www.linux1394.org. I'm using one of the Belkin cards in my PC, and it works well.
Disclaimer, so you don't think I'm astroturfing: WiebeTech is my current consulting client.
-
what I had submitted
Here is a slightly bulked up version of my submission for this story:
Ok first, the official name used to be IEEE-1394, but not surprisingly, eventually they decided to just go with FireWire (which was previously an Apple-only name for the technology). Current version is 1394a which tops out at 400 Mbps, next is 1394b which starts at 800 Mbps.
Apple has been a strong proponent and developer of the technology. Sony also (they like to call it i.Link) Mostly it is used to connect to DV cams, but you can also use it for other peripherals that need high speed. I use it for my external hard drive and an external CD burner. But of course, you could also in theory use it for networking. Hence, IP-over-FireWire (as compared to say, the current IP-over-Ethernet). The standard specifying this is RFC 2734. (To be very technical, this only specifies the IPv4 implementation.)
Microsoft supports 1394 and in particular had an IP1394 stack for a while, in ME and now in XP. The Linux 1394 project has been working on it, but it had a lot of trouble getting off the ground. And now (finally) IP1394 is available from Apple.
It will be interesting to see if the Apple implementation interoperates with the Microsoft one.
My Master's project is on this topic. My school page is sadly out-of-date, I need to update it ASAP.