Basebands have not - with rare exceptions - been hacked. They typically run signed firmware, with no documentation of the hardware platform, which considerably raises the bar. Can they be hacked - certainly it's likely some can. But, it's a very different matter legally between 'some nasty people cracked my phone' - and 'I made it freely accessible'.
The prospect of peer-peer file transport apps that have a side-effect of knocking emergency calls offline is real.
Radio is a shared resource. A stronger or closer transmitter on a frequency will always interfere with a further one - there is little that can be done to avoid this - and what can be done has serious costs in terms of mobile phones.
Calling them ASICs is both correct, and misleading.
The modem parts contain both processors running a fairly complex program (typically several meg), to do both the management of the high-level protocol, and the low-level data framing. Then there are special units to write and read from the radio hardware at the precisely correct time and rate. In addition, digital filters and low-level modulators and demodulators.
Doing a cell modem with pure SDR - with just analog to digital converters and then doing it all in software - will be extremely expensive, both in terms of power use and purchase cost. The performance required of the general purpose processors goes way up.
Open source basebands cannot, legally, in most parts of the world be up-datable by the user, which removes most of the interest.
There are several good reasons for this. Radio is a shared resource. Cellphones only work as well as they do as the towers arrange it so that no cellphone is transmitting on top of another one.
The modem hardware is quite capable in most cases of transmitting right over the top of other transmissions. The worst case would be a free app turning up that gave free data transfer between nearby phones. And did this by ignoring the towers, and going direct. This has the potential to knock off dozens of calls from the network per user, some of which may be emergency calls.
FCC/... approvals are inherently with a given software version of the modem - most of the behaviour of the modem is set by software - and changing that software without approval will void the approval of the phone.
In some countries, there is actual specific legislation. If your open-source baseband could change the IMEI, then once you have been informed that this has been done, you are actually committing an offence if you continue to sell the phone which enables the user to do this in the UK.
It is. It's one of the primary means that the kernel (of whatever OS) works out what hardware it's actually running on, and what it should setup. ACPI, PCI* configuration registers, and friends are all pretty much required in order to boot a random system successfully.
I'm looking at my Nokia n900 phone. (merely because I happen to have a detailed understanding of the design).
Inside it, there are the following closed-source blobs running on turing complete processors.
LED controller firmware. SIM java virtual machine SIM raw firmware. eMMC controller. SD controller. Hard-real-time modem controller. Modem high-level engine. Bluetooth CPU. Wifi processor. Main linux application processor GPU. I strongly suspect there is also an embedded processor in: Power managment controller. LCD. Battery charge monitor. GPS. (It's possible this is just an application running on the closed-source modem high level engine).
'Sounds to me like either NASA gets a good deal for bulk or long term contracts, and sold off what they didn't need at "full cost," which would seem to be a wash.' Won't somebody think of the oil companies!
There are problems with this sort of approach - implementing 'anti-abuse' rules means that now instead of (in principle) understandable legislation - you have a collection of people all of which may take a slightly different approach to decision-making. The other issue is that it's not practically going to impact (for example) Amazon - or any of the other major tax avoiders - as they are able to use international financial structuring to avoid national tax, in a way that these rules do not impact.
I would be interested in a real breakdown of 'make anything', and how that's measured. It's a really hard thing to measure. There are obvious things to measure - for example - total factory gate revenue. You get very different numbers if you measure retail sales.
Similarly - a company imports 8 Chinese parts for $100, puts it in a $20 box, and sells for $400.
Education. In most places, education is very non-free. The cost of even a 'nice' tablet like a nexus 7, over a year will be completely eclipsed if it enables remote learning.
"That is nonsense because you are applying a retrospective view of the problem. If it was so easy to accomplish and so obvious then why wasn't it done previously? "
This is often for a very simple reason. You were the first one to come across the problem, and choose to patent the solution.
If I invent (for example) a form of paint that changes colour when electricity is applied to it, then yes, this may be novel.
However, subsequent patents 'using colour changing paint on a mobile phone' 'using colour changing paint on a car'... are not.
They are obvious results of seeing something on the market, or being developed - and using it in obvious ways.
The lego example was in many ways unfortunately pretty much what many patents are.
They start out with a problem, and work towards a solution by plugging together bits in obvious ways, without any real novel insight. Then check to see if it's already patented - if not - patent.
If there are new bits available - especially if those bits have not been published - then yes - you can come up easily with patentable ideas. This does not mean those ideas would not have been completely obvious to a skilled engineer with knowledge of what the new bits were.
Well - yes and no. The fundamental problem with the patent system is that it gives patents to 'actual engineers that create things'. This wouldn't be a problem - but for a major fundamental flaw in the system. Patents were originally granted (amongst other less noble reasons) to foster innovation and encourage the spread of knowledge, rather than having ideas locked up as trade secrets and lost.
Unfortunately, it should be clearly obvious to anyone that if: An averagely skilled engineer, faced with the same problem could solve the problem in under the time it takes to do a full patent search, and apply for the patent including all the time to write the patent and get it through all the steps - patents are not actually fostering innovation at all.
Should patents be abolished - no. But - patents should only be granted for inventions that take - at the very least - several months for the averagely skilled engineer in the same field to come up with a solution to the same problem.
Patents should be for the benefit of society. If society is burdened by patents - innovation and business is slowed, competition is harder - and advances in technology are slower - why do we have them? In their current state, they are broken. https://www.google.com/patents... - is the most recent english patent I can find. It describes - broadly - something very similar to NTP - and is basically the same way any sensible engineer approaching the problem would do it. The problem is it has a lot of superfluous crap implying it's special to one tiny area - and hence as it's not been patented before - it gets a patent. This helps _nobody_. There is no inventor in the conventional sense in this patent - as there isn't in most patents. If you claim there is - you need to claim that every 4 year-old faced with the problem of making a lego model that looks like something is an inventor. It's plugging obvious blocks together in obvious ways. May sometimes the blocks be hard to fit together, and require a bit of thought - sure. This doesn't make the arrangement of blocks not likely to be replicated in 17 (or more) years if anyone else hits the problem.
It's RP1/LOX. You need 2.5:1 liquid oxygen to RP1.
1980s NASA was paying $.08/kg for LOX. Let's say $.20 now. And $.20 per kg for RP1 - at most 100% over spot oil price. $1/kg is reasonable.
Making the average cost per launch for 150 tons of RP1 and 350 tons of LOX about $150K+$70K = $220K. The quoted price is $56M - or the fuel cost is under half a percent.
If I own the device, and the network, then this sort of action may in fact be legally required in some cases. It's certainly often permitted - if the user is explicitly informed first, and they do not own in any manner the device.
(I am not referring to contract phones, but to employer provided devices)
http://www.jolla.com/ - for example - is one example of a vendor selling a phone that can run android apps - on top of 'normal' linux - without preinstalling the normal google play market. (because they can't - as what they are doing in making the linux side more open means it's not vanilla android anymore)
I can't seem to find what licence the above work is under. Great - I can go and browse it. Can I print out a cake with a small map from the above site on and sell it to commemorate a local event. Or t-shirts? Or...
Well... No. You need to prove it with a protein extract, if you hope to make a peanut allergy drug. If you just want to treat peanut allergy, there is no really good reason that a tiny, tiny bit of peanut butter in a large meal won't work. Start out at a dose which does not kill, and boost the dosage 10%/day.
Though the code behaves differently with, and without optimisation, and does not work on the new compiler whereas it did on the old, this does not mean it is a bug in the compiler.
GCC, Clang, acc, armcc, icc, msvc, open64, pathcc, suncc, ti, windriver, xlc all do varying optimisations that vary across version, and that rely on exact compliance with the C standard. If your code is violating this standard, it risks breaking on upgrade.
_All_ modern compilers do this as part of optimisation.
GCC 4.2.1 for example, with -o0 (least optimisation) will eliminate if(p+100p)
This doesn't on first glance seem insane code to check if a buffer will overflow if you put some data into it. However the C standard says that an overflowed
pointer is undefined, and this means the compiler is free to assume that it never occurs, and it can safely omit the result of the test.
Fraud - as defined in those numbers - is not 'We assessed this person, and had enough proof to criminally convict them'. It is 'on the balance of probabilities' the person intentionally mislead on their application, and we have stopped their benefit, and they have failed to prove we are wrong'. Even if you assume that 'claimant error' was 100% malicious,- you still only get to about 1.5%.
The 30% figure is due to: People getting better (people did not stay on IB forever and some will improve around their assessment for ESA). Significant changes in the criteria.
Basebands have not - with rare exceptions - been hacked.
They typically run signed firmware, with no documentation of the hardware platform, which considerably raises the bar.
Can they be hacked - certainly it's likely some can.
But, it's a very different matter legally between 'some nasty people cracked my phone' - and 'I made it freely accessible'.
The prospect of peer-peer file transport apps that have a side-effect of knocking emergency calls offline is real.
Radio is a shared resource.
A stronger or closer transmitter on a frequency will always interfere with a further one - there is little that can be done to avoid this - and what can be done has serious costs in terms of mobile phones.
Calling them ASICs is both correct, and misleading.
The modem parts contain both processors running a fairly complex program (typically several meg), to do both the management of the high-level protocol, and the low-level data framing.
Then there are special units to write and read from the radio hardware at the precisely correct time and rate.
In addition, digital filters and low-level modulators and demodulators.
Doing a cell modem with pure SDR - with just analog to digital converters and then doing it all in software - will be extremely expensive, both in terms of power use and purchase cost.
The performance required of the general purpose processors goes way up.
Open source basebands cannot, legally, in most parts of the world be up-datable by the user, which removes most of the interest.
There are several good reasons for this.
Radio is a shared resource. Cellphones only work as well as they do as the towers arrange it so that no cellphone is transmitting on top of another one.
The modem hardware is quite capable in most cases of transmitting right over the top of other transmissions. The worst case would be a free app turning up that gave free data transfer between nearby phones. And did this by ignoring the towers, and going direct.
This has the potential to knock off dozens of calls from the network per user, some of which may be emergency calls.
FCC/... approvals are inherently with a given software version of the modem - most of the behaviour of the modem is set by software - and changing that software without approval will void the approval of the phone.
In some countries, there is actual specific legislation.
If your open-source baseband could change the IMEI, then once you have been informed that this has been done, you are actually committing an offence if you continue to sell the phone which enables the user to do this in the UK.
It is.
It's one of the primary means that the kernel (of whatever OS) works out what hardware it's actually running on, and what it should setup.
ACPI, PCI* configuration registers, and friends are all pretty much required in order to boot a random system successfully.
Great - you don't want ACPI.
I'm looking at my Nokia n900 phone.
(merely because I happen to have a detailed understanding of the design).
Inside it, there are the following closed-source blobs running on turing complete processors.
LED controller firmware.
SIM java virtual machine
SIM raw firmware.
eMMC controller.
SD controller.
Hard-real-time modem controller.
Modem high-level engine.
Bluetooth CPU.
Wifi processor.
Main linux application processor
GPU.
I strongly suspect there is also an embedded processor in:
Power managment controller.
LCD.
Battery charge monitor.
GPS. (It's possible this is just an application running on the closed-source modem high level engine).
https://srlabs.de/rooting-sim-...
http://www.youtube.com/watch?v... (rooting SD cards)
http://www.youtube.com/watch?v... (battery firmware hacking)
Similar efforts have been done with reverse engineering the firmware of bluetooth devices, wifi.
The notion that you should only care about the code running on the CPU being open has always seemed really naive to me.
Completely correct - for 1930.
Getting progressively wronger over time till it's now brimming over with wrongness.
It's been revealed that there were several electrical engineers on the plane.
Case closed on the virgin front, I fear.
'Sounds to me like either NASA gets a good deal for bulk or long term contracts, and sold off what they didn't need at "full cost," which would seem to be a wash.'
Won't somebody think of the oil companies!
Well - sort-of.
http://www.hmrc.gov.uk/avoidan...
There are problems with this sort of approach - implementing 'anti-abuse' rules means that now instead of (in principle) understandable legislation - you have a collection of people all of which may take a slightly different approach to decision-making.
The other issue is that it's not practically going to impact (for example) Amazon - or any of the other major tax avoiders - as they are able to use international financial structuring to avoid national tax, in a way that these rules do not impact.
I would be interested in a real breakdown of 'make anything', and how that's measured.
It's a really hard thing to measure.
There are obvious things to measure - for example - total factory gate revenue.
You get very different numbers if you measure retail sales.
Similarly - a company imports 8 Chinese parts for $100, puts it in a $20 box, and sells for $400.
Getting the right numbers is hard.
Education.
In most places, education is very non-free.
The cost of even a 'nice' tablet like a nexus 7, over a year will be completely eclipsed if it enables remote learning.
"That is nonsense because you are applying a retrospective view of the problem. If it was so easy to accomplish and so obvious then why wasn't it done previously? "
This is often for a very simple reason.
You were the first one to come across the problem, and choose to patent the solution.
If I invent (for example) a form of paint that changes colour when electricity is applied to it, then yes, this may be novel.
However, subsequent patents 'using colour changing paint on a mobile phone' 'using colour changing paint on a car' ... are not.
They are obvious results of seeing something on the market, or being developed - and using it in obvious ways.
The lego example was in many ways unfortunately pretty much what many patents are.
They start out with a problem, and work towards a solution by plugging together bits in obvious ways, without any real novel insight. Then check to see if it's already patented - if not - patent.
If there are new bits available - especially if those bits have not been published - then yes - you can come up easily with patentable ideas.
This does not mean those ideas would not have been completely obvious to a skilled engineer with knowledge of what the new bits were.
Well - yes and no.
The fundamental problem with the patent system is that it gives patents to 'actual engineers that create things'.
This wouldn't be a problem - but for a major fundamental flaw in the system.
Patents were originally granted (amongst other less noble reasons) to foster innovation and encourage the spread of knowledge, rather than having ideas locked up as trade secrets and lost.
Unfortunately, it should be clearly obvious to anyone that if:
An averagely skilled engineer, faced with the same problem could solve the problem in under the time it takes to do a full patent search, and apply for the patent including all the time to write the patent and get it through all the steps - patents are not actually fostering innovation at all.
Should patents be abolished - no.
But - patents should only be granted for inventions that take - at the very least - several months for the averagely skilled engineer in the same field to come up with a solution to the same problem.
Patents should be for the benefit of society.
If society is burdened by patents - innovation and business is slowed, competition is harder - and advances in technology are slower - why do we have them?
In their current state, they are broken.
https://www.google.com/patents... - is the most recent english patent I can find.
It describes - broadly - something very similar to NTP - and is basically the same way any sensible engineer approaching the problem would do it.
The problem is it has a lot of superfluous crap implying it's special to one tiny area - and hence as it's not been patented before - it gets a patent.
This helps _nobody_.
There is no inventor in the conventional sense in this patent - as there isn't in most patents.
If you claim there is - you need to claim that every 4 year-old faced with the problem of making a lego model that looks like something is an inventor.
It's plugging obvious blocks together in obvious ways.
May sometimes the blocks be hard to fit together, and require a bit of thought - sure.
This doesn't make the arrangement of blocks not likely to be replicated in 17 (or more) years if anyone else hits the problem.
http://www.spacex.com/falcon9
500 tons of rocket.
Let's say it's all fuel (90%+ is).
It's RP1/LOX.
You need 2.5:1 liquid oxygen to RP1.
1980s NASA was paying $.08/kg for LOX. Let's say $.20 now.
And $.20 per kg for RP1 - at most 100% over spot oil price.
$1/kg is reasonable.
Making the average cost per launch for 150 tons of RP1 and 350 tons of LOX about $150K+$70K = $220K.
The quoted price is $56M - or the fuel cost is under half a percent.
If I own the device, and the network, then this sort of action may in fact be legally required in some cases.
It's certainly often permitted - if the user is explicitly informed first, and they do not own in any manner the device.
(I am not referring to contract phones, but to employer provided devices)
So, if you are an older father, seeking to reduce their childs risks, simply pick an 18 year-old wife.
For the sake of the children.
http://pediatricbioscience.com...
http://www.jolla.com/ - for example - is one example of a vendor selling a phone that can run android apps - on top of 'normal' linux - without preinstalling the normal google play market. (because they can't - as what they are doing in making the linux side more open means it's not vanilla android anymore)
'You can only use our hammers if you only use our hammers' - might not play quite so well legally.
Those that object to the municipal recycling service go in the purple bin.
I can't seem to find what licence the above work is under.
Great - I can go and browse it.
Can I print out a cake with a small map from the above site on and sell it to commemorate a local event.
Or t-shirts?
Or...
oDBl, CC-by, Crowley, ...
Well...
No.
You need to prove it with a protein extract, if you hope to make a peanut allergy drug.
If you just want to treat peanut allergy, there is no really good reason that a tiny, tiny bit of peanut butter in a large meal won't work.
Start out at a dose which does not kill, and boost the dosage 10%/day.
Though the code behaves differently with, and without optimisation, and does not work on the new compiler whereas it did on the old,
this does not mean it is a bug in the compiler.
GCC, Clang, acc, armcc, icc, msvc, open64, pathcc, suncc, ti, windriver, xlc all do varying optimisations that vary across version, and
that rely on exact compliance with the C standard. If your code is violating this standard, it risks breaking on upgrade.
http://developers.slashdot.org/story/13/10/29/2150211/how-your-compiler-can-compromise-application-security
http://pdos.csail.mit.edu/~xi/papers/stack-sosp13.pdf
Click on the PDF, and scroll to page 4 for a nice table of optimisations vs compiler and optimisation level.
_All_ modern compilers do this as part of optimisation.
GCC 4.2.1 for example, with -o0 (least optimisation) will eliminate if(p+100p)
This doesn't on first glance seem insane code to check if a buffer will overflow if you put some data into it. However the C standard says that an overflowed
pointer is undefined, and this means the compiler is free to assume that it never occurs, and it can safely omit the result of the test.
Unless they are not bright enough to do so.
Which would pretty much cause all of the symptoms mentioned above too.
Name, CC number and details, ...
This will - minimally at least - compress to about 100 bytes per record.
5 or 10GB is not a lot of data any more.
Fraud - as defined in those numbers - is not 'We assessed this person, and had enough proof to criminally convict them'.
It is 'on the balance of probabilities' the person intentionally mislead on their application, and we have stopped their benefit, and they have failed to prove we are wrong'.
Even if you assume that 'claimant error' was 100% malicious,- you still only get to about 1.5%.
The 30% figure is due to:
People getting better (people did not stay on IB forever and some will improve around their assessment for ESA).
Significant changes in the criteria.