Groklaw Takes A Closer Look at the ABI Files, by Frank Sorenson et al Friday, January 30 2004 @ 11:53 PM EST This article is the result of a group research project, compiled and primarily written by Frank Sorenson with Pamela Jones. The special footnoted article explaining some of the terms for nonprogrammers was written by Nick Richards. The research group was primarily composed of Frank Sorenson, Dr. Stupid, Harlan Wilkerson, Rand McNatt, Roland Buresund, and Pamela Jones, all of whom contributed both research and writing, with input from some Linux kernel contributors. Everyone worked on editing, including an invited group of Groklaw regulars. However, Frank carried the load more than anyone else, so his name is on the finished article.
We are now publishing the article and welcome Groklaw readers' further contributions, corrections, improvements, and comments. This is an ongoing project. This article is the first in a series where we'll discuss the System V UNIX ABI, or Application Binary Interface. We approached the research as, What if Linus Torvalds had not already claimed paternity of most of the header files? Then what?
The article will first explain what the ABI is and what it does, then discuss whether the code was released under the GPL and if so whether management at SCO knew and approved, and finally show how the Linux files that pertain to this do not appear to be infringing files that SCO can claim.
For those who are not programmers, such as myself, there is a footnoted section to explain in greater detail and in plain English what ABIs and APIs and shared libraries are and how they work. If you read it first, it will clarify the terminology for you and you will be able to follow the thread in the article more easily. At least, it helped me tremendously.
I think you will see from this article alone that if SCO is planning to sue anyone over the ABI files, unless there are facts we haven't unearthed, they seem to be leaning on a rickety bamboo reed.
GROKLAW TAKES A CLOSER LOOK AT THE ABI FILES ~by Frank Sorenson et al
Back in January 2003, word leaked out that SCO was planning to charge Linux users for "System V Intellectual Property" in Linux. SCO created a new business division called SCOSource to come up with new ways to make money from this "intellectual property". The original SCOSource Presentation (PowerPoint version) talks of licensing SCO's shared UNIX Libraries from OpenServer and UnixWare for use in Linux.
A Little Background: What Are ABI Files? [1]
As background information, shared libraries are files containing information to be loaded when an application is run. They usually implement common routines, and their inclusion simplifies programming, reduces file size, and standardizes interfaces. A simple example of this would be the "copy file" and "move file" commands: both commands check file permissions and manipulate the file system. When applications have a great deal of functionality in common, this functionality is often placed into shared libraries.
Shared libraries are architecture, operating-system, and version specific. Executables for different systems follow various standard formats, such as a.out, ELF, and COFF. To load an application, the system must do several things: the system interprets the format of the executable (or binary), loads any shared libraries referenced, and begins executing the code found in the binary.
If the executable is in a different format from those the system supports, or if the library files are for the wrong architecture or operating system version, the binary normally will not run. In 1991, Intel announced the availability of the iBCS-2 (Intel Binary Compatibility Specification), a specification designed by Intel, SCO, and Unix System Laboratories (USL) to enable binary compatibility and migration capabilities between systems. SCO's Tim Ruckle said this to encourage support:
'The goal of 'shrink wrap' software for the open systems marketplace will not be
Get TCP/IP Illustrated 1/2/3 (Stevens) (AKA The Bible)
Any Oreilly books, particularly the nutshells
If you can persuade them to spend the cash a copy of the ANSI C and C++ standards.
Also get the book "Introduction to Algorithms" by Thomas H. Cormen (Editor), Charles E. Leiserson, Ronald L. Rivest, Clifford Stein
I really recommend the Algorithms book, coz it'll stop people re-inventing the wheel, and give them an idea of what computers can actually do, not to mention teach them how to do it...
Yep, I find that going from here (Amsterdam) to Paris on the TGV is where the graphs cross, when you factor in getting to airport, check in, flight / Journey, and getting into the city.
I live in Ams. and can tell you that in addition to the trams there is also the sneltram/metro system (Like, er, a metro), and the bits of that in central Ams go underground. Although once you get to the outskirts it runs overground too.
Oh, yeah, and if it's within an hour you're *meant* to re-use your ticket.
Oh, yeah. I forgot about that, I get a warning 4 days in advance, and when the wife shouts at me I just check the reminder off, and remember not to respond...
If Microsoft says they're going after adobe using XML the day after CKK says that they get a slap on the wrist for years of predatory monopoly manipulation (Say that 3 times fast) then the chances are they're not going to follow the XML specs intent, but follow the spec enough to be able to say it...
BTW Excel is so popular because M$ went after lotus HARD, oh, and made it very hard for lotus 1, 2, 3 to read excel docs...
I have to remind you - if I need GUI to interface other X11 machines then OS X is not my best friend.
No, but it's not your enemy either, install rootless X11 and you get your X windows in the same environment as your aqua windows. I start XDarwin at login, and don't even have to think about it...
Also I have Office X - Say what you like about MS, but I have to write docs for work, and office works - I can generate my data on the command line (Grep, cut, sed, awk etc), import it into excel, plot graphs (For Resource usage crap for Mgmt) and embed them in a capex proposal in word. All in the best environment for the job, on the same machine...
GUI's are essential for nice documents, and it helps that Office is fairly compatible for complex documents across platforms (Try getting this done in OpenOffice, and having word understand the result...)
Each to their own of course, it's OS choice after all, but I like the cute GUI with the UNIX command line and the easy access to X apps. It's just better than any of the other options...
Those of us who got sick of waiting for the Gnome / KDE war to stop long enough to get a *usable* linux desktop finally caved in and bought a nice shiny Powerbook because it ran OSX...
I'm sorry but gnome and KDE SUCK compared to aqua. Not to mention all the things that just work in aqua out the box (Hmmm, iTunes, DVDPlayer, CD Writing)
WRONG!!!! There is NO PLACE IN A FREE SOCIETY FOR GOVERNMENT PRODUCED BROADCATING. All such content is ALWAYS pro government. Objectively look at NPR/PBS, and ask this question:
Actually, in the UK, the BBC is usually less pro-government than the independant TV / radio channels.
I think that has to do with the fact that the BBC is guaranteed fundage, while the independant channels need to keep government sweet or they lose their license...
Let's see now. I've been a contractor for eight years (For real companies, all that time)
From my current contract (Virtually identical to every other contract I've ever had...)
Clause 7 (Confidentiality), subclause 1
Any improvement discovery or invention discovered or developed by the employee during the term of his employment shall unless such discovery invention or improvement is unconnected in any way with the company or the customer or their respective businesses belong to the company and/or the customer as the case may be and employee shall execute any documents and undertake any act the company shall reasonably require to perfect the title of the company or the customer as the case may be to such improvement discovery or invention.
Clause 8 (Copyright and design rights)
The employee will promptly disclose to the company all works in which copyright or design rights may exist which he makes or originates either by himself or jointly with other people during his employment. Any copyright works or designs created by the employee in the normal course of his employment or in the course of carrying out duties specifically assigned to him, which relate to the affairs of the company, shall be the property of the company whether or not the work was made at the direction of the company, or was intended for the companyand the copyright in it and the rights in any design shall belong to the company and to the extent that such copyright or design rights are not otherwise vested in the company, the employee hereby assigns the same to the company
Thankfully I'm only employed for the hours I'm at work, which is the important thing to make sure your contract is explicit about...
Actually, if the kessel run is a sequence of movements, all completed in as short a distance as possible, at a set speed, a parsec is a good *length* to measure it in...
"Hey Slashdot!"
"Hey What?"
"I heard you had a mentality"
"Yeah, for how much?"
Groklaw Takes A Closer Look at the ABI Files, by Frank Sorenson et al Friday, January 30 2004 @ 11:53 PM EST
This article is the result of a group research project, compiled and primarily written by Frank Sorenson with Pamela Jones. The special footnoted article explaining some of the terms for nonprogrammers was written by Nick Richards. The research group was primarily composed of Frank Sorenson, Dr. Stupid, Harlan Wilkerson, Rand McNatt, Roland Buresund, and Pamela Jones, all of whom contributed both research and writing, with input from some Linux kernel contributors. Everyone worked on editing, including an invited group of Groklaw regulars. However, Frank carried the load more than anyone else, so his name is on the finished article.
We are now publishing the article and welcome Groklaw readers' further contributions, corrections, improvements, and comments. This is an ongoing project. This article is the first in a series where we'll discuss the System V UNIX ABI, or Application Binary Interface. We approached the research as, What if Linus Torvalds had not already claimed paternity of most of the header files? Then what?
The article will first explain what the ABI is and what it does, then discuss whether the code was released under the GPL and if so whether management at SCO knew and approved, and finally show how the Linux files that pertain to this do not appear to be infringing files that SCO can claim.
For those who are not programmers, such as myself, there is a footnoted section to explain in greater detail and in plain English what ABIs and APIs and shared libraries are and how they work. If you read it first, it will clarify the terminology for you and you will be able to follow the thread in the article more easily. At least, it helped me tremendously.
I think you will see from this article alone that if SCO is planning to sue anyone over the ABI files, unless there are facts we haven't unearthed, they seem to be leaning on a rickety bamboo reed.
GROKLAW TAKES A CLOSER LOOK AT THE ABI FILES
~by Frank Sorenson et al
Back in January 2003, word leaked out that SCO was planning to charge Linux users for "System V Intellectual Property" in Linux. SCO created a new business division called SCOSource to come up with new ways to make money from this "intellectual property". The original SCOSource Presentation (PowerPoint version) talks of licensing SCO's shared UNIX Libraries from OpenServer and UnixWare for use in Linux.
A Little Background: What Are ABI Files? [1]
As background information, shared libraries are files containing information to be loaded when an application is run. They usually implement common routines, and their inclusion simplifies programming, reduces file size, and standardizes interfaces. A simple example of this would be the "copy file" and "move file" commands: both commands check file permissions and manipulate the file system. When applications have a great deal of functionality in common, this functionality is often placed into shared libraries.
Shared libraries are architecture, operating-system, and version specific. Executables for different systems follow various standard formats, such as a.out, ELF, and COFF. To load an application, the system must do several things: the system interprets the format of the executable (or binary), loads any shared libraries referenced, and begins executing the code found in the binary.
If the executable is in a different format from those the system supports, or if the library files are for the wrong architecture or operating system version, the binary normally will not run. In 1991, Intel announced the availability of the iBCS-2 (Intel Binary Compatibility Specification), a specification designed by Intel, SCO, and Unix System Laboratories (USL) to enable binary compatibility and migration capabilities between systems. SCO's Tim Ruckle said this to encourage support:
'The goal of 'shrink wrap' software for the open systems marketplace will not be
THEN ask for more money :-)
That's because they haven't seen Intelli Toast
1. ???
That should only be read *after* people learn modern C, unless you mean the updated ANSI compliant version (Which isn't quite right either)
My 0.02
Any Oreilly books, particularly the nutshells
If you can persuade them to spend the cash a copy of the ANSI C and C++ standards.
Also get the book "Introduction to Algorithms" by Thomas H. Cormen (Editor), Charles E. Leiserson, Ronald L. Rivest, Clifford Stein
I really recommend the Algorithms book, coz it'll stop people re-inventing the wheel, and give them an idea of what computers can actually do, not to mention teach them how to do it...
HTH
Maybe he'll get it after Return of the King...
Thanks for that, I hadn't bothered to look into it yet... If only I had mod points!
Going to Berlin is faster by plane though...
Oh, yeah, and if it's within an hour you're *meant* to re-use your ticket.
Once you buy a legally made copy, you can sell it, burn it, do anything you like with it. It's yours.
Don't buy in to the big medias utopia...
Why not get them all in etext and put them on your PDA?
Oh, yeah. I forgot about that, I get a warning 4 days in advance, and when the wife shouts at me I just check the reminder off, and remember not to respond...
I use iSilo for reading E-Books (I love being able to carry about 200+ books plus all the OReilly bookshelves.)
I also use shadow plan and datebk5 for planning things, my work, my life etc...
I also have Docs to Go, so get to keep all the shiny docs I write (And my CV) on it, and I also keep my timesheets on it
I recently got a TungstenT, so I can now web browse on the metro, and check my email from the pub
I can also get it to plot satellite passes so I can watch the ISS go overhead.
I also have translating dictionaries (And a V. good english dictionary) on it, and I can ssh to my machine at home from it.
Christ, life without a palm, sacrilege. You're all mad...
I hope to hell you are a troll...
When you put your check in it gets cleared either immediately, or in a batch at the end of the day (Usually immediately now)
They can then use that capital for short-term high-interest loans for 3 days, which makes them a whole load of money.
The 3 day thing is because in the old days it had to be *mailed* - One day to the clearing house, one day back, one day to process - 3 days.
When they automated everything they decided not to pass the benefit on to the customer...
If Microsoft says they're going after adobe using XML the day after CKK says that they get a slap on the wrist for years of predatory monopoly manipulation (Say that 3 times fast) then the chances are they're not going to follow the XML specs intent, but follow the spec enough to be able to say it...
BTW Excel is so popular because M$ went after lotus HARD, oh, and made it very hard for lotus 1, 2, 3 to read excel docs...
No, but it's not your enemy either, install rootless X11 and you get your X windows in the same environment as your aqua windows. I start XDarwin at login, and don't even have to think about it...
Also I have Office X - Say what you like about MS, but I have to write docs for work, and office works - I can generate my data on the command line (Grep, cut, sed, awk etc), import it into excel, plot graphs (For Resource usage crap for Mgmt) and embed them in a capex proposal in word. All in the best environment for the job, on the same machine...
GUI's are essential for nice documents, and it helps that Office is fairly compatible for complex documents across platforms (Try getting this done in OpenOffice, and having word understand the result...)
Each to their own of course, it's OS choice after all, but I like the cute GUI with the UNIX command line and the easy access to X apps. It's just better than any of the other options...
Those of us who got sick of waiting for the Gnome / KDE war to stop long enough to get a *usable* linux desktop finally caved in and bought a nice shiny Powerbook because it ran OSX...
I'm sorry but gnome and KDE SUCK compared to aqua. Not to mention all the things that just work in aqua out the box (Hmmm, iTunes, DVDPlayer, CD Writing)
The source of 90% of the the problems in the west today...
Actually, in the UK, the BBC is usually less pro-government than the independant TV / radio channels.
I think that has to do with the fact that the BBC is guaranteed fundage, while the independant channels need to keep government sweet or they lose their license...
From my current contract (Virtually identical to every other contract I've ever had...)
Clause 7 (Confidentiality), subclause 1
Any improvement discovery or invention discovered or developed by the employee during the term of his employment shall unless such discovery invention or improvement is unconnected in any way with the company or the customer or their respective businesses belong to the company and/or the customer as the case may be and employee shall execute any documents and undertake any act the company shall reasonably require to perfect the title of the company or the customer as the case may be to such improvement discovery or invention.
Clause 8 (Copyright and design rights)
The employee will promptly disclose to the company all works in which copyright or design rights may exist which he makes or originates either by himself or jointly with other people during his employment. Any copyright works or designs created by the employee in the normal course of his employment or in the course of carrying out duties specifically assigned to him, which relate to the affairs of the company, shall be the property of the company whether or not the work was made at the direction of the company, or was intended for the companyand the copyright in it and the rights in any design shall belong to the company and to the extent that such copyright or design rights are not otherwise vested in the company, the employee hereby assigns the same to the company
Thankfully I'm only employed for the hours I'm at work, which is the important thing to make sure your contract is explicit about...
Actually, if the kessel run is a sequence of movements, all completed in as short a distance as possible, at a set speed, a parsec is a good *length* to measure it in...
Should be enough for anyone.