Zum Inhalt springen

Empfohlene Beiträge

Geschrieben

Hallöle .. hab hier zwar schon etwas rumgesucht, sowie im Netz, aber kannzu dieser Thematik leider nicht wirklich was finden ...

Ichhabe mal vor ein paar Jahren einen Beitrag in einer Reportage gesehen, in dem ein Programm benutzt wurde, welche die aktuele Speicher Belegung grafisch dargestellt hat ... Dies habe ich vor nachzubaun.

Dazu benötige ich jedoch Zugriff auf den Stack und den Arbeitsspeicher.

Folglich muss ich die Adresse, und deren Belegung mit daten auslesen können.

APIs gibts da leider (meises Wissens nach) nicht. oder doch?

-Notwendig wäre-

* Gesammtgrösse des Speichers auslesen (kein problem)

* Lese-Zugriff auf den gesammten Speicher

* Lese-Funktion oder ähnliches, um auslesen zu können, in wie weit dieser Adressblock belegt ist

Kennt da jemand eine möglichkeit dies einfach umsetzen zu können? Idealerweise wäre mir da eine kleine Dll von nützen, die man lutschen könnte, oder mal eben selbst bastelt, und einbinden kann. Sogesehen würden mir APIs oder ähnliche Routinen nützen.

Greez

TPM

Geschrieben
Dazu benötige ich jedoch Zugriff auf den Stack und den Arbeitsspeicher.
Falls du nicht gerade von MS-DOS redest: gibt es nicht nur einen, sondern jede Menge Stacks.

Folglich muss ich die Adresse, und deren Belegung mit daten auslesen können.
Es gibt auch - zumindest bei Betriebssystemen, die virtuellen Speicher anbieten - nicht die Adresse.

APIs gibts da leider (meises Wissens nach) nicht. oder doch?
Kommt drauf an, für welches Betriebssystem das sein soll.

* Lese-Zugriff auf den gesammten Speicher
Das kannst du vergessen, zumindest bei aktuellen Desktopbetriebssystemen.

* Lese-Funktion oder ähnliches, um auslesen zu können, in wie weit dieser Adressblock belegt ist
Ohne dir zu nahe treten zu wollen: Ich glaube, deine Vorstellungen vom Speichermanagement basieren noch auf DOS ;)

Kennt da jemand eine möglichkeit dies einfach umsetzen zu können?
Einfach wird das sicher nicht.

Idealerweise wäre mir da eine kleine Dll von nützen, die man lutschen könnte,
Der Begriff "lutschen" ist mir im Zusammenhang mit DLLs noch nicht begegnet. Was bedeutet das?
Geschrieben
Falls du nicht gerade von MS-DOS redest: gibt es nicht nur einen, sondern jede Menge Stacks.
oha .. jo .. Sry. Von Win98Se is da momentan die rede *g* .. hätte ich auch im ersten hinreiben können .. :hells:

Es gibt auch - zumindest bei Betriebssystemen, die virtuellen Speicher anbieten - nicht die Adresse.
Wird von mir auch nicht benötigt .. Mir reichen CPU interner Stack und Hauptarbeitsspeicher .. wobei das mit der CPU wohl ehr nicht umsetzbar wird *g*

Kommt drauf an, für welches Betriebssystem das sein soll.
auch Win98Se :D

Das kannst du vergessen, zumindest bei aktuellen Desktopbetriebssystemen.
Denk ich mir auch irgend wie .. aber .. vieleich kann man da was mit ASM regeln?!?!

Ohne dir zu nahe treten zu wollen: Ich glaube, deine Vorstellungen vom Speichermanagement basieren noch auf DOS ;)
.. he he .. naja.. das wohl er nicht .. aber .. das Managmentsys unter 98 is da ja etwas .. hmm .. sagen wir mal .. "offener" :floet:

Einfach wird das sicher nicht.
.. Bin ganz deiner Meinung .. Voll und ganz :) .. aber . ich lebe nach dem Motto: Nichts Ist unmöglich, sonst wär das Unmögliche auch nicht Möglich :cool:

Der Begriff "lutschen" ist mir im Zusammenhang mit DLLs noch nicht begegnet. Was bedeutet das?
naja.. Lutschen/Sauger/Ziehen/Downloaden/... ;)

Greez

TPM

Geschrieben
Ich weiß nicht, was du mit "CPU interner Stack" meinst. Threads haben Stacks, nicht die CPU.

Weißt du, was virtueller Speicher ist?

:D .. naja.. ganz unerfahren bin ich ja nicht (Code seit mehr als 15J unter Win98Se) ... klar weis ich was des is .. aber, ich brauch das nicht :) .. Platendaten sind für mein Vorhaben irrelevant .. CPU Stack .. naja.. die CPU legt bei seinen Berechnungsaufgaben ja auch Daten in seinen Internen Cache ab .. und diesen wolt ich auslesen, abe, ich glaub, das is nicht wirklich rentabel, und umsetzbar :D .. Mir reicht es einfach, wenn ich herausfinden kann, in wie weit und wo Daten im Arbeitsspeicher liegen.

Ein Beispiel:

Adresse    | Daten           | Anwendung

0000..000F | ABCDEFGHIJKLMNO | -App1-

0010..001F | PQRS        123 | -Treiber2-

0020..002F |                 | -Unbenutzt-

0030..003F |    TUVWXYZ 123  | -App2-

...

In diesem Fall sind bereiche zwischen 0020 und 002F unbenutzt .. und, diesen unterschied möchte ich gerne auslesen, sowie die belegung der Daten .. wobei das nebensächlich ist ... wenns dennoch möcglich ist, dann möchte ich die Daten auslesen, um diesen zusammengerechnet als umgerechneten Farbwert (von grün über gelb nach rot) darstellen zu können ...

Dann fang mal bei CreateToolhelp32Snapshot an zu lesen.
das bringt mir nix, das macht nur n Snapshoot von den Anwendungen, deren PID und sonstige daten, sowie deren Treads und ThreadIDs, aber nicht den Wirklich belegten Arbeitsspeicher .. auserdem ist die Funktion lahm wie "sau" .. sollte schon etwas schneller sein .. so alle 0,001-0,01 MIPS

Wie gesagt, ... ich hab das mal vor jahren gesehen, und suche seitdem schon nach einer möglichkeit dies umsetzen zu können .. Klar ist das bei Linux einfacher, als bei Windoof, aber .. >MOTTO< :D :D .. und .. ich kann mir bei gott nicht helfen, aber unter 98 kann das doch wirklich nicht so wild sein .. (ironie) ... oder .. sagen wir mal, nicht unmöglich .. wie unter NT oder XP

Greez

TPM

Geschrieben
klar weis ich was des is .. aber, ich brauch das nicht :)
Doch, das brauchst du.

.. CPU Stack .. naja.. die CPU legt bei seinen Berechnungsaufgaben ja auch Daten in seinen Internen Cache ab .. und diesen wolt ich auslesen,
Ich glaube, du weißt nicht genau, wovon du redest. Anscheinend wirfst du die Begriffe Cache, Stack und Register wild durcheinander.

das bringt mir nix, das macht nur n Snapshoot von den Anwendungen, deren PID und sonstige daten, sowie deren Treads und ThreadIDs, aber nicht den Wirklich belegten Arbeitsspeicher
Diese Funktion liefert die auch die Heaps der Prozesse, das ist der belegte virtuelle Speicher.

auserdem ist die Funktion lahm wie "sau" .. sollte schon etwas schneller sein .. so alle 0,001-0,01 MIPS
Es steht dir frei, etwas schnelleres zu schreiben. Aber dazu müsstest du dich ziemlich tief in die interne Funktionsweise von Windows einarbeiten.

Klar ist das bei Linux einfacher, als bei Windoof,
Wenn du Ernst genommen werden möchtest, lässt du bitte solche Kindereien.

ich kann mir bei gott nicht helfen, aber unter 98 kann das doch wirklich nicht so wild sein .. (ironie)
Es ist richtig, dass der Speicherschutz unter 9x/ME nicht so streng ist wie bei NT/2000/XP. Das bedeutet aber nicht, dass es dort spezielle APIs gibt, die diese Schwächen ausnutzen.

Mein persönlicher Eindruck: Wenn du schon seit 15 Jahren "codest", dann hast du damit angefangen, bevor du lesen konntest. Mal ganz abgesehen davon, dass 15 Jahre eine stolze Leistung sind, für ein Betriebssystem, das noch keine 7 Jahre alt ist.

Geschrieben
Doch, das brauchst du.
und warum? .. der Virtuelle Arbeitsspeicher ist dochnur eine erweiterung des Normalen Arbeitsspeichern, um Daten, auslagern zu können, wenn der Hauptspeicher des Systems voll ist?!? .. oder irr ich mich da grad?

Ich glaube, du weißt nicht genau, wovon du redest. Anscheinend wirfst du die Begriffe Cache, Stack und Register wild durcheinander.
jaa .. Wortwahl war noch nie meine stärke .. daher auch meine Signatur ...

Diese Funktion liefert die auch die Heaps der Prozesse, das ist der belegte virtuelle Speicher.
wie gesagt... VAS brauch ich eigentlich nicht, da (wenn dem so ist/wär) dieser Nur weitere Daten auslagert, .. und, wenn dem so ist, dann brauch auch das nicht, da ich nur das RAM ansich auslesen möchte ...

Es steht dir frei, etwas schnelleres zu schreiben. Aber dazu müsstest du dich ziemlich tief in die interne Funktionsweise von Windows einarbeiten.
hatte ich nicht unbedingt vor, aber wenn es nicht anders geht, und ich nur die möglichkeit habe, alle 5 bis 10Sek den gesammten Ram zu analysieren, dann scheint es mir so als wenn ich keine andere wahl hätte ...

Wenn du Ernst genommen werden möchtest, lässt du bitte solche Kindereien.
sollte nicht als "kinderrei" verstanden werden sondern als Kritik an das MS Unternehmen ... Persönlich Finde ich Windows sehr kompfortabel, und einsatzfähig bzw. leistungsfehig, wenn man es den richtig "handhabt"

Es ist richtig, dass der Speicherschutz unter 9x/ME nicht so streng ist wie bei NT/2000/XP. Das bedeutet aber nicht, dass es dort spezielle APIs gibt, die diese Schwächen ausnutzen.
soll das heisen, das es unter NT/XP Apis gibt, die das können?

Mein persönlicher Eindruck: Wenn du schon seit 15 Jahren "codest", dann hast du damit angefangen, bevor du lesen konntest. Mal ganz abgesehen davon, dass 15 Jahre eine stolze Leistung sind, für ein Betriebssystem, das noch keine 7 Jahre alt ist.
naja.. nicht nur unter Win98Se .. sollte allgemein gelten .. Amiga, DOS, Win95, Win98, PIC, AVR, AMD, ...

aber, wenn ich dich schon mal an der "angel" hab .. könntest du dir fix mal mein kleinen Problem bezüglich CName in DNS ansehen, .. vieleicht hast du da einen lösungsansatz für mich ..

Geschrieben
und warum? .. der Virtuelle Arbeitsspeicher ist dochnur eine erweiterung des Normalen Arbeitsspeichern, um Daten, auslagern zu können, wenn der Hauptspeicher des Systems voll ist?!? .. oder irr ich mich da grad?
Ja, da irrst du dich. Du beschreibst - mehr oder weniger - die Auslagerungsdatei. Ich rede hiervon:

http://de.wikipedia.org/wiki/Virtueller_Speicher

da ich nur das RAM ansich auslesen möchte ...
Das ist das grundsätzliche Problem. Bei Betriebssystemen, die virtuellen Speicher anbieten - und Windows 98 gehört dazu -, haben die Adressen, die in den Prozessen benutzt werden, nichts mit physischen Speicheradressen zu tun. Du kannst einem Zeiger nicht ansehen, ob er gerade irgendwo ins physische RAM, eine gemappte Datei oder die Auslagerungsdatei verweist.

soll das heisen, das es unter NT/XP Apis gibt, die das können?
Nein, unter NT/2000/XP hast du gar keine Möglichkeit, "unter" die Schicht des virtuellen Speichers zu kommen, ohne einen Treiber zu schreiben. 9x/ME hat da noch Lücken, weil es letztendlich immer noch auf MS-DOS basiert.
Geschrieben
Ja, da irrst du dich. Du beschreibst - mehr oder weniger - die Auslagerungsdatei. Ich rede hiervon:

http://de.wikipedia.org/wiki/Virtueller_Speicher

Jo .. hatte die Auslagerungsdatei gemeint .. aber .. das bestärkt nur meine Meinung darüber, das ich dies nicht benötige.

Das ist das grundsätzliche Problem. Bei Betriebssystemen, die virtuellen Speicher anbieten - und Windows 98 gehört dazu -, haben die Adressen, die in den Prozessen benutzt werden, nichts mit physischen Speicheradressen zu tun. Du kannst einem Zeiger nicht ansehen, ob er gerade irgendwo ins physische RAM, eine gemappte Datei oder die Auslagerungsdatei verweist.
Genau .. und das ist das, was ich ja gesagt habe .. Mir bringt es einfach nix, wenn ich die Pointer habe, .. Ich möchte ja wissen, welche Adressbereiche des >Hardware< RAMs belegt, bzw. frei sind .. welche application irgend was verwendet, oder nicht, is mir im grunde total egal ...

Man könnte auch sagen, das ich einen Reale Fotografie der belegung des RAMs machen möchte .. also .. wo daten liegen, und wo keine Daten liegen ..

Die interpretation von Daten, und NIcht Daten kann ich ja Softwaretechnisch .. einfach mal als "0000..." festlegen ..

Mir geht es um die Reale Belegung des Rams ..

Unter umständen kann es hilfreich sein, mit der VirtuellenSpeicherVerwaltung zusammen zu arbeiten, um herauszufinden, welche bereiche vom OS benutzt werden ... Aber .. wo die daten dann ansich liegen (welche RAM Bereiche), wird man vom VSM wohl nicht erfahren ... Daher suche ich nach einer anderen Möglichkeit, um diese Informationen zu erhalten.

Und das ist ja meine Eigentliche Frage .. "Ob jemand eine Möglichkeit kennt, solche Infos zu erhalten?!?"

Greez

TPM

Geschrieben
Man könnte auch sagen, das ich einen Reale Fotografie der belegung des RAMs machen möchte .. also .. wo daten liegen, und wo keine Daten liegen ..
Mir erschließt sich der Sinn zwar nicht, aber was soll's.

Die interpretation von Daten, und NIcht Daten kann ich ja Softwaretechnisch .. einfach mal als "0000..." festlegen ..
Das ist ebenso willkürlich wie falsch. Du kannst nicht am Speicherinhalt erkennen, was belegt ist.

Und das ist ja meine Eigentliche Frage .. "Ob jemand eine Möglichkeit kennt, solche Infos zu erhalten?!?"
Die MemoryManagement-API gilt, soweit ich weiß, nur für NT/2000/XP. Du könntest mal im Windows 98 DDK nachsehen - wenn du das noch bekommst. Offiziell wird es von MS nicht mehr supportet, und in der MSDN Subscription ist es auch nicht mehr drin.
Geschrieben
Mir erschließt sich der Sinn zwar nicht, aber was soll's.
Muss ja nicht :D:P

Das ist ebenso willkürlich wie falsch. Du kannst nicht am Speicherinhalt erkennen, was belegt ist.
schon klar .. wie gesagt, das kann man softwaretechnisch definieren .. aber .. primär sollten ja erstma informationen verfügbar sein .. was man damit macht, is ne andere frage ..

Die MemoryManagement-API gilt, soweit ich weiß, nur für NT/2000/XP. Du könntest mal im Windows 98 DDK nachsehen - wenn du das noch bekommst. Offiziell wird es von MS nicht mehr supportet, und in der MSDN Subscription ist es auch nicht mehr drin.
MSDN hab ich noch eine ältere version da .. da dürfte sowas hoffentlich drin sein ..

Meinst, das des mit dem MM-API machbar sein könnte?!? ... Hast eventuell n Ansatzpunkt für mich?

Greez

TPM

Geschrieben
MSDN hab ich noch eine ältere version da .. da dürfte sowas hoffentlich drin sein ..

Meinst, das des mit dem MM-API machbar sein könnte?!? ... Hast eventuell n Ansatzpunkt für mich?

Die MM-API des DDK ist anscheinend nicht (mehr) in der Online-MSDN-Library. Ich habe sie hier in der Oktober '05-Version unter

Win32 and Com Development

-Windows Driver Kit

--General Driver Development Information

---General Driver Architecture

----Kernel-Mode Driver Architecture

-----Design Guide

------Memory Management

Aber ob das unter 98 so noch alles zutrifft, wage ich zu bezweifeln. Versuch, an das 98-DDK heranzukommen, und schau dort in die Doku oder die Samples.

Geschrieben

http://msdn.microsoft.com/library/default.asp?url=/library/en-us/memory/base/memory_management_functions.asp

Hab ich grad so mal gefunden .. aber .. so recht scheint es da nichts passendes zu geben .. das einzigste, was da mit Physikalischem Speicher zu tun hat, sind die beiden Status Funktionen "GlobalMemoryStatus" und "GlobalMemoryStatusEx" .. wobei ich da nur die Grössenverhältnisse auslesen kann.

hmmm .. ma schaun, was du mir da geschickt hast .. vieleicht hab ich das ja hier drin...

Greez

TPM

Geschrieben

Jo .. so sehe ich das auch :)

Aber .. zu deinem Beispiel .. hab das Online auch gefunden:

http://msdn.microsoft.com/library/default.asp?url=/library/en-us/Kernel_d/hh/Kernel_d/MemMgmt_87e38f4e-3fa1-453b-9c04-d8cbcecd1869.xml.asp

Wenn des das is, was du gemeint hast ..

Scheint mir SEHR SEHR Tief ins Treibermodell zu gehen .. hmm .. naja.. Wär mein erster Treiber, den ich da so schreiben würde, und .. ausgerechnet das ding muss auch noch im höchsten Level arbeiten ... das macht das ganze nicht unbedingt leichter :/

Greez

TPM

Geschrieben

Ja, das meinte ich. Offenbar hat sich nur die Struktur geändert.

Wenn des das is, was du gemeint hast ..
Das meinte ich.

Und wie gesagt, es ist durchaus möglich, dass das alles für Windows 98 nicht zutrifft.

Geschrieben
Ja, das meinte ich. Offenbar hat sich nur die Struktur geändert.
... nö .. eigentlich nicht .. hab mich da genau an deine Reihenfolge gehalten :)

Hier gestartet: http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dnanchor/html/anch_win32com.asp

Und wie gesagt, es ist durchaus möglich, dass das alles für Windows 98 nicht zutrifft.
In wie fern? .. Treibermodell-technisch? .. oder wie meinen?

Greez

TPM

Geschrieben

Hab noch n bissi rumgestöbert, und bin da auf

http://msdn.microsoft.com/library/en-us/Kernel_d/hh/Kernel_d/IputOput_c6e8f2ab-7282-4282-b149-63300a7d97d4.xml.asp

gestossen .. das ist meines erachtens die am nähesten erscheinende Methode, um den Speicher physikalisch auslesen zu können .. jedoch reicht selbst hier der Access nicht aus, um vollen zugriff bzw. leserechte auf den gesammten Speicher zu erhalten ..

Mir scheint nur noch der Weg über die Hardware möglich zu sein .. eine Karte die eventuell eingebaut Daten in ein seperates RAM speichert, welches ich dann auslesen könnte ..

Wobei ich mir auch nicht sicher bin, ob man von der Hardwareseite aus soweit zugriff auf die RAMs erhalten kann .. da schätz ich mal, das die zugriffsrechte noch eingeschränkter sind, als im Treibermodell unter Level "High" ..

Ich komm da irgend wie so langsam zur überzeugung, das es ohne einen Eigenen Kernel zu schreiben nicht möglich zu sein scheint.

Greez

TPM

Geschrieben

@Klotzkopp

[232852] <@arty> MmGetPhysicalMemoryRanges will tell you where they are

[232856] <@arty> then you need to query them

[232918] <ThePuppetMaster> hmmmm

[232925] <ThePuppetMaster> thats a API?

[232929] <@arty> MmGetVirtualForPhysical will translate it

[232931] <@kjk_hyperion> kernel mode API

[232942] <ThePuppetMaster> hmmm

[232949] <@arty> and NtQueryVirtualMemory will tell you what that page is for

Hab ich ma so erhaschen können .. muss ich ma schaun, ob man damit was anfangen kann ..

Du kennst nicht zufällig die Funktionen? und kannst mir dahingehend helfen? .. denn , in der Standard MSDN find ich zu diesen Funktionen eigentlich 0 ... :(

Greez

TPM

Geschrieben

Zu MmGetPhysicalMemoryRanges und MmGetVirtualForPhysical sagt meine MSDN Library:

The following routines are reserved for system use. Do not use them in your driver.

Die Nt-Funktionen gehören zur Native-API. Die gibt es mit Sicherheit nicht für Windows 98.

denn , in der Standard MSDN find ich zu diesen Funktionen eigentlich 0 ... :(
Hast du dich mal um das Windows 98 DDK bemüht?

Ansonsten ist das IMHO nur Stochern im Nebel.

Geschrieben
Hast du dich mal um das Windows 98 DDK bemüht?
jo klar .. die hab ich da .. aber.. um erlich zu sein, da steht noch weniger darüber drin, als in der MSDN .. zumindest in der version, die ich hier hab ...

Ansonsten ist das IMHO nur Stochern im Nebel.
naja.. anders werd ich da wohl nicht ran kommen .. Für mich sieht das eh nach einer Nadel im Heuhaufen aus ..

Einfach wird das mit sicherheit nicht .. aber .. Nichts is unmöglich *g*

PS: Das DNS zeugs hab ich ja vorhin auch gepackt :D

was mich aber wundert:

The following routines are reserved for system use. Do not use them in your driver.

^^ Das das bei dir drin steht ... Denn .. soweit ich das von den Ros Entwicklern gehört habe, sollen gerade die Funktionen für nur aus Treibern raus verfügbar sein.

Greez

TPM

Geschrieben
jo klar .. die hab ich da .. aber.. um erlich zu sein, da steht noch weniger darüber drin, als in der MSDN .. zumindest in der version, die ich hier hab ...
Was ist mit den Samples? Ist da nichts dabei?

^^ Das das bei dir drin steht ...

Das steht auch in der Online-MSDN Library, in der Übersicht der Mm-Funktionen.

Denn .. soweit ich das von den Ros Entwicklern gehört habe, sollen gerade die Funktionen für nur aus Treibern raus verfügbar sein.
Die Mm-Funktionen sind grundsätzlich für Treiber gedacht. Es sind ja nur ein paar ausgenommen.

Reden die möglicherweise von ihrem eigenen OS, und nicht von Windows?

Geschrieben
Was ist mit den Samples? Ist da nichts dabei?
also .. bis jetz hab ich noch nichts gefunden .. nichtmal annähern ... Physikalischer speicher scheint da nicht so wirklich supported zu werden ...

Das steht auch in der Online-MSDN Library, in der Übersicht der Mm-Funktionen.
gesehen .. THX :D

Reden die möglicherweise von ihrem eigenen OS, und nicht von Windows?
Ne .. hab denen eigentlich schon gesagt, das ich das mit Win98 machen möchte .. und Sie haben gemeint, das Win98 da schon idealer für is, und nicht so viele Blockaden bietet, wie unter anderen Systemen ..

Naja..

ROS is ja im Grunde n Clone .. von daher sollten die Funktionen schon gleich sein .. und da die das nachbaun, ging ich mal davon aus, das die davon auch n guten Plan haben ..

Was ich mich grade frage ... Ich hab ma mit DependencyWalker in die Kernel32.dll geschaut, und die funktionen garnicht gefunden .. eigentlich kaum eine von den aufgelisteten .. Wie bzw wo soll ich die denn dann aufrufen können? ..

Hab in der "MMUTILSE.DLL" zwar n paar funktionen gefunden, aber so wirklich scheinen mir die nicht zu gebrauchen zu sein ...

?RegisterMemUserGlb@CMemManager@@SAHPAVCMemUser@@@Z

Sieht mir doch sehr komisch aus ...

Greez

TPM

Geschrieben

hmmmmmm :/

also .. nach einer suche hab ich nix davon gefunden ..

Hab nach "*NTOS*" gesucht, und da kam 0

Desweiteren nach "*NT*.exe" und da war im grunde nix bei, das irgend wie so klingt

Das einzigste was ich annähern hab is "NTDLL.DLL" aber die hat solche funktionen nicht drin.

Greez

TPM

Dein Kommentar

Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung wiederherstellen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...