Become a fan of Slashdot on Facebook

 



Forgot your password?
typodupeerror
×

Submission + - NLNet funds development of a Libre RISC-V 3D CPU (crowdsupply.com)

lkcl writes: The NLNet Foundation has approved funding for the Hybrid Libre RISC-V CPU/VPU/GPU under its Privacy and Enhanced Trust Programme. High security software is irrelevant if the hardware is fundamentally compromised, for example with the Intel spying backdoor co-processor known as the Management Engine. The Libre RISCV SoC was begun as a way for users to regain trust and ownership of the hardware that they legitimately purchase.

This processor will be the first of its kind, as the first commercial SoC designed to give users the hardware and software source code of the 3D GPU, Video Decoder, main processor, boot process and the OS.

Shockingly, in the year 2019, whilst there are dozens of SoCs with full source code that are missing either a VPU or a GPU (such as the TI OMAP Series and Xilinx ZYNQ7000s), there does not exist a single commercial embedded SoC which has full source code for the bootloader, CPU, VPU and GPU. The iMX6 for example has etnaviv support for its GPU however the VPU is proprietary, and all of Rockchip and Allwinner's offerings use either MALI or PowerVR yet their VPUs have full source (reverse engineered in the case of Allwinner).

This processor, which will be quad core dual issue 800mhz RV64GC and capable of running full GNU/Linux SMP OSes, with 720p video playback and embedded level 25fps 3D performance in around 2.5 watts at 28nm, is designed to address that imbalance. Links and details on the Libre RISC-V SoC wiki.

The real question is: why is this project the only one of its kind, and why has no well funded existing Fabless Semiconductor Company tried something like this before? The benefits to businesses of having full source code are already well-known.

Comment Even Longer Ago Than That: X10 (Score 2) 67

The Clapper is only two decades old. The X10 System is four decades old and much more useful. It's the original electronic home automation system.

I still use X10 to control more than a dozen lights with timers, day/night detectors, motion sensors, and manual controls. I control a few fail-safe appliances with it too. The modules and controllers are cheap and plentiful, you can still buy them new if you wish. The protocol is completely open and there are myriad computer interfaces. Most Free/free HA software will readily use X10 modules.

X10 lamp modules were a little wonky with CFL bulbs, but the massive shift to LEDs has solved that problem. LED bulbs work 100% with 30+ year-old X10 modules including dimming. The only real downside is no two-way verification (with standard modules), and the vampire draw is higher than modern stuff. (I think. Could be wrong there.)

The best parts? 100% Under my complete control with no mandatory "cloud" connection or privacy leaks or Internet-exposed firmware that will never be updated. You don't need a EULA to use it or read a Privacy Statement to see what they are stealing.

Comment Re: This opinion isn't new and is still wrong. (Score 3, Informative) 411

So far for 2017, Linux has 128 code execution vulnerabilities whereas Microsoft has 71.

Because each Linux vulnerability is reported for multiple distributions. And because Linux vulnerabilities are found faster and therefore fixed faster. However you want to spin it, Windows is the one getting successfully exploited in multiple ways, so that new Windows vulnerabilities are hardly news any more, whereas its big news any time a hole shows up in Linux, and then very few fall victim to it.... partly because of the early and widespread disclosure, but more because Linux vulnerabilities typically require local access, login shell, etc. Whereas a dodgy flash file is often enough to take out a Windows box.

Comment Re:Exception to butterage (Score 1) 303

I just grabbed the opera .deb package and installed it, total elapsed time roughly 30 seconds, and it is suh-weet. Thanks to whoever posted this for the suggestion. Chrome is really pissing me off these days. Firefox still likely be be my main browser because of vastly superior tab handling and actual open source project.

Submission + - EOMA68 Earth-friendly Modular computing campaign hits $50k (crowdsupply.com) 9

lkcl writes: The EOMA68 Crowd-funding campaign launched last month and has just reached $50,000 and so far has 541 backers with 28 days still to go. EOMA68 and its creator have featured regularly on slashdot over the past five years: a live-streamed video from Hope2016 explains what it's about, and there is a huge range of discussions and articles online. The real burning question is: if a single Software Libre Engineer can teach themselves PCB design and bring modular computing to people on the budget available from a single company, why are there not already a huge number of companies doing modular upgradeable hardware?

Comment Re:Write-only code. (Score 1) 757

> The sample code will copy a and b twice, once to put them in the lambda closure, and then to pass them as arguments to do_something. Some may consider this wasteful (the easiest fix is to modify do_something to take the values as const references).

No, the easiest fix is for a & b to be moveable types, which they may well be, in which case one of those copies becomes a move, and all is right in the universe.

Comment Re:Write-only code. (Score 1) 757

> So we all program in different dialects, and then scratch our heads when we read other peoples' code.

The practice of programming in dialects is more a function of the origins of the language than the size of the language. Stroustrup's most recent book does a marvelous job of demonstrating how little you have to know to program in C++ effectively: http://www.stroustrup.com/prog...

C++'s C compatibility is both its strength and its weakness, and the weakness primarily comes from people treating it as a bunch of add ons to C. If you scrap that attitude, it is entirely possible to be proficient in the language after a year of use and capable of reading most anyone's code (assuming they aren't shooting for obscurity) in another year or two. That's longer than some simpler languages, but it is hardly sufficient to excuse people's ignorance.

Comment Re:C++ Downfalls, Compiler and Internationalizatio (Score 1) 757

Regarding repeatability: the language is fully deterministic, and compilers have as much of an incentive to be consistent as they do otherwise. If you can't get repeatable builds, then the problem is with your build environment/process more than anything else. Aside from hardware entropy sources, computers are, by design, deterministic, so if you can't reproduce a build it is because you haven't constructed a proper build closure. Certainly there is nothing about C++ that makes builds any more non-deterministic than say, C. Debian actually has a project for this: https://wiki.debian.org/Reprod..., and you may find some helpful information there. You'll notice nothing they've run in to is specific to C++.

Regarding code-to-binary structural coverage analysis. Certainly I can imagine the argument that as you get to higher and higher levels of abstraction, it becomes harder for humans to track all the transformations all the way through to assembly. One solution is to restrict the levels of abstraction you work with. I would argue that is still error prone and you are better off with using theorem prover type automated solutions (and in general, languages built around provability like ML or Coq) rather than manual verification. Even better would be to perform the verification on the compiler itself rather than the code it compiles. That said, C++ compilers do a pretty good job of tracking the origin of each bit of code they generate, which ought to make it easy to have the machine inform you of the origin of any particular code block, and C++ also does a great job of letting the programmer decide what level of abstraction they want to work with and only making the runtime pay for the abstractions they are using. Its stronger type safety also helps ensure that there aren't "hidden" code paths do to programmer error. Of course, optimizers really complicate this, so you may need to turn them off as you mentioned.

Internationalization. That sounds like an old project... one that predates the C++ standard (which means a lot of bad C habits are involved). C++ is actually very well set up for internationalization, particularly because it is so agnostic about how stings are handled. Languages like Python, Perl & surprisingly Ruby have made all kinds of unfortunate decisions around internationalization that make it look like you are fine with internationalization, but it actually blows up in your face. As an example, ICU is probably one of the foremost libraries out there, and its primary language targets are C++ & Java. The C++ target has the virtue that you can pretty much just drop in ICU strings in to a well structured C++ program and all is well in the world, where as the Java one is a bit of a pain to take advantage of (fortunately, Oracle periodically syncs the ICU code in with the JDK, but that means you have to wait for a JDK update to get the latest ICU solution).

Slashdot Top Deals

With your bare hands?!?

Working...