decoration decoration
Stories

GROKLAW
When you want to know more...
decoration
For layout only
Home
Archives
Site Map
Search
About Groklaw
Awards
Legal Research
Timelines
ApplevSamsung
ApplevSamsung p.2
ArchiveExplorer
Autozone
Bilski
Cases
Cast: Lawyers
Comes v. MS
Contracts/Documents
Courts
DRM
Gordon v MS
GPL
Grokdoc
HTML How To
IPI v RH
IV v. Google
Legal Docs
Lodsys
MS Litigations
MSvB&N
News Picks
Novell v. MS
Novell-MS Deal
ODF/OOXML
OOXML Appeals
OraclevGoogle
Patents
ProjectMonterey
Psystar
Quote Database
Red Hat v SCO
Salus Book
SCEA v Hotz
SCO Appeals
SCO Bankruptcy
SCO Financials
SCO Overview
SCO v IBM
SCO v Novell
SCO:Soup2Nuts
SCOsource
Sean Daly
Software Patents
Switch to Linux
Transcripts
Unix Books

Gear

Groklaw Gear

Click here to send an email to the editor of this weblog.


You won't find me on Facebook


Donate

Donate Paypal


No Legal Advice

The information on Groklaw is not intended to constitute legal advice. While Mark is a lawyer and he has asked other lawyers and law students to contribute articles, all of these articles are offered to help educate, not to provide specific legal advice. They are not your lawyers.

Here's Groklaw's comments policy.


What's New

STORIES
No new stories

COMMENTS last 48 hrs
No new comments


Sponsors

Hosting:
hosted by ibiblio

On servers donated to ibiblio by AMD.

Webmaster
software has to be written and compiled for specific hardware | 1347 comments | Create New Account
Comments belong to whoever posts them. Please notify us of inappropriate comments.
software has to be written and compiled for specific hardware
Authored by: mrisch on Sunday, June 10 2012 @ 08:14 PM EDT
I don't know that sticking a new roll in creates a new
machine. I tend to doubt it. I write about the loom in my
America's First Patents article and point out the very
issues you raise here.

But, I will note that patents cover methods, so the question
is whether putting a new roll in a pianola is a new way to
solve some practical problem. I say no (and probably not
with the loom either). But if putting software in a machine
is a new way to solve a problem, then it is a new use for
the machine, and that is a process worthy of consideration.

And I knew going in that most people wouldn't agree with me
:)

As for the hardware - of course you can have software
written to run on different platforms, but I assure you that
Windows 3.1 did not load on a Mac SE, and I assure you that
Linux will not run without the proper kernel, and Java will
not run without the proper virtual machine. And given the
many, many patents and journal articles I have read, many
solutions are not implementable broadly due to resource
constraints. Stuff that I can do with my laptop I just can't
do on my phone. Some stuff, at least, and the list is
shrinking, but not in the mid 1990's when this explosion
hit.

[ Reply to This | Parent | # ]

software has to be written and compiled for specific hardware
Authored by: Anonymous on Sunday, June 10 2012 @ 11:42 PM EDT

Debian supports multiple architectures (platforms) without the authors of most of the packages having to do anything extra for that cross platform support. Most of the software authors don't even have access to most of the hardware platforms their packages run on. The Debian package maintainers (a completely separate group of people) worry about that. I have written Python software which runs on x86, x86-64, and ARM without any changes. I didn't even have access to the ARM hardware for testing. It just worked.

Even thirty years ago it wasn't true that "software has to be written and compiled for specific hardware". You could say that it usually was the case, but it wasn't a case of had to. Today it's usually a case of the economics of targeting specific markets however, rather than a technological matter. Indeed, many programming old-timers today are decrying the extent to which software has become abstracted from hardware.

An interesting twist to this is the UCSD P-System, which used a "virtual machine" to execute code starting in the 1970s, long before Java was around. You could run your compiled code on multiple architectures without any changes, and P-System was in fact ported to many different mainframes, mini-computers, and micro-computers. Western Digital later designed a chip to implement the p-machine in hardware. In other words, the abstract representation of the p-machine came first, and the actual p-machine hardware later. The WD Micro-engine never became very popular however, as the emulated systems were actually faster than the dedicated hardware.

For that matter, who says that software has to be "compiled". Plenty of commercial software isn't. And what exactly does "compiled" mean these days? Static compiled? JIT compiled? Tracing compiled? Compiled to byte code? The whole concept of "compiled" is very nebulous these days. The world of software has advanced a lot since the term "compiler" was created. Your average web developer today works in an entirely abstract world where he has no clue how the underlying hardware works or what it is, and indeed believes that state of knowledge to be the ideal condition!

[ Reply to This | Parent | # ]

software has to be written and compiled for specific hardware
Authored by: David665 on Monday, June 11 2012 @ 11:44 AM EDT
Your explanation has nothing to do with the case. Sun wanted a Java phone, they
would not accept what Google needed which was a subset of Java, in the middle of
this other Sun patent attorneys came after Google, the agreement fell apart, Sun
CEO said well at least it was a Java phone, Oracle buys Sun, changes its corp.
stance and decides Google did the nasty, the reality is Ellison wants a
percentage of all Google ad income.

The copyright infringement attempt failed, the patents were not infringed
regardless of whether they were good or bad.

All the rambling about Java, JVMs and such have nothing to do with software
patents. Oracle was claiming ownership over that because of copyrights of the
API.

Interesting position but not a valid one for this argument.

[ Reply to This | Parent | # ]

System 360 compatibility
Authored by: Anonymous on Monday, June 11 2012 @ 02:52 PM EDT
There are (and have always been) limitations to System 360
program compatibility. The first, and biggest, is that only
problem state programs are likely to be compatible. That
limitation means that programs which directly interact with
the hardware may not run (some will, but over time, fewer
and fewer will.)

In essence, the 360 provided user application compatibilty.
It does not mean that an operating system written to run on
a 360 will run on later hardware, or even entirely unchanged
on different 360 models. Changes within a processor family
(e.g. all 360s or all 370s) would generally be invisible to
the user as they would be incorporated into the operating
system like any other fix.

The second limitation is that the program must not rely on
characteristics or features of the hardware such as timing.
So, looping to delay processing by, say, a second will no
longer work properly (besides being bad practice.)
Originally, floating point was optional too, so any program
written to use that would not work on any box (even another
360) without it.

[ Reply to This | Parent | # ]

Groklaw © Copyright 2003-2013 Pamela Jones.
All trademarks and copyrights on this page are owned by their respective owners.
Comments are owned by the individual posters.

PJ's articles are licensed under a Creative Commons License. ( Details )