Forum: PC-Programmierung Modifizierter Linux-Kernel mit nicht quelloffenen Modulen


von *GAST* (Gast)


Lesenswert?

Hallo,
ich möchte eine Anlage vertreiben, zu der (mitgeliefert) ein PC mit 
einem modifizierten Linux-Kernel zur Steuerung gehört.

Da der Linux-Kernel, und damit auch meine geänderte Version, unter der 
GNU GPL steht, müsste ich auch meinen Quellcode zur Steuerung der Anlage 
freigeben, was ich nicht tun möchte, da diese Funktionsweise einer der 
wichtigsten Punkte ist, die der Kunde kauft. Mit offenem Quellcode werde 
ich ggf. keine Anlagen mehr verkaufen. Gibt es eine Möglichkeit, wie ich 
das Problem umgehen kann?

von Strickwettbewerbgewinner (Gast)


Lesenswert?

Packe in den Kernel nur das einfache Hardware-Interface (d.h. einen 
Treiber), und schreibe ein normales (closed source) Programm, welches 
diesen zur Kommunikation mit der Hardware verwendet und die ganze 
"geheime" Logik enthält. Ist eigentlich onehin sauberer, das so 
aufzuteilen... Zur Kommunikation zwischen Treiber und Programm 
verwendest du eine Datei unter /dev

von Stephan K. (stephan_k)


Lesenswert?

Es ist voellig egal, ob der Kunde fuer die Funktionsweise bezahlen soll, 
oder nicht. Ich hoffe, dass wenn du es als geschlossenen Source raus 
bringst das Ganze den Bach runter geht. Du bekommst mit Linux ein 
Quelloffenes System zur Verfuegung gestellt, an dem du Geld verdienen 
willst. Weisst du eigentlich, wie viele Programierer wieviel Zeit dort 
hinein gesteckt haben? Hast du diesen Leuten auch was bezahlt? 
Vermutlich nicht, also warum solltest du dann was bekommen? Dein 
Verhalten ist in meinen Augen asozial.
Biete den passenden Service an, an dem du Geld verdienst, dann ist es 
ok. Ansonsten kauf dir die entsprechenden Windows CE Lizensen, dann 
kannste fuer deinen Krempel auch Geld verlangen.

von Strickwettbewerbgewinner (Gast)


Lesenswert?

Stephan K. schrieb:
> Ich hoffe, dass wenn du es als geschlossenen Source raus
> bringst das Ganze den Bach runter geht.
Das wird es, wenn es quelloffen ist - die Gründe müssen ja kaum 
erläutert werden. Dieses Thema wurde zB auf slashdot des öfteren 
diskutiert, mit dem Ergebnis, dass es sehr wohl "legitim" und sinnvoll 
ist, die eigene Logik/Berechnung closedsource zu halten, damit man 
überhaupt eine Chance hat, Erfolg zu haben. Wenn man dann fürchterlich 
viel Geld verdient hat, kann man tatsächlich darüber nachdenken, der 
"Community" etwas zurückzugeben und die Algorithmen offen zu legen, weil 
man dann einen Namen hat, mit Support Geld verdienen kann und einem die 
Offenlegung nicht instant das Geschäft zerstört. Schließlich hat man ja 
auch viel Zeit und Geld darauf verwandt, den Algorithmus zu schreiben - 
also möchte man dafür auch etwas zurückbekommen, zumindest um überhaupt 
überleben zu können. Ausschließlich über den Support Geld verdienen zu 
wollen ist da deutlich riskanter...

von Peter II (Gast)


Lesenswert?

wenn jemand dir schaden will, braucht er doch nur alles zu kopieren er 
muss dafür doch kein quelltext haben.

Und leute die sich für den Algorithmus interesieren, schaffen es auch 
anhand des compilierten Kernels.

Firmen wie NVIDA geben ihren quellcode nicht raus, weil sie selber 
einige Algorithmus eingekauft haben und diese selber nicht 
veröffentlichen dürfen.

Wenn sie den quelltext veröffentliche würden, dann würde er absatzt der 
Grafigkaten auch nicht sinken.

Selbst MS gibt den Quelltext von WinCE raus.

von *GAST* (Gast)


Lesenswert?

Strickwettbewerbgewinner schrieb:
> dass es sehr wohl "legitim" und sinnvoll
> ist, die eigene Logik/Berechnung closedsource zu halten

Ist das denn auch möglich, wenn ich die "geheime" Logik fest im Kernel 
verbaue, oder muss es dann extern laufen?
Im ersten Falle müsste ja die Lizenz zur Nutzung entfallen, well der 
Kernel unter GPL steht, aber durch meinen gekapselten Algorithmus nicht 
mehr frei
wäre?

Was musss ich tun, wenn ich einem Kunden eine Anlage aufbaue? Kompletten 
Quellcode vom Kernel gleich mit ausliefern, oder zur Verfügung stellen, 
oder online stellen?

von Peter II (Gast)


Lesenswert?

*GAST* schrieb:
> Was musss ich tun, wenn ich einem Kunden eine Anlage aufbaue? Kompletten
> Quellcode vom Kernel gleich mit ausliefern, oder zur Verfügung stellen,
> oder online stellen?

wenn es GPL ist musst du den quellcode herrausgeben wenn jemand danach 
fragt. Musst ihn also nicht zwingend öffentich auf einer Webseite 
bereitstellen.

Den Quellcode für einige Speedport Router finden man auch nur auf 
"versteckten" ftp server der T-Com.

von Strickwettbewerbgewinner (Gast)


Lesenswert?

Peter II schrieb:
> wenn jemand dir schaden will, braucht er doch nur alles zu kopieren er
> muss dafür doch kein quelltext haben.
Wäre für die kopierende Firma aber besser, wenn sie die Funktionalität 
verstehen & modifizieren könnte, da es ja offenbar kein Endverbraucher 
Wegwerf-Produkt ist.

Peter II schrieb:
> Und leute die sich für den Algorithmus interesieren, schaffen es auch
> anhand des compilierten Kernels.
Das ist aber aufwändig und teuer, somit werden billigste 
Copy-Paste-Plagiate vermieden

Peter II schrieb:
> Firmen wie NVIDA geben ihren quellcode nicht raus, weil sie selber
> einige Algorithmus eingekauft haben und diese selber nicht
> veröffentlichen dürfen.
Sie könnten ja das drumherum veröffentlichen...

Peter II schrieb:
> Wenn sie den quelltext veröffentliche würden, dann würde er absatzt der
> Grafigkaten auch nicht sinken.
Richtig, aber Nvidia ist ja auch eine große Firma mit Namen und riesigem 
Absatz, deren Produkte man nicht mal eben nachbaut und dann die 
Firmware/Treiber copy&paste't.

Peter II schrieb:
> Selbst MS gibt den Quelltext von WinCE raus.
Das will doch keiner sehen :-D Im Ernst, hier gilt das gleiche wie das 
obengenannte für NVidia.


Versteht mich nicht falsch, ich bin sehr für opensource, meine 
Hobby-Quellcodes kann auch jeder haben der lieb fragt, aber in gewissen 
Situationen nützt es einfach niemandem (außer chinesischen Nachmachern) 
seine Codes offen zu legen...

von Strickwettbewerbgewinner (Gast)


Lesenswert?

*GAST* schrieb:
> Ist das denn auch möglich, wenn ich die "geheime" Logik fest im Kernel
> verbaue, oder muss es dann extern laufen?
Weiß ich nicht so genau, aber ich glaub dann muss der Code offen sein. 
Du könntest die Logik in ein eigenes Kernelmodul (LKM) packen und dies 
nur binär rausgeben, das sollte gehen - dann musst du nur den Linux-Code 
herausgeben und sagen dass der nicht auf deinem Mist gewachsen ist.

> Im ersten Falle müsste ja die Lizenz zur Nutzung entfallen, well der
> Kernel unter GPL steht, aber durch meinen gekapselten Algorithmus nicht
> mehr frei
> wäre?
Unter solchen Bedingungen darfst du den modifizierten Kernel gar nicht 
herausgeben...
> Was musss ich tun, wenn ich einem Kunden eine Anlage aufbaue? Kompletten
> Quellcode vom Kernel gleich mit ausliefern, oder zur Verfügung stellen,
> oder online stellen?
Du musst ihn auf Anfrage zur Verfügung stellen - zB per Post eine 
Diskette verschicken ;-) Zu deiner eigenen Bequemlichkeit würde ich die 
aber direkt mit der Anlage mitliefern...
Das steht aber alles genau in der GPL drin, dafür ist die da

von Peter II (Gast)


Lesenswert?

hast du ein unabhängiges Modul, oder änderst du wirklich den quellcode 
vom Kernel?

Wenn du etwas änderst dann musst du auf jeden Fall diese änderung 
öffentlich zugänglich machen. Wenn du nur die Schnittstellen vom Kernel 
nutzt dann nicht zwingend.

von Tuxi (Gast)


Lesenswert?

Hier kann man viel von Android lernen. Der Linux-Kernel ist quelloffen 
aber für das konkrete Gerät alleine nutzlos, da die Treiber 
weitestgehend proprietär sind. Damit sind Idealisten wie Stephan K. 
zumindest rein juristisch befriedigt und dein Know-How ist auch 
geschützt. Ansonsten gäbe es nicht so viele Millionen zufriedene 
Android-Lizenz Nutzer.

von Peter II (Gast)


Lesenswert?

Tuxi schrieb:
> Der Linux-Kernel ist quelloffen
> aber für das konkrete Gerät alleine nutzlos, da die Treiber
> weitestgehend proprietär sind.

wo hast du das gelesen? Es ist doch nur eine modifiziertern Linux kernel 
alle Treiber die man von linux kennt sind dort dabei.

Sonst könnte leute gar nicht für so viele Geräte ein image anbieten:

http://www.cyanogenmod.com/

von AG (Gast)


Lesenswert?

Kannst den Quellcode ja auf so einer Festplatte hier:
http://de.wikipedia.org/wiki/ST506

ausliefern. Geht dann halt nur wenn man noch einen Controller von 198x 
und passenden DOS PC mit ISA Slot findet...

Oder auf einer 8" Diskette:
http://de.wikipedia.org/w/index.php?title=Datei:Floppy_disk_8inch_vs_3.5inch.jpg&filetimestamp=20120503174042

;-)

von Tuxi (Gast)


Lesenswert?

Peter II schrieb:
> wo hast du das gelesen? Es ist doch nur eine modifiziertern Linux kernel
> alle Treiber die man von linux kennt sind dort dabei.

Beim Galaxy S2 z.B. waren die Entwickler auf geleakte Firmware 
angewiesen:

http://www.androidnext.de/news/samsung-galaxy-s2-cyanogenmod-9-auf-android-4-0-3-basis-im-hands-on-video/

So wie es von Idealisten immer propagiert wird, müsste ich auf die 
Samsung Webseite gehen können, mir alles runterladen, kompilieren und 
draufspielen können. Die Praxis sieht leider völlig anders aus.

von Frank K. (fchk)


Lesenswert?

*GAST* schrieb:
> Hallo,
> ich möchte eine Anlage vertreiben, zu der (mitgeliefert) ein PC mit
> einem modifizierten Linux-Kernel zur Steuerung gehört.
>
> Da der Linux-Kernel, und damit auch meine geänderte Version, unter der
> GNU GPL steht, müsste ich auch meinen Quellcode zur Steuerung der Anlage
> freigeben, was ich nicht tun möchte, da diese Funktionsweise einer der
> wichtigsten Punkte ist, die der Kunde kauft. Mit offenem Quellcode werde
> ich ggf. keine Anlagen mehr verkaufen. Gibt es eine Möglichkeit, wie ich
> das Problem umgehen kann?

Selber schuld, dass Du Dich vorher nicht um die Lizenzen gekümmert hast. 
Nimm FreeBSD. Die BSD-Lizenz hat keine derartige Fußangel.

fchk

von K. L. (trollen) Benutzerseite


Lesenswert?

Frank K. schrieb:
> Nimm FreeBSD. Die BSD-Lizenz hat keine derartige Fußangel.

Jörg? Bist du das?

Tuxi schrieb:
> So wie es von Idealisten immer propagiert wird, müsste ich auf die
> Samsung Webseite gehen können, mir alles runterladen, kompilieren und
> draufspielen können. Die Praxis sieht leider völlig anders aus.

http://www.golem.de/news/samsung-sourcecode-fuer-das-galaxy-s3-veroeffentlicht-1206-92232.html

von Andreas B. (andreas_b77)


Lesenswert?

Peter II schrieb:
> Firmen wie NVIDA geben ihren quellcode nicht raus, weil sie selber
> einige Algorithmus eingekauft haben und diese selber nicht
> veröffentlichen dürfen.

Es ist aber nicht so, dass NVIDIA den Treiber-Quellcode gern 
veröffentlichen würden aber nicht dürfen. Die Geheimhaltung hat Methode, 
schließlich ist auch alle Dokumentation der 3D-Funktionen streng geheim.


AG schrieb:
> Kannst den Quellcode ja auf so einer Festplatte hier:
> http://de.wikipedia.org/wiki/ST506
>
> ausliefern. Geht dann halt nur wenn man noch einen Controller von 198x
> und passenden DOS PC mit ISA Slot findet...
>
> Oder auf einer 8" Diskette:

Nur wenn du dann im Ernstfall einem Richter klarmachen willst, dass 
ST506 Festplatten und 8" Disketten ein "medium customarily used for 
software interchange" sind.

Und bevor jetzt noch ein Schlaumeier mit ähnlichen Vorschlägen kommt, 
der Source Code muss auch "machine-readable" sein und "the preferred 
form of the work for making modifications to it".

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.