Das deutsche QBasic- und FreeBASIC-Forum Foren-Übersicht Das deutsche QBasic- und FreeBASIC-Forum
Für euch erreichbar unter qb-forum.de, fb-forum.de und freebasic-forum.de!
 
FAQFAQ   SuchenSuchen   MitgliederlisteMitgliederliste   BenutzergruppenBenutzergruppen  RegistrierenRegistrieren
ProfilProfil   Einloggen, um private Nachrichten zu lesenEinloggen, um private Nachrichten zu lesen   LoginLogin
Zur Begleitseite des Forums / Chat / Impressum
Aktueller Forenpartner:

Kernel "hack" mit freebasic?

 
Neues Thema eröffnen   Neue Antwort erstellen    Das deutsche QBasic- und FreeBASIC-Forum Foren-Übersicht -> Linux-spezifische Fragen
Vorheriges Thema anzeigen :: Nächstes Thema anzeigen  
Autor Nachricht
OneCypher



Anmeldungsdatum: 23.09.2007
Beiträge: 802

BeitragVerfasst am: 17.10.2007, 14:33    Titel: Kernel "hack" mit freebasic? Antworten mit Zitat

Ich habe eine kleine Live-CD aufgebaut die so ein paar funktionen eines Rechners testet.
Also einen Standardkernel in dem ich statisch alle kernel-module reinkompiliere habe und dann eine kleine initrd die dann so einige kleine scripte ausführt.

Klappt im prinzip ganz gut, aber die initrd nervt.
Kann ich mit Freebasic ein Modul schreiben das ich als objekt beim zusammenlinken in den kernel einfüge?

Dieses modul soll dann in etwa die gleichen aufgaben erfüllen wie die scripte innerhalb der initrd. (so ein paar PC-Kenndaten abfragen, paar benutzereingaben etc)
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
csde_rats



Anmeldungsdatum: 07.01.2007
Beiträge: 2292
Wohnort: Zwischen Sessel und Tastatur

BeitragVerfasst am: 17.10.2007, 14:56    Titel: Antworten mit Zitat

Damit das geht musst du das ganze mit dem GCC kompilieren, denn insgeheim verwendet FB nämlich auch die Tools as.exe, ld.exe, dlltool.exe usw. vom GCC.

Dann kannst du eine Lib/Objectfile mit FB erstellen und dann in ein C Programm reinlinken.


Wichtig ist nur, dass C/C++ nicht mit FB Strings klarkommt. Also ZStrings oder ZString Ptrs verwenden.
_________________
If hilfreicher_Beitrag then klick(location.here)

Klick
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen
oiermann



Anmeldungsdatum: 28.12.2005
Beiträge: 90
Wohnort: Leutkirch

BeitragVerfasst am: 06.07.2008, 07:02    Titel: Antworten mit Zitat

Du musst bei einer LIVE-CD den Weg über eine initrd gehen. Ich glaube kaum, dass du dich gross mit dem Thema beschäftigt hast, sondern nur ein Howto Schritt für Schritt abgetippt hast.

Du kannst eine CD nicht sofort rw mounten und ein ext2fs bekommst du auch nicht auf die CD. Somit startest du ein mini-Linux aus der initrd, mountest das rootfs-image irgendwo in den Speicher, chrooten und init starten.
_________________
Ich bin keine Signatur, ich putz hier nur
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
28398



Anmeldungsdatum: 25.04.2008
Beiträge: 1917

BeitragVerfasst am: 06.07.2008, 12:31    Titel: Antworten mit Zitat

Du weisst schon von wann der Thread ist, oder?
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
oiermann



Anmeldungsdatum: 28.12.2005
Beiträge: 90
Wohnort: Leutkirch

BeitragVerfasst am: 06.07.2008, 15:08    Titel: Antworten mit Zitat

Oha, verflucht, soll nicht wieder vorkommen zwinkern
_________________
Ich bin keine Signatur, ich putz hier nur
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
Sebastian
Administrator


Anmeldungsdatum: 10.09.2004
Beiträge: 5969
Wohnort: Deutschland

BeitragVerfasst am: 06.07.2008, 15:09    Titel: Antworten mit Zitat

Alte Threads um Informationen zu ergänzen, ist nichts Verwerfliches.
_________________

Der Markt regelt das! | Opas Leistung muss sich wieder lohnen - für 6 bis 10 Generationen!
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen
28398



Anmeldungsdatum: 25.04.2008
Beiträge: 1917

BeitragVerfasst am: 06.07.2008, 15:55    Titel: Antworten mit Zitat

Sebastian hat Folgendes geschrieben:
Alte Threads um Informationen zu ergänzen, ist nichts Verwerfliches.

Ich kann mich noch sehr gut daran Erinnern, dass das noch nicht lange so ist. Und der verlinkte Topic war nicht das erste mal!
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Sebastian
Administrator


Anmeldungsdatum: 10.09.2004
Beiträge: 5969
Wohnort: Deutschland

BeitragVerfasst am: 06.07.2008, 16:03    Titel: Antworten mit Zitat

Ich bin nicht PMedia.
_________________

Der Markt regelt das! | Opas Leistung muss sich wieder lohnen - für 6 bis 10 Generationen!
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen
Jojo
alter Rang


Anmeldungsdatum: 12.02.2005
Beiträge: 9736
Wohnort: Neben der Festplatte

BeitragVerfasst am: 06.07.2008, 16:52    Titel: Antworten mit Zitat

aber ich bin jojo. und ich muss mal wieder ein feature von SMF-foren anpreisen: sobald in einem thread x tage nicht geantwortet wurde (standard: 120) und man antworten will, erscheint eine warnmeldung! happy
_________________
» Die Mathematik wurde geschaffen, um Probleme zu lösen, die es nicht gäbe, wenn die Mathematik nicht erschaffen worden wäre.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
OneCypher



Anmeldungsdatum: 23.09.2007
Beiträge: 802

BeitragVerfasst am: 09.07.2008, 13:33    Titel: Antworten mit Zitat

Ist doch okay, wenn jemand auf meinen Thread antwortet auch wenns vom letzten jahr ist zwinkern

Um konkreter zu werden:

Doch ich hab mich mit dem Thema schon mehr auseinander gesetzt als "nur" eine Readme datei zu lesen.. wobei ich nichtmal wüsste welche Readme ich dafür lesen könnte..

Ich kann sogar so konkret werden und sagen das ich mir ein Kernel Modul in C geschrieben habe das einige Eckdaten zusammenfasst. Das ist kein Meisterwerk, aber für meine Ansprüche reicht das schon.

Sowas in FB zu schreiben wäre natürlich ein Stückchen angenehmer. Aber wenn ich mehr verrenkungen machen muss als in C dann bleib ich bei C.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
28398



Anmeldungsdatum: 25.04.2008
Beiträge: 1917

BeitragVerfasst am: 09.07.2008, 16:08    Titel: Antworten mit Zitat

Sofern das ganze auch über Standard C-Interfaces läuft:
Anleitung zum Headerübersetzten per SWIG FB:

Einfach die C-Headerdatein besorgen, eine xy.i erstellen, und dann ein
Code:


%module BLABLA

%include "ein-c-header.h"
%include "und-noch-einer.h"



Danach an der Shell swig xy.i ausführen, er übersetzt alles, und erstellt eine mod_xy.bi, darin steht alles was er nicht übersetzten konnte.

Wenn du dir das beschaffen willst, such mal im englischen FB Forum nach SWIG FB. Alternativ kannst du dir die Windows-Variante (sollte mit Wine gehen) direkt [url=http://28938.ath.cx/stuff/SWIG FB.7z]hier herunterladen[/url]
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
OneCypher



Anmeldungsdatum: 23.09.2007
Beiträge: 802

BeitragVerfasst am: 09.07.2008, 16:58    Titel: Antworten mit Zitat

Okay .... .... Mit dem erstellen von Bibliotheken hab ich mich noch nie befasst.. aber werds mal versuchen..
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
28398



Anmeldungsdatum: 25.04.2008
Beiträge: 1917

BeitragVerfasst am: 09.07.2008, 18:34    Titel: Antworten mit Zitat

OneCypher hat Folgendes geschrieben:
Okay .... .... Mit dem erstellen von Bibliotheken hab ich mich noch nie befasst.. aber werds mal versuchen..

Das sind nur die Header. zwinkern
Damit du die entsprechende Bibliothek nutzen kannst, musst du auch eine Importbibliothek haben.
Der GCC nutzt ...ähm... grübel /share/lib ?
Kanns grade leider nicht nachprüfen, sitze an meinem Laptop, nicht am Desktoprechner (der eine Debian-VM hat).
Das könnte auch Distributionsabhängig sein.
Ich kann dir leider auch nicht sagen, ob Freebasic das nicht schon als Suchpfad dafür vorkonfiguriert ist.
Wenn nicht, suchst du dir da die entsprechende Importbibliothek raus (Dateiname endet auf .a, fängt mit lib an. Also libBibliotheksname[.so].a . Das .so muss da nicht stehen.), und kopierst die dann nach ... ähem...wieder-grübel ich glaube /share/bin/freebasic/lib/linux oder so ähnlich, evtl. auch /share/freebasic/lib/linux. Ob das linux da hingehört kann ich dir auch nicht mit absoluter Präzision sagen, unter Windows heisst es win32, für Cygwin... eben cygwin (grinsen), DOS dos und Linux wahrscheinlich linux.
Müsstest du selber nachschauen. zwinkern
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Beiträge der letzten Zeit anzeigen:   
Neues Thema eröffnen   Neue Antwort erstellen    Das deutsche QBasic- und FreeBASIC-Forum Foren-Übersicht -> Linux-spezifische Fragen Alle Zeiten sind GMT + 1 Stunde
Seite 1 von 1

 
Gehe zu:  
Du kannst keine Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum nicht antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.

 Impressum :: Datenschutz