specs and modules
specs and modules
Posted Jan 9, 2003 7:58 UTC (Thu) by BrucePerens (guest, #2510)In reply to: specs and modules by eru
Parent article: Two views of freedom and software
I strongly doubt that device drivers expose significant intellectual property regarding the underlying device. The intellectual property in the device is contained in its VSLI implementation and the microcode that it runs (in the case of a sophisticated device like a 3D card), neither of which are going to be released with an Open Source driver. What is revealed in the driver is a fraction of what you'd need to duplicate the device. And who wants to duplicate last year's design?
One almost credible reason I've heard to keep drivers hidden is that the company is afraid of people seeing what software patents they might employ. But in reality manufacturers of very complicated devices have documented those devices for driver writers, or have released their own Free drivers, without even one incident of the device being copied because of it.
Bruce
Posted Jan 9, 2003 8:23 UTC (Thu)
by gregjor (guest, #6304)
[Link] (9 responses)
Who do you think gets the phone calls and emails from Joe Walmart when their $300 Linux box doesn't display video or play sounds? I've worked for companies that make and sell hardware and one of their biggest costs is support. To minimize support costs they try to control the software. And it's not just end users who generate support requests; developers trying to write their own drivers can chew up the profits from 100 video card sales with support calls and emails. Vendors frequently outsource driver development and enter into exclusive contracts and NDAs. We can debate whether that's a good practice or not but unless we're on the board of directors it really isn't our business. With 95% or more of the desktop market running Windows it's no wonder companies don't allocate resources to Linux. Linux is making inroads in the server market, but it's the desktop market that cares about video cards and sound cards and the majority of devices that vendors don't deliver Linux drivers for. Developing a Linux video card driver may cost as much as writing a Windows driver, but Linux system sales are nowhere near Windows systems sales. I accept that few companies make parts and accessories for my 1978 car; Linux users have to accept that they are still a tiny niche and aren't going to get the same development and support attention as Windows users do. And they certainly aren't going to get management attention for their tiny fragmented market share with people like Richard Stallman calling them names. It's easy from the outside to criticize and second-guess why vendors behave the way they do, and then conclude that they are simply stupid or afraid. In the real world conspiracies are much less common than simple market forces and mundane (but understandable) business decisions. I wholeheartedly support open source development, but the arrogance of some of the more vocal advocates astonishes me. No one likes a know-it-all who spends most of their time telling everyone else how they should be doing things. Greg Jorgensen
Posted Jan 9, 2003 8:53 UTC (Thu)
by mathieu_lacage (guest, #3967)
[Link] (4 responses)
Even if the algorithms used in the chip are well known and many papers have been published on them, the specific power consumption/silicon area/speed/feature set compromise is key to the architecture of the chip and must be documented if you want to release a specification. Clearly, this is a valuable asset for many companies. Also, I think some people underestimate the fact that few companies actually really write usable documentation. Experience with certain chips has shown me the documentation for the microcode interface can be as simple as a header file which contains #defines and a few C comments. This is hardly enough information to write a driver.
Posted Jan 9, 2003 9:49 UTC (Thu)
by ekj (guest, #1524)
[Link] (3 responses)
This would be parallell to claiming that Ferrari would be releasing all their motor-secrets if they told the world where to attach the various plumbing for their engines. (such as: "air intake-hose goes here, radiator with a minimum cooling-capacity of foo should be attached over there...")
I don't care *how* the card does its job. I only care how to tell it to do its job.
The argument that releasing this would give significant secrets away to competition is also bogus, reverse engineering of existing drivers is not that hard, you can be sure that if significant knowledge could be gained this way, the competition would already be doing it.
Posted Jan 9, 2003 10:15 UTC (Thu)
by gregjor (guest, #6304)
[Link]
The time it takes a competitor to reverse-engineer a chip and make a copy is itself a competitive advantage; there's no incentive for a company to help their competition, even if all they are doing is buying enough time to release the next chip. If a company chooses to hold their secrets close--even if you don't think those secrets are all that valuable or secret--what business is it of yours to tell them otherwise? You have the freedom to design and make your own graphics chip. Once you've made the enormous capital investment in R&D and manufacturing perhaps your opinion would change.
Posted Jan 9, 2003 11:52 UTC (Thu)
by macc (guest, #510)
[Link]
write n Bytes to reg <data> but with most "hardware" found today As an example one of the newer DDS Chips
Posted Jan 9, 2003 13:23 UTC (Thu)
by mathieu_lacage (guest, #3967)
[Link]
It is often possible to hack a half-working product without understanding the details of the underlying code but shipping a finished product is an entirely different matter and requires taking care of the details of your code which in turn requires understanding the details of the underlying API. I have noticed a lot of programmers take a very different approach to programming: they just copy/paste code, do not try to understand what they are doing. My (limited) experience has shown me that these programmers usually generate at best buggy and/or overly inefficient code.
Posted Jan 9, 2003 12:25 UTC (Thu)
by rknop (guest, #66)
[Link] (3 responses)
I agree with you. But what matters is what the hardware vendor perceives as their risk, not what you or I think they should do.
Who do you think gets the phone calls and emails from Joe Walmart when their $300 Linux box doesn't display video or play sounds? Woah! Turn that one around. The problem there is not that the all-free philosophy which would cripple the Wall-Mart PCs. The problem is the prevalence of proprietary standards and patented algorithms for video and sound! Free OSes are starting from behind in that arena. One solution is to say, OK, can't use a free OS for everything. Is that really the solution we want? Or do we want the free OS to have the freedom to implement support for the sorts of things people want to do? A lot of the rhetoric about companies' "freedom" really comes down to freedom to dominate. Do we really value corporation freedom to the same level as individual freedom? (Sometimes it seems we value it more, since after all "the economy" is the most important thing.) -Rob
Posted Jan 9, 2003 19:55 UTC (Thu)
by gregjor (guest, #6304)
[Link] (2 responses)
However our society, our laws, our markets do not force you to do that. While companies are free to give their property away, they are also free to keep it secret and profit from it. You and RMS can call that "domination" but it's a fact of our laws and our market-driven economy. RMS was always free to write software and give it away, with source code, and to waive his copyrights. But just because he does it doesn't mean everyone else should have to do it, too. To me it seems like you want someone else to make the big investments in R&D and development and manufacturing, and then give up their real or imagined profits to satisfy a tiny minority who live by novel definitions of the words "freedom" and "property." RMS lives on the goodwill of his followers, like a religious leader. The rest of us have to live in the world of companies and jobs and work for hire and feeding kids. While I may agree with some of his social criticisms I'm not making a living espousing his philosophy. I can, however, make a living writing Windows programs, even if I can't see the source code. Greg Jorgensen
Posted Jan 9, 2003 21:22 UTC (Thu)
by rknop (guest, #66)
[Link] (1 responses)
To me it seems like you want someone else to make the big investments in R&D and development and manufacturing, and then give up their real or imagined profits to satisfy a tiny minority who live by novel definitions of the words "freedom" and "property." If I lived in the ideal world that you live in, I would agree with your criticisms of me. Unfortunately, I live in a world with monopolies on various things that make it difficult for anybody else to compete. I live in a world with a patent system run awry that nobody can do independent development without running afoul of umpteen really lame obvious patents owned by somebody else. It's fine if companies don't want to publish there source code. I have no problem with that. But I do have a problem when patents and the DMCA-- i.e. "must protect intellectual property at all costs"-- are given as reasons for free software being inable to use a certain protocol, data format, or piece of hardware. That is where the land grab and the "freedom" of the companies you are so eager to defend has, in true Lockian fashion, started to step past the boundary of somebody else's freedom. -Rob
Posted Jan 9, 2003 23:24 UTC (Thu)
by gregjor (guest, #6304)
[Link]
I'm not defending companies that engage in anti-competitive and litigious practices. However I'm not so eager to accuse every company who does something I don't agree with of "domination" or to try to impose my own philosophy of freedom on the world. I started my comments criticizing Stallman's language and the immediate jump from "no Linux driver" to "big evil corporation stomping on our freedoms." Greg Jorgensen
Posted Jan 21, 2003 19:40 UTC (Tue)
by Baylink (guest, #755)
[Link]
And yet, this is precisely the excuse given by -- specifically video card manufacturers -- for not *doing* open source drivers... though many people strongly suspect that the real reason is that they're violating patents left and right, and releasing the code would illuminate that, to their detriment.
I agree with you. But what matters is what the hardware vendor perceives as their risk, not what you or I think they should do.specs and modules
It seems to me the main reason behind not releasing the specs for a piece of hardware and its associated microcode (btw, a lot of hardware, not only nifty 3d cards have microcode) is simple and has already been stated by previous readers: the hardware vendor which designed the chip usually does not want its competitors to know the specific engineering/architectural compromise which was made when the chip was designed. specs and modules
But why do you (and so many) assume that releasing the specs for how to interoperate with the chip is the same as releasing documents on how the chip works ?specs and modules
Bad analogy. Most likely only Ferrari manufactures compatible parts for their cars anyway. Platform lock-in is normal in the world of cars. Just go try to buy a generic radiator with a minimum cooling capacity of foo that will fit in a Ferrari (or any other car). Aftermarket companies are free to reverse-engineer and copy parts but they aren't putting the auto mfrs. out of business--the real or perceived quality and compatibility advantage of a brand name is more than enough in that market.specs and modules
This would be true for an API that saysspecs and modules
then set bit execute in reg <cmd>
wait for bit done in reg <status>
the API widens.
quite a lot of "hard" functionality
has been moved to software. now the
API you would have to know about unveils
quite a lot of info how this hardware
ticks inside.
And in quite a lot of cases this will also
expose botched designs and hardware bugs.
from Analog Devices has a bug that shows
that the Designer has not understood adding
and subtracting of signed integers in hardware.
I tend to think that you need to understand the design and the architecture of the underlying API/code to be able to use an API efficiently.specs and modules
specs and modules
You are free to develop your own standards and algorithms, design your own chips and video cards, and make your own computer systems, completely disconnected from the messy proprietary world. And when you've done that, and made those huge investments of time and money, you could choose to give your intellectual property away, not patent anything, and publish all the specs.specs and modules
specs and modules
I share your opinion of monopolies and software patents and the DMCA. I agree that big powerful companies pervert the market to suit themselves.specs and modules
I strongly doubt that device drivers expose significant intellectual property regarding the underlying device.
specs and modules
