LWN.net Logo

Ari Jaaksi of Nokia Wants to Educate the Linux Community (Technocrat)

Bruce Perens discusses comments by Nokia's Ari Jaaksi on DRM and intellectual property rights issues under Linux. "The key is knowing how to draw bright lines between different parts of the system. That's a legal term, and in this case it means a line between the Free Software and the rest of the system, that is "bright" in that the two pieces are very well separated, and there is no dispute that one could be a derivative work of the other, or infringes on the other in any way. All of the Free Software goes on one side of that line, and all of the lock-down stuff on the other side."
(Log in to post comments)

Ari Jaaksi of Nokia Wants to Educate the Linux Community (Technocrat)

Posted Jun 13, 2008 8:03 UTC (Fri) by xav (subscriber, #18536) [Link]

It's time to educate Ari Jaaksi and Nokia.

Ari Jaaksi of Nokia Wants to Educate the Linux Community (Technocrat)

Posted Jun 13, 2008 14:14 UTC (Fri) by nhippi (subscriber, #34640) [Link]

It's time to educate Ari Jaaksi and Nokia.
...Which is almost exactly the words how Bruce starts his response in the fine article. The comments of lwn.net seem to be going to the toilet down to slashdot level - knee-jerk reactions without reading the article, giving no new insight for the subject under discussion.

IMHO the way to implement restricting mechanisms is out in open - such as the new Central Regulatory Domain Agent work for Linux wifi, the anti-theft features in OLPC or Trusted Computing support by TrouSerS project. Do not depend on "security via blobs"!

Ari Jaaksi of Nokia Wants to Educate the Linux Community (Technocrat)

Posted Jun 13, 2008 8:48 UTC (Fri) by ami.ganguli (guest, #9613) [Link]

Big companies change slowly until faced with a crisis that leads to a sudden change of
attitude from the top down.  Nokia changed its tune about flip phones almost overnight a few
couple of years ago when they unexpectedly started losing market share.

The iPhone2 might be the next big crisis.  If not the iPhone, then some other competitor,
maybe Motorola, will start grabbing market share by having a better developer environment that
leverages the Open Source ecosystem.

When the crisis comes then they'll stop worrying about trying to educate the Open Source world
and do whatever is necessary to turn things around, even if it means giving up some DRM.

Ari Jaaksi of Nokia Wants to Educate the Linux Community (Technocrat)

Posted Jun 13, 2008 10:58 UTC (Fri) by sylware (guest, #35259) [Link]

Hum... is he the guy from Nokia who stopped the W3C to normalized the media player DOM last
decembre 2007?

Ari Jaaksi of Nokia Wants to Educate the Linux Community (Technocrat)

Posted Jun 15, 2008 9:03 UTC (Sun) by oak (guest, #2786) [Link]

Jaaksi's a business manager, I don't they do technical standards work in 
any company...

Besides, Nokia is a very large company and it participates in many 
industry standards working groups.  The part of Nokia that does the 
Internet Tablets is tiny in Nokia scale, I don't think it has a say in 
things like this.

Ari Jaaksi's Blog

Posted Jun 13, 2008 11:50 UTC (Fri) by JJ (subscriber, #2321) [Link]

A kernel under the kernel

Posted Jun 13, 2008 15:21 UTC (Fri) by michaeljt (subscriber, #39183) [Link]

Is the "kernel under the kernel" as suggested by BP in the article really legally unambiguous?
If the Linux kernel is running in a general purpose virtual machine, itself running on top of
the "kernel under" then I can see how it works, but if the kernel under exports a set of
system calls to the Linux kernel, then the Linux kernel presumably has to be modified to use
them, and then it starts to look like the kernel under was just written as an extension to
Linux after all.  But then, IANAL (important to mention in the context of the article!)

You need open API - that's 100% true

Posted Jun 13, 2008 17:34 UTC (Fri) by khim (guest, #9252) [Link]

Ideally you'll need two implementations of "DRM core kernel": 100% free software and real, DRMed proprietary version. In reality it's easy to do: just implement emulated version of your device (in SDK) as 100% free software (it'll not be able to play DRMed files, but that's not what emulators are designed for - it can play "pretend-DRM files" and that's enough for development) and another proprietary version for "real hardware".

A kernel under the kernel

Posted Jun 13, 2008 19:18 UTC (Fri) by Alan_Hicks (subscriber, #20469) [Link]

Perhaps I am mistaken, but I believe the author's point was that the subordinate kernel would
essentially be just another piece of userland software.  Essentially, it's a an operating
system kernel running in userspace.

You might think of it like Windows 3.1 running underneath DOS.  They are clearly separate
systems (DOS being single-tasking and Windows 3.1 being capable of running several
applications at once).  One can argue whether or not early windows had any part of DOS in it,
but that is a moot point.  The fact that you can code a kernel running as a userland
application without even seeing the source for the "top kernel" seems pretty obvious to me.

Some one please correct if I am really off my rocker here.  I know very little about the
kernel and even less about coding.

A kernel under the kernel

Posted Jun 13, 2008 19:30 UTC (Fri) by michaeljt (subscriber, #39183) [Link]

Unless you have some way of switching into kernel mode (aka ring 0 on x86) from user space
then your kernel is in fact just an application, similar to the third suggestion offered by
the author, which makes it easier to subvert it if you can replace the Linux kernel on the
device.  I can't immediately think how to switch to kernel mode from userspace without a
kernel module to help.

A kernel under the kernel

Posted Jun 14, 2008 0:50 UTC (Sat) by tonyblackwell (subscriber, #43641) [Link]

Something seldom discussed in this context is the presumed absolute need for the telecom
service provider to have all connected devices adhering to their own low-level hardware
protocols, and I guess to protect access security.  I imagine it would be disastrous to have
bit jockey's fiddling with low-level protocols if this could endanger the network.

Despite my love of open systems, I could live with this part of the system in binary if the
rest was open.  If there was a published API for this binary blob on making calls etc would
that meet most needs?  Would it need to be a kernel under the kernel?

A kernel under the kernel

Posted Jun 14, 2008 3:47 UTC (Sat) by bersl2 (guest, #34928) [Link]

My very limited understanding is that the phone is a separate system from the UI/peripheral
devices, and that the communication takes place with a well-defined protocol (for some
definition of "well-defined").

I could be totally wrong, though at the very least, I know that they don't share the same
memory, as that would be insanity.

A kernel under the kernel

Posted Jun 15, 2008 8:31 UTC (Sun) by drag (subscriber, #31333) [Link]

>   The fact that you can code a kernel running as a userland application without even seeing
the source for the "top kernel" seems pretty obvious to me.


Like Alan mentioned if your able to subvert the OS/Kernel underneath the virtualized
environment then you can control it. So if your playing software that has audio and video then
it's a simple thing to intercept and record the audio and video as it streams to the hardware,
thus subverting the copy protections.


Have you heard of Linux's KVM? Or Xen's ability to do full virtualization?

Those applications depend on virtualization extensions in newer x86 CPUs to work. (AMD's AMD-V
or Intel's VT).

The reason why have these virtualization extensions is because of Microsoft's Palladium
feature for Longhorn. (it was pulled before Vista was released) The idea for Palladium was to
create a secure operating environment for doing copy protections. The idea was to create a
easy, high performance, virtual environment, based on a hypervisor, that was protected by
checksums based on TPM, that would allow 'content owners' to run software and play media
outside the control of Windows itself. 

You see, the hypervisor would run underneath the Windows NT kernel. Create a parallel
environment. This environment would run completely independent from Windows. 

(Thanks to that Microsoft worked with Intel and AMD to change how their CPUs worked
(slightly). Even though Palladium didn't work out now we have easy high performance
virtualization for Linux.)


This is what would be required to do virtualization with Linux if you wanted to keep the Linux
kernel modifiable. You can't run the environment ON Linux, you'd have to run it _next_ to
Linux.

Otherwise you can go the 'Tivo' route and simply do not let anybody modify how the OS works
though hardware enforced checksumming.


Both ways suck. DRM is just something Linux doesn't need.. it's just something that never
really works and introduces all sorts of illogical limitations and licensing issues as well as
usability, stability, and performance issues.  DRM is, right now, a fad. I do not believe it
will be a issue 5 years from now. 

It'll go along the same route as people punching holes in floppy disks to try to make them
uncopyable.

A kernel under the kernel

Posted Jun 17, 2008 7:28 UTC (Tue) by BrucePerens (subscriber, #2510) [Link]

Some CPUs have multiple privilege rings. Now, I'm so old that I remember the VAX had user, supervisor, and kernel, and the iAPX 432 had one for each function. CPUs that support hypervisors should have an extra privilege ring too, but I don't know the details.

A kernel under the kernel

Posted Jun 17, 2008 8:03 UTC (Tue) by michaeljt (subscriber, #39183) [Link]

> Some CPUs have multiple privilege rings.

The x86 family for example :)  Although it seems to me that this is mainly an implementation
detail of the hypervisor (e.g. VirtualBox runs privileged guest code in ring 1, VMWare does
pure recompiling of privileged code as far as I know).

Copyright © 2008, Eklektix, Inc.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds