Wie werden Fernseher programmiert?



  • ich bins schrieb:

    Häufig läuft sogar etwas sehr vertrautes auf solchen Kisten. Unser Fernseher läuft höchstwahrscheinlich mit Linux, wie so viele embedded Geräte heutzutage.

    Nope, mit FreeBSD!

    Das ergibt zumindst der nmap OS Scan bei meinem Panasonic.

    Ist ja auch klar, das GPL Zeugs wird ungern angerührt. Die BSD Lizenz ist den meisten immer noch lieber, das gibt weniger rechtliche Probleme wenn man's vergeigt.

    Programmiert werden die dann mit den üblichen Programmiersprachen. Häufig kommt C oder C++ zum Einsatz. Oder Java. Es wird halt überall mit Wasser gekocht.

    Also auf µC ist Assembler, C und Basic gängig.

    C++ und Java sind eher selten und für Mikrocontroller oft auch gar nicht notwendig.
    Das bischen Steuerung, das kriegt man auch in C hin.

    Erst bei Smartphones und Smart TVs mit fetten ARM CPUs und viel RAM wird dann auch auf C++ und Java zugegriffen.



  • mal eine kleine frage: warum sollte jemand für sowas java verwenden?

    wenn man java verwenden will, dann braucht man auch die java virtual machine.

    also muss du die auch auf den fernseher "portieren", dass wird zeitaufwendig, teuer und schwer.

    warum sollte irgendjemand das langsame java verwenden, wenn man das ganze auch schnell und ohne virtual machine mit c oder assembler schafft?

    klärt mich auf!



  • µC schrieb:

    C++ und Java sind eher selten und für Mikrocontroller oft auch gar nicht notwendig.

    Dann fehlern einem allerdings die OOP, was bei solchen Chips praktisch ist.

    0x0ERROR



  • 0x0ERROR schrieb:

    OOP, was bei solchen Chips praktisch ist.

    warum gerade bei solchen Chips ?



  • begründung schrieb:

    0x0ERROR schrieb:

    OOP, was bei solchen Chips praktisch ist.

    warum gerade bei solchen Chips ?

    Wen es jetzt um algemeine µ-Chips gehts ist dies Praktisch um Sensoren
    komfortabel anzusteuern. Wen man an einem Projekt arbeitet wo man mehrere Temperatursensoren parallel auslesen muss ist dies einfacher zu warten.

    0x0ERROR



  • Man merkt, hier spricht der Mann aus der Praxis...


  • Mod

    warum JAVA????????? schrieb:

    mal eine kleine frage: warum sollte jemand für sowas java verwenden?

    Weil es leichter ist, Entwickler zu finden und diese auch leichter dafür Coden können und das Projekt insgesamt leichter wartbar wird. Das kann die höheren Kosten pro Einheit kompensieren, wenn die Stückzahl nicht sehr groß ist. Falls die nötige Rechenleistung sehr hoch ist, so dass der Java-Overhead nur wenig zählt, dann sind sogar die Stückkosten kein Argument mehr.

    P.S.: Die Waschmaschine wird aber vermutlich nicht in Java programmiert sein. Das ist wieder eher etwas für Geräte in Richtung Fernseher.



  • SeppJ schrieb:

    warum JAVA????????? schrieb:

    mal eine kleine frage: warum sollte jemand für sowas java verwenden?

    Weil es leichter ist, Entwickler zu finden und diese auch leichter dafür Coden können und das Projekt insgesamt leichter wartbar wird. Das kann die höheren Kosten pro Einheit kompensieren, wenn die Stückzahl nicht sehr groß ist. Falls die nötige Rechenleistung sehr hoch ist, so dass der Java-Overhead nur wenig zählt, dann sind sogar die Stückkosten kein Argument mehr.

    P.S.: Die Waschmaschine wird aber vermutlich nicht in Java programmiert sein. Das ist wieder eher etwas für Geräte in Richtung Fernseher.

    kann gut sein. trotzdem muss die java virtual machine portiert werden. und dafür braucht man höchstwahrscheinlich c.

    vom arbeitsaufwand ist es wahrscheinlich sowieso egal, ob man in java mit einer virtual machine in c oder gleich alles in c programmiert.



  • SeppJ schrieb:

    Falls die nötige Rechenleistung sehr hoch ist, so dass der Java-Overhead nur wenig zählt, dann sind sogar die Stückkosten kein Argument mehr.

    Zur Rechenleistung: BEi eingien µ-Controllern stehen einem nur 1K Ram
    zur verfügung.

    0x0ERROR



  • 0x0ERROR schrieb:

    SeppJ schrieb:

    Falls die nötige Rechenleistung sehr hoch ist, so dass der Java-Overhead nur wenig zählt, dann sind sogar die Stückkosten kein Argument mehr.

    Zur Rechenleistung: BEi eingien µ-Controllern stehen einem nur 1K Ram
    zur verfügung.

    0x0ERROR

    ein "K" = kilobyte = 1024 byte?

    wenn ja, dann hat sich das mit java wohl sowieso erledigt.



  • java -.-'' schrieb:

    ein "K" = kilobyte = 1024 byte?

    Genau! Java ist ein wenig zu groß 😉

    0x0ERROR


  • Mod

    0x0ERROR schrieb:

    SeppJ schrieb:

    Falls die nötige Rechenleistung sehr hoch ist, so dass der Java-Overhead nur wenig zählt, dann sind sogar die Stückkosten kein Argument mehr.

    Zur Rechenleistung: BEi eingien µ-Controllern stehen einem nur 1K Ram
    zur verfügung.

    Ist ja schön für dich. Es verlangt schließlich niemand, dass man alles mit Java programmiert. Aber es gibt Java-Mikrocontroller und die verkaufen sich auch gut genug, um massenproduziert zu werden. Glaubst du, die Käufer sind alle dumm und nur du bist in der Lage die Wahrheit zu erkennen?



  • SeppJ schrieb:

    0x0ERROR schrieb:

    SeppJ schrieb:

    Falls die nötige Rechenleistung sehr hoch ist, so dass der Java-Overhead nur wenig zählt, dann sind sogar die Stückkosten kein Argument mehr.

    Zur Rechenleistung: BEi eingien µ-Controllern stehen einem nur 1K Ram
    zur verfügung.

    Ist ja schön für dich. Es verlangt schließlich niemand, dass man alles mit Java programmiert. Aber es gibt Java-Mikrocontroller und die verkaufen sich auch gut genug, um massenproduziert zu werden. Glaubst du, die Käufer sind alle dumm und nur du bist in der Lage die Wahrheit zu erkennen?

    ne, ich glaube eher, dass sich die java-controller gut verkaufen, weil java einfacher ist als c oder eine andere hardware-nahe programmiersprache.

    dies ist wahrscheinlich der einzige grund. nenn mir bitte ein gerät, dass ich im laden kaufen kann, wo das ungetüm java auf irgendwelchen microcontrollern (die müssten dann eigneltich MEGAcontroller heißen) läuft. nix für ungut... aber java soll doch bitte da bleiben, wo es hingehört, in irgendwelche universitäten.



  • SeppJ schrieb:

    Aber es gibt Java-Mikrocontroller und die verkaufen sich auch gut genug, um massenproduziert zu werden.

    Welche sind da zu nennen? Sind mir bisher noch nicht begegnet, würde mich interessieren.



  • java -.-''''''''''''' schrieb:

    ne, ich glaube eher, dass sich die java-controller gut verkaufen, weil java einfacher ist als c oder eine andere hardware-nahe programmiersprache.

    Hat er doch weiter oben selbst schon geschrieben...



  • java -.-''''''''''''' schrieb:

    dies ist wahrscheinlich der einzige grund.

    Nicht unbedingt. Java ist auch portabler als eine maschinennahe Programmiersprache. Wenn der Hersteller bei dem nächten Modell einen anderen Controller verwenden will, müsste er ein C Programm vielleicht komplett neu entwickeln lassen. Und vielleicht kann man dasselbe Programm auch auf Fernsehern aus einer anderen Baureihe verwenden. Nur so ein Gedanke. Hab mich noch nie mit der Programmierung von Fernsehern an sich beschäftigt.



  • ja denkt denn keiner von euch an die jvm? ohne die läuft, wenn man java verwendet, garnix!

    wenn ein hersteller java verwenden will, dann muss er erstmal die jvm portieren. dafür braucht er c, vielleicht sogar assembler, dann kann das eigentliche java programm ausgeführt werden. man braucht auch mehr hardware (ram usw.).

    wenn er dann ein neues modell hat, dann geht das ganze von vorne los, zuerst die jvm portieren usw.

    wenn man das alles gleich in c macht, kommts aufs gleiche raus, man braucht bloß weniger gute hardware und das programm läuft schneller.


  • Mod

    Tim schrieb:

    SeppJ schrieb:

    Aber es gibt Java-Mikrocontroller und die verkaufen sich auch gut genug, um massenproduziert zu werden.

    Welche sind da zu nennen? Sind mir bisher noch nicht begegnet, würde mich interessieren.

    Ich kenne mich in der Welt der Microkontroller nicht so aus. Kurzes Googeln findet viele JVMs für viele gängige Controller. Vor Jahren habe ich bei Heise auch von einem Chip gelesen, der die JVM schon eingebaut hat. Kann den Artikel leider gerade nicht finden. Nein, der artikel erschien nicht am ersten April und ich fühlte mich nach dem Lesen so wie so mancher hier im Thread.

    java und die jvm... schrieb:

    wenn ein hersteller java verwenden will, dann muss er erstmal die jvm portieren.

    Nein. Ein Hersteller portiert die JVM (möglicherweise sogar der Hersteller des Chips), andere kaufen diese ein.

    wenn er dann ein neues modell hat, dann geht das ganze von vorne los, zuerst die jvm portieren usw.

    Dies ist ein ganz wunderbares Eigentor. Das gilt nämlich für ein natives Programm erst Recht. Wenn du direkt in Java programmiert hättest, dann holst du die fertige JVM für den neuen Chip und bist fertig.

    Worauf willst du überhaupt hinaus? Du kannst doch ganz schnell selber suchen und finden: Es gibt die Dinger wirklich! Da kannst du dir noch so viele Argumente ausdenken, warum es sie nicht geben sollte, gegen diesen Fakt kommst du nicht an! Das heißt, viele Entscheider haben bereits die Argumente für und wieder angehört und sind zu dem Schluss gekommen, dass die Entwicklung in Java in ihrem Fall ein besseres Kosten-Nutzen-Verhältnis hat.



  • gut.

    ich will jetzt ein produkt sehen, das mit einem java microcontroller läuft. und jetzt komm mir nicht mit irgendwelche handys oder kaffeemaschinen 🙄



  • SeppJ schrieb:

    Dies ist ein ganz wunderbares Eigentor. Das gilt nämlich für ein natives Programm erst Recht. Wenn du direkt in Java programmiert hättest, dann holst du die fertige JVM für den neuen Chip und bist fertig.

    Wen man allerdings einen neuen Chip vom gleichen hersteller verwendet, laufen die Programme meist ohne Änderungen. Und wen man die jvm erstmal für den Controller portieren muss kann man eigentlich auch den Compiller des alten Chips für den neuen portieren.

    0x0ERROR


Anmelden zum Antworten