Thanks for the recommendation
Next time I'm in a place where I can torrent without getting menacing letters I'm going to torrent the Shiite out of this.
28 posts • joined 14 Nov 2017
Yeah it was, but both Apple and Samsung decided to counteract this by raising prices to compensate for falling volume. No, really
Phone makers had banked they could compensate for slowing volume by pushing up prices. But customers balked.
Needless to say this has caused a lot of people to stick with their old phone.
They decided to counter that by phasing out removable batteries (Samsung) and slowing down devices with old batteries (Apple and probably Samsung too). Also removing headphone ports to encourage people to buy a Bluetooth headset (Apple). And of course releasing a 'cheap' device with a too little non expandable storage and a 'premium' device where you pay for more storage at a hefty markup (Apple).
I'm sure what will happen is that people move to cheaper devices instead of premium ones and probably to other manufacturers than Apple and Samsung.
I.e. the days when people would buy a replacement premium handset ever 2 years are probably coming to an end.
If you're on the Android ecosystem you can avoid the insanity by buying a non Samsung, older device. E.g. a LG V20 sells for about $300. And has a removable battery. And it's probably fine for most people.
An Android manufacturer which sells a $300 device with a removable battery and a headphone port would probably take significant market share from Samsung. People who are dependent on the Apple ecosystem obviously have no alternative hardware vendor.
I was once working on a web application, back in the .com boom. We had a production server which was heinously unstable. We'd test on our dev server for a week and then send stuff over to the production one. The production one was administered by another company and we'd call them and tell them how to do stuff. Either this was before the days of VPN or they didn't want to allow that, for reasons that will become clear.
Anyhow I was in an interminable call with them.
"Ok, you've got the files unzipped"
"Right click on the .reg file and add it to the registry"
"What do you mean crashed? Did you add it?"
"No it crashed when I right clicked"
"How did it crash?"
"It said explorer.exe performed an illegal operation"
"Well that's odd, isn't it. Try to open up this folder"
"It crashed again"
"Ok press the Windows keys and R and type"
"Let's try a restart"
At this point I hear a load clunk, then a pause then another loud clunk
"What was that?"
"Don't you do that through the start menu?"
"No, it always hangs when we do that, do we just use the big red button"
And then I worked out why nothing new ever working in production and why things that used to work stopped - the server was so addled at this point that it couldn't reboot without someone power cycling it. It'd probably gone through hundreds or thousands of hard power cycles. This was NT so it was somewhat robust but you did lose data on a hard crash - any files that were open for writing would be corrupted and sooner or later you corrupted something vital.
Hmm, I checked and Russia's defence budget is quite a bit more than the UK's these days
However it's still a lot less than the US's.
I reckon the US and Russia will do a deal on this. The last budget in the US funded literally everything the military asked for including sub strategic Trident which bothers the Russians enormously.
I predict Russia and the US will do an arms control treaty and most of the new stuff will be bargained away.
It's worth pointing out that Russia had a lot of trouble getting its latest generation of SLBMs to work properly
The missile's flight test programme was problematic. Until 2009, there were 6 failures in 13 flight tests and one failure during ground test, blamed mostly on substandard components. After a failure in December 2009, further tests were put on hold and a probe was conducted to find out the reasons for the failures. Testing was resumed on 7 October 2010 with a launch from the Typhoon-class submarine Dmitri Donskoi in the White Sea; the warheads successfully hit their targets at the Kura Test Range in the Russian Far East. Seven launches have been conducted since the probe, all successful. On 28 June 2011, the missile was launched for the first time from its standard carrier, Borei-class submarine Yury Dolgorukiy, and on 27 August 2011 the first full-range (over 9,000 km (5,600 mi)) flight test was conducted. After this successful launch, the start of serial production of Bulava missiles in the same configuration was announced on 28 June 2011. A successful salvo launch on 23 December 2011 concluded the flight test programme. The missile was officially approved for service on 27 December 2011, and was reported to be commissioned aboard Yuri Dolgorukiy on 10 January 2013. The missile did however continue to fail in the summer of 2013 and was not operational as of November 2013. The Bulava became operational aboard Yury Dolgorukiy as of October 2015. However, recent developments put this in question. In November 2015, the submarine Vladimir Monomakh fired two missiles while submerged. One of the missiles self-destructed during the boost phase and the other failed to deliver its warheads to the specified target. After being sent back to the manufacturer, it was determined that the missiles failed due to manufacturing defects.
And Sarmat is basically 1980s technology. Russia's defence budget is less than the UK's.
So the idea they're going to be fielding nuclear powered cruise missiles and undersea drones with unlimited range anytime soon is pretty remote.
It's all CGI vapourware designed to fool the gullible.
Also US missile defences was never intended to stop a full on attack by Russia or China. Russia doesn't need all this high tech stuff to get through US missile defences it just needs a nuclear trident with submarine, land and air based nukes. Which it has had since the 1960s.
I.e. this is all vapourware and Russia doesn't even need to build it to be sure that it could get through US missile defences.
The nightmare scenario goes something like this
1) AMD run out of cash. They decide they'll concentrate on the embedded market.
2) LIke everyone else who has done this they don't make money selling embedded chips either and end up selling their IP to someone else. So AMD
3) Intel, having a monopoly on the desktop/server market gradually increase the time between new processors.
So in fifteen years' time we've got x64 chips which have are eight years old.
You can kind something like this back before Ryzen. AMD wasn't competitive and Intel had slow development cycles. When Ryzen came out Intel started to compete again - e.g. upping the core count on the i5 from 4 to 6. Now if AMD were 'concentrating on the embedded market' would they have bothered? It's not like people buying x64 PCs would have an alternative vendor if AMD left the market.
There's nothing all that surprising in that document. Windows on ARM has an emulator in the WOW layer which runs 32 bit code on a 64 bit kernel.
So you'd expect that it won't run non native drivers or x64 user mode code.
It's analogous to how Risc machines were limited. They could run 16 bit x86 applications because those run via WOW on a 32 bit kernel. They could not run 32 bit x86 applications and all drivers had to be native.
Then there are things like
Apps that customize the Windows experience may not work correctly. Native OS components cannot load non-native components. Examples of apps that commonly do this include some input method editors (IMEs), assistive technologies, and cloud storage apps. IMEs and assistive technologies often to hook into the input stack for much of their app functionality. Cloud storage apps commonly use shell extensions (for example, icons in Explorer and additions to right-click menus); their shell extensions may fail, and if the failure is not handled gracefully, the app itself may not work at all.
This is obvious too. Emulation is only for a pure x86 process. You can't load x86/x64 plugins into an ARM process or vice versa.
Apps that assume that all ARM-based devices are running a mobile version of Windows may not work correctly. Apps that make this assumption may appear in the wrong orientation, present unexpected UI layout or rendering, or failing to start altogether when they attempt to invoke mobile-only APIs without first testing the contract availability.
There were a few Win32 ARM applications that run on Windows Mobile, but not many now since Windows Phone killed off compatibility with them. Now it seems like MS have reversed course and tried to encourage ISVs to build them again.
Don't worry. If you don't like the BBC you can just stop being a customer.
Oh wait, you're forced to pay a TV licence if you have a TV even if you don't watch their programs.
It's actually funny how the BBC is a corporation which is allowed to collect its own tax and yet its programs regularly depict this sort of arrangement as a capitalist dystopia.
So an organisation which frequently runs pieces denouncing the rich for 'abusing tax loopholes to avoid tax' pays it presenters a high salary via a service company which means they pay less tax?
This can't be right.
It would be like finding out stand up comedians who denounce fatcats avoiding tax used an offshore company or that MPs who'd grilled Google execs over clever use of the tax rules to minimise tax liability were directors of companies which used those same rules.
Using separate segments for code and data would make code not modifiable (and even unreadable but by the CPU while executing it - goodbye, ROP), while data segments could be read only or read/write, while not executable. Of course, you would not be able to access memory outside the segment boundaries. AMD removed segments in x86-64 because nobody used them - everybody just created huge segments encompassing all the virtual address space, and then used pagination to map memory into them.
You can do that with the NX bit. Look at the flowchart for all the checks that need to be done on a far jmp or segment load in the 386 manual. It's impossible to make that algorithm run fast. NX is just a bit in the page table entry.
And for blocking Return Oriented Programming exploits there's a better option than segments -
The ENDBRANCH (see Section 7 for details) is a new instruction that is used to mark valid indirect call/jmp targets in the program. This instruction opcode is selected to be one that is a NOP on legacy machines such that programs compiled with ENDBRANCH new instruction continue to function on old machines without the CET enforcement. On processors that support CET the ENDBRANCH is still a NOP and is primarily used as a marker instruction by the in-order part of the processor pipeline to detect control flow violations. The CPU implements a state machine that tracks indirect jmp and call instructions. When one of these instructions is seen, the state machine moves from IDLE to WAIT_FOR_ENDBRANCH state. In WAIT_FOR_ENDBRANCH state the next instruction in the program stream must be an ENDBRANCH. If an ENDBRANCH is not seen the processor causes a control protection fault else the state machine moves back to IDLE state.
Trying to roll back to using 286 and 386 era stuff like segment limits is a bad idea.
Oh dear. Both my 2012 Macbook Pro and my ancient WIndows laptop both have pre Haswell CPUs and hence no PCID.
Then again the Macbook is running Yosemite which doesn't get an update anway. I've been putting off an upgrade to High Sierra because I'm worried it will run like crap.
The Mac does have 16GB of ram and and 1TB SSD so it would probably have been OK with HS. Now I'm not so sure. And if I want to buy a new Mac I'd need to spend $1899 to get the same amount of (non user upgradeable) Ram and half the amount of (user upgradeable but proprietary) SSD space.
On the other hand Google are going to patch Chrome to reduce the resolution on the timer which makes side channel timing attacks like Meltdown hard or impossible. And Microsoft patched both and old and new OSs.
tl;dr - Intel and Apple 0, Microsoft and Google 1.
Does it really matter if an IT company is owned by a Japanese corp or a British private equity one?
After all it seems like Japanese owned companies have done a better job building cars than British ones used to do - car production fell as places like British Leyland closed but it rose again when Japanese companies built factories.
What's happening that you've got a non EU company from Japan buying a company which is focussed on non EU markets - the UK and India.
It's the sort Foreign Direct Investment deal that will become more common post BREXIT. Also give free trade agreements with the US, EU, India, Japan and so on it should become more common. Particularly if we can get some of those to include services as well as goods.
The UK isn't 'leaving Europe', it's leaving the EU's protectionist tariff walls and rejoining the world economy.
£84 million is not a lot of money for a LPH (https://en.wikipedia.org/wiki/Landing_Platform_Helicopter) ship.
The US will be pissed if it turns out that Brazil was acting as a straw purchaser for China or someone like that. Then again China would end up wasting billions making a STOVL F-35B equivalent to fly off the clones of HMS Ocean they'd produce.
The Speccie is only popular because it was the first computer people had as a kid.
Oh and admittedly a cheap machine with relatively dumb hardware and a relatively fast CPU meant that a lot of innovative games came out on it.
I had an Atari 400 and then an 800xl back in the day. The 6502 made it pretty hard to use non hardware sprites and scrolling. And games that did use the hardware tended to look a bit samey. One notable exception was Donkey Kong which used a hardware sprite for the player and XOR based software sprites for the barrels.
Meanwhile on the Spectrum everything was done on software. And there were some heroic optimisation attempts to get a lot of onscreen action.
Colors sucked on the Spectrum though - you could only have one foreground and one background color per 8x8 cell and the colors were R1G1B1 - i.e. red, green, blue, cyan, magenta, yellow, white and black. The Atari had a weird scheme where you had 16 colours each in 16 luminances.
And you could do all sorts of weird overlays of hardware sprites, called players, and the background, called a playfield. And you could also switch video modes each scanline.
Still a lot of Atari games used a couple of players on a rather low res but 4 color playfield which looked very generic. On the Spectrum if you ignored color you could do some pretty impressive bitmap based graphic animation in software.
Basically the Ataris were expensive machines with very clever graphics hardware but a rather slow CPU - witness Landon Dyer's comment that 'mask and paint' with four software sprites was 'way too slow'. The Spectrum was a cheap machine with very dumb graphics hardware but a CPU which was fast enough to do clever stuff in software. It's sort of like CISC vs RISC.
You can edit Excel and Word documents on LibreOffice or OpenOffice. And Google calendar works pretty well with applications on Windows. Mac, Android and so on. Google allows you to export your data
And you can set up IMAP for email and sync that to multiple offline copies in case something terrible happens to Google.
I'd be more worried about FB to be honest. They've got nasty habit of blocking people for increasing amounts of time based on bogus complaints. But it depends what you do there. If you only use them for messaging and never actually post a status update, you'll be fine. Especially if you make sure you can contact people by another method if something happens to your account.
It's because the emulation is part of Windows on Windows.
Back in the NT 3.x days they supported Win32 code via the Win32 API in the kernel and Win16 code via WOW. On x86 the code was both the Win32 code and the Win16 code in WOW could be run natively by setting the processor up in the right mode and WOW was mostly a thunking layer. On Risc platforms - PowerPC, Mips, Alpha - WOW had a x86 emulator which they licensed from Insignia called SoftPC. So back then if you had a Win32 app it needed to be compiled natively, which of course was unlikely for the Risc platforms.
It's the same now, though I believe the x86 emulator is in house. So 64 bit apps must be native and call 64 bit APIs. 32 bit apps go through WOW. On an x64 chip that's a thunking layer. On a Risc platform they use an emulator. Though from what they're saying they're going to JIT code in their in house x86 on ARM emulator.
Back in the NT 3.x days Dec actually did produce a clever emulator called FX!32 which emulated initially but later JITted the most frequently emulated Win32 x86 code ended up native Alpha. There is/was actually a hook in the Windows loader to allow this - it calls out if it is asked to load a Win32 PE file compiled for the wrong architecture. FX!32 used that to do it's 'emulate and profile first, then JIT the performance critical parts' magic.
However for Microsoft have decided to stick with the 'put the emulator only in the WOW path' for some reason and not do a FX!32 equivalent which would run x64 binaries on ARM64.
The performance they're reporting isn't very good compared to code running natively on a Snapdragon 835 aka MSM8998. The Geekbench 3 score is about half what it should be
To put it in perspective that puts it about level with an Intel Atom x5-Z8550
I.e. you're not going to get a good experience running Photoshop on it as in Microsoft's demo
Even worse consider SIMD. Intel pointedly reminded everyone that recent SSE instructions are still patented here
Now it's fair to assume that Photoshop uses a lot of recent SSE which could be translated to ARM SIMD. However the Intel blog posts is essentially threatening the OEMs with a lawsuit if this is enabled. The best way to avoid that is to disable SSE to ARM SIMD translations but that has a significant performance impact. I.e. not only would you be running Photoshop on a processor equivalent to an Atom, it's won't implement any SIMD instructions. And there's the question of how many Win32 x86 applications actually require SSE since it has been around for long and is actually a pretty well designed SIMD instruction set.
It's shame really. I'd love to see a Win32 phone based on Atom or Snapdragon chips that let you run Win32 applications. In fact that's what I thought they'd do with Windows Phone and/or WIndows RT. Unfortunately they decided to disable non Microsoft WIn32 ARM executables to try to get people to use Metro apps from the store. Now Windows Phone is dead could they try WIn32 Phone? On an Atom I reckon that might be viable. Most of the Android apps I use have a Win32 version. Chrome and Opera do. Pleco, my favourite Chinese dictionary actually run well on Windows Mobile before it run on Android and iOS. Problem is killing off Win32 WIndows Mobile applications on Windows Phone has alienated a lot of ISVs. Even if Microsoft launched Win32 Phone now, it's not clear if they'd bother to support it given how dominant Android and iOS are.
I suspect the ship has sailed. Everyone has moved on to Android and iOS and another phone OS isn't really viable.
Biting the hand that feeds IT © 1998–2019