|
Authored by drakaan on Aug 23, 2013 17:17:58 GMT
The personal computer sitting on your desk is a general-purpose computer. Your laptop? Also a general-purpose computer.
What about your tablet? Your smartphone running iOS, Android, or Windows Phone software? The Raspberry Pi that your neighbor's kid turned into an automatic sprinkler control?
Yes, yes, and yes.
Of course, those answers are not readily apparent to everyone, which leads to big problems when legal questions arise about what kind of legal protections pieces of those computers and their software are granted.
Computers are so ubiquitous today that we sometimes don't recognize them. An MP3 player today has more computing power than a home computer from 20 years ago. We have smart TVs and internet-connected thermostats. Computers are literally everywhere.
The Basics A general-purpose computer has a few parts that are important in order to identify it as such.
Processor A general purpose computer has a processor or "CPU" (Central Processing Unit) that is capable of quickly performing calculations and other operations on data. These operations typically include addition of two numbers, subtraction of two numbers, bit-shifting of byte arrays, multiplication, reading and writing numbers from memory, and sometimes more complicated mathematical operations on floating-point numbers.
Memory Computer memory allows for temporary storage of program data. This data can be a program, data that programs will work on, or both.
I/O Controllers I/O (Input/Output) Controllers provide a way for the CPU to read and write data from storage beyond the memory on the motherboard. This data might go to or come from a disk drive, network card, keyboard, video card, monitor, audio card, or other port (USB, parallel, FireWire, etc).
Mainboard/Motherboard The Motherboard is what the processor, memory, and I/O controllers are directly attached to. It provides physical connections between different parts of the computer, usually by means of metallic wires called "traces". A motherboard can have multiple layers with traces on each layer connecting different hardware components together.
Most computers have other devices attached to them (keyboards, monitors, mice, touchscreens) that allow human beings to interact with them, but those are peripherals. They are not essential to what a computer does, and are typically not required for a computer to be able to execute a program except in cases where the program is designed to accept input from or send output to a peripheral device.
What is NOT a general-purpose computer? These days, not much. Most often, these days, special-purpose digital computers perform signal processing functions. Dolby encoder/decoders are a good example. In a situation where you want a small, low-power semiconductor device that only performs a single function, an ASIC or FPGA device might have much better performance than a program running on a general-purpose computer.
A device that does not have a CPU, Memory,and I/O system and cannot execute any software is not a general-purpose computer.
(this page is a work-in-progress)
|
|
|
Authored by wayneborean on Sept 5, 2013 0:02:35 GMT
The personal computer sitting on your desk is a general-purpose computer. Your laptop? Also a general-purpose computer. What about your tablet? Your smartphone running iOS, Android, or Windows Phone software? The Raspberry Pi that your neighbor's kid turned into an automatic sprinkler control? Yes, yes, and yes. Of course, those answers are not readily apparent to everyone, which leads to big problems when legal questions arise about what kind of legal protections pieces of those computers and their software are granted. The BasicsA general-purpose computer has a few parts that are important in order to identify it as such. (this page is a work-in-progress) A general purpose computer is any computer which can run anything other than the operating system. Let's consider the Emissions Test bench a company that I worked for had. It ran Mandrake Linux, but was not a general purpose computer, because the only things it could do was test emissions from an internal combustion engine. Now here's the fun part - it contained an General Purpose computer, a standard x86/AMD64 unit as the controller. Let's take my TV - it has a general purpose Linux computer built in, but all I can do with it is watch television. Since phones can run code that gives them capabilities that were not designed into them, they are general purpose computers, as are tablets, and for that matter a lot of MP3 players (iTouch anyone?) I think part of what we are discussing here is the difference between form factors. Wayne madhatter.ca
|
|
|
Authored by tyche on Sept 5, 2013 3:03:49 GMT
wayneborean said: "I think part of what we are discussing here is the difference between form factors."
Maybe. However, if it can reach the Internet (Smartphone, anyone?), then it's at risk.
Craig Tyche
|
|
|
Authored by wayneborean on Sept 6, 2013 2:09:43 GMT
wayneborean said: "I think part of what we are discussing here is the difference between form factors." Maybe. However, if it can reach the Internet (Smartphone, anyone?), then it's at risk. Craig Tyche There's also the issue that certain "General Purpose Computers" by my definition are not free, i.e. you can't install Ubuntu on your iPhone. To me this is totally wrong. Then of course there is Apple's allergy to GPL licensed software... Wayne madhatter.ca
|
|
|
Authored by wol on Sept 13, 2013 15:34:51 GMT
The personal computer sitting on your desk is a general-purpose computer. Your laptop? Also a general-purpose computer. What about your tablet? Your smartphone running iOS, Android, or Windows Phone software? The Raspberry Pi that your neighbor's kid turned into an automatic sprinkler control? Yes, yes, and yes. Of course, those answers are not readily apparent to everyone, which leads to big problems when legal questions arise about what kind of legal protections pieces of those computers and their software are granted. The BasicsA general-purpose computer has a few parts that are important in order to identify it as such. (this page is a work-in-progress) We need to educate the legal profession that most single-purpose devices nowadays consist of a general purpose computer coupled with dedicated hardware. Maybe the obvious way to make this point is to look at technology that sits in almost every living room today - the TV and cable box. If I take my general purpose PC and add a TV tuner card, it can replace my TV and PVR. If I now TAKE AWAY the keyboard and mouse, and replace it with a remote control, it now IS a TV and PVR. In other words, pretty much all dedicated devices like this nowadays are in fact general purpose computers from which functionality has been removed. And as far as I am aware, removing functionality does not make something patentable! Cheers, Wol
|
|
stegu
Veteran Member
Posts: 15
|
Authored by stegu on Sept 16, 2013 8:43:39 GMT
That is a very interesting point to make. Devastating to the current practice of the USPTO and the EPO, but that is part of what makes it interesting.
|
|
|
Authored by drakaan on Sept 16, 2013 12:25:39 GMT
...actually, no functionality has been removed from most smartphones or DVRs, but rather, the operating system is focused on a particular subset of things and might not be designed to allow others. The software in no way changes what the hardware is capable of, but rather changes commands that the user is able to execute easily. Software projects like xbmc and cyanogenmod are examples of how those devices can be turned back a bit towards a more normal existence as general purpose computing devices.
I'll try to do some more writing on this before the week is out, but this is an important conversation to address in this topic, for sure!
|
|
|
Authored by wayneborean on Sept 16, 2013 16:51:15 GMT
...actually, no functionality has been removed from most smartphones or DVRs, but rather, the operating system is focused on a particular subset of things and might not be designed to allow others. The software in no way changes what the hardware is capable of, but rather changes commands that the user is able to execute easily. Software projects like xbmc and cyanogenmod are examples of how those devices can be turned back a bit towards a more normal existence as general purpose computing devices. I'll try to do some more writing on this before the week is out, but this is an important conversation to address in this topic, for sure! Ah, but if the software blocks access to abilities the device has, that has the same affect. Consider the iPhone. You can only install software from Apple's store. Yes, there are ways around this, but not through Apple. And that's a huge problem, as Richard Stallman has observed. Wayne madhatter.ca
|
|
|
Authored by drakaan on Sept 16, 2013 16:56:42 GMT
I agree that "tivoization" and cathedral-style app markets are a problem, but software doesn't change the physical capabilities of the device...only the parts of it that a user has access to. That's one of the fundamental reasons that software is not patentable...software does not create a new machine when used with a general-purpose computer, regardless of what computation is performed.
|
|
squib
Veteran Member
Posts: 27
|
Authored by squib on Sept 16, 2013 19:27:41 GMT
It might help to take a step back and ask what do we mean by a computer. Originally computers where humans that performed calculations. en.wikipedia.org/wiki/Human_computerThen we had en.wikipedia.org/wiki/Tide-predicting_machineand the en.wikipedia.org/wiki/MONIAC_ComputerThey could do nothing other than what they where designed for. Ie they were single purpose computers. When the 4 bit Microprocessor was developed, shades of grey crept in. Some you could program – others you couldn't. Example: Ken Shirriff has reversed engineered Sinclair's amazing 1974 calculator. files.righto.com/calculator/sinclair_scientific_simulator.htmlIt clearly shows how the program was hard wired in. One can't run Linux on it. It is a dedicated single purpose computer. If you look under your hood (bonnet in the UK) you'll find a little widget that tells your spark plugs when to spark. Some can be reconfigured to improve performance (which I think is mechanic speak for increasing atmospheric pollution) but you can't load Linux nor windows on them either. They are 'dedicated' single purpose computers. Then we come to the next grey area of digital video recorders. Which are thought of as 'dedicated' single purpose machines... to all but the smart aleck ten year old that whips off the cover, attaches a few crocodile clips here and there, instals Ubantu and proceeds to do is homework assignment on it! So much over laps, that the difference between a single purpose and general purpose computer is in the eye of the beholder and (let us not forget) the communal garden troll.
|
|
|
Authored by wayneborean on Sept 16, 2013 21:06:50 GMT
I agree that "tivoization" and cathedral-style app markets are a problem, but software doesn't change the physical capabilities of the device...only the parts of it that a user has access to. That's one of the fundamental reasons that software is not patentable...software does not create a new machine when used with a general-purpose computer, regardless of what computation is performed. If software blocks you from accessing the physical capabilities of the device, then those capabilities might as well not exist. And software is patentable, at least in some countries. Even where software isn't patentable, the patent systems are incapable of determining what is, and isn't patentable. Ever hear of the "Dean Drive", legally it wasn't patentable, but the USPTO messed up and issued a patent anyway. Wayne madhatter.ca
|
|
|
Authored by drakaan on Sept 17, 2013 1:13:56 GMT
Wayne, when I say software isn't patentable, what I mean is that it's not supposed to be (at least in the US, since it's math). Again, I agree that software that blocks you from particular uses of a computer on purpose is generally not a good thing. Just trying to keep drawing that bright line between what a (general purpose) computer is and what software is.
|
|
|
Authored by wayneborean on Sept 17, 2013 14:17:40 GMT
Wayne, when I say software isn't patentable, what I mean is that it's not supposed to be (at least in the US, since it's math). Again, I agree that software that blocks you from particular uses of a computer on purpose is generally not a good thing. Just trying to keep drawing that bright line between what a (general purpose) computer is and what software is. While I agree with you in principle, we have to live in the real world. A world where Apple sells crippled iPhones, and where software is patentable. Which means we need to change the world FYI, the patent system is just as bad towards hardware. I know. I worked in an automotive related field, and saw the impacts. Wayne madhatter.ca
|
|
|
Authored by bp on Sept 19, 2013 18:22:01 GMT
Does anyone have links on hacking DVR's I've been looking at them and have found a few that have a serial port on the back. But I have found very little online about hacking them. I remember that with the IOpener once word got out that they could be hacked they started to remove the IDE pins. Some companies seem to be OK with hacking their products after all a sale is a sale, but others take counter measures to prevent it .
|
|
squib
Veteran Member
Posts: 27
|
Authored by squib on Sept 20, 2013 17:33:13 GMT
Does anyone have links on hacking DVR's I've been looking at them and have found a few that have a serial port on the back. But I have found very little online about hacking them. I remember that with the IOpener once word got out that they could be hacked they started to remove the IDE pins. Some companies seem to be OK with hacking their products after all a sale is a sale, but others take counter measures to prevent it . Fair question bp but I can't answer it - I'm an old fogey, who in the eyes of my grandchildren is no better then an itinerant blacksmith. How I see it is, that the modern-day little precocious brats darlings don't look to me for advice on serial ports... instead, they look at the chips on the PCB and google for their data sheets. In retrospect I was showing my age when I said 'crocodile clips'. These days they use Test Hooks: catalog.e-z-hook.com/category/test-hooks? Also, in my day, an Digital Oscilloscope cost in the region of 5,ooo smackers but to day they just unload an application onto their laptop that just does the same thing and they can thus suss out what the circuit is doing. en.wikipedia.org/wiki/Digital_storage_oscilloscopeAny effort on my part to give them encouraging praise is met with a look of “ but my cat can do this!” So I think the answer to your question is that: Those that do hacking to this level are more of electronic engineering types that assume that anybody else with their know-how will be able to suss it out for themselves – so why bother to tell the world. Different digital video recorders have similar circuits but the PCB's look physically different from each other. One therefore, has to be able to look and recognise the circuits themselves and hack accordingly. The language for this might not be recognisable to a pure software coder. Therefore, it is unlikely that googling will come up with an easy to understand hack. Hopefully someone will now jump in and prove my wrong. Please do, I wont to reset my TiVo clock back to the 1950's to record some “I love Lucy” shows that I missed.
|
|