VHPD Smart Shutdown Manager 2 in entwicklung
Der Bekannte Smart Shutdown Manager bekommt einen Nachfolger
Viele Mails habe ich erhalten, die auf die Inkompatibilität meines Smart Shutdown Manager 1.4 mit Windows 7 hingewiesen haben. Damit nun Windows 7 und auch einige Linux Distributionen unterstützt werden, wird nun Java als Programmiersprache des Smart Shutdown Manager 2 verwendet.
Geplante Features im VHPD Smart Shutdown Manager 2:
- Windows 7 Kompatibilität
- Terminplanung für das regelmäßige Herunterfahren
- Einfachere und Übersichtlichere Oberfläche
- Mehrsprachig
- Ressourcen schonend und stabiler
Bis zur Veröffentlichung wird es noch ein bisschen Zeit in Anspruch nehmen.
Adistice – Das Schnäppchenjäger Shop Prinzip
Adistice - Erklicken Sie Ihre Schnäppchen
Das weltweit einzigartige Shop Prinzip, beidem Sie sich mit der kostenlosen Mitgliedschaft Ihr Schnäppchen erklicken können. Sobald die notwendige Anzahl an Klicks erreicht wurde, kann der Nutzer mit dem letzten Klick das Produkt erwerben.
Pro Stunde haben Sie einen kostenlosen Klick zur Verfügung und können diesen für Ihr Wunschprodukt verwenden. Sie können sich zusätzlich weitere Klicks verdienen, indem Sie anderen von der Webseite berichten und diese die Webseite besuchen.
Wie funktioniert das Prinzip?
Durch die Anzahl der Klicks wird das Produkt durch die Werbeeinnahme subventioniert und kann daher so günstig an Sie weitergegeben werden. Auch der kostenlose Versand ist ein wichtiger Punkt, beidem keine zusätzlichen Kosten dem Käufer entstehen.
Soziales Engagement
Adistice unterstützt darüber hinaus auch viele verschiedene Hilfsprojekte um die Welt ein bisschen besser zu machen. Auf der Webseite kann man sich informieren, welche Hilfsprojekte unterstützt werden.
Besuchen Sie jetzt Adistice und erklicken Sie sich ihr Schnäppchen! Umso mehr Teilnehmen, desto schneller können Sie es bekommen, also schnell weitersagen.
Bitte beachten Sie, dass erst ab Montag, den 2. Mai die Plattform gestartet wird.
Tutorial: Grub2 Bootreihenfolge Ändern – Ubuntu 10.10
Tutorial: Grub2 Bootreihenfolge Ändern - Ubuntu 10.10
Der neue Bootloader Grub2 hat viele neue Funktionen und es werden auch nun endlich nicht mehr alle Einträge geändert, sobald man es Updatet. Jedoch gibt es jetzt nicht mehr die bekannte "/boot/grub/menu.lst", die alle Systemeinträge beinhaltet.
Seit Ubuntu 9.04 wird der Grub2 Bootloader verwendet und um jetzt die Bootreihenfolge den eigenen Wünschen anzupassen, muss man folgendes machen:
Zuerst muss man mit dem Dateibrowser Nautilus eine kleine Änderung durchführen. Dies ist aber nur mittels den Administrationsrechten möglich. Einfach in der Konsole (Anwendungen -> Zubehör -> Terminal) folgende Zeile eintippen.
sudo nautilus /etc/grub.d
In dem geöffnetem Fenster sehen Sie nun alle Einträge, die Ubuntu bei der Installation automatisch erstellt hat.
Die Datei 00_header beinhaltet die Headerinformationen des Grub2 Bootloaders und die Datei 05_debian_theme sorgt für das Ubuntu Design. Die Einträge 10 bis 40 sind die einzelnen Betriebssysteme, die am Anfang zur Auswahl stehen.
- 10 Linux
- 20 Memory-Test
- 30 Windows
- 40 Benutzerdefiniert
Wenn man nun Windows als 1. Eintrag haben will, damit dieses immer automatisch gestartet wird, so muss man die Datei "30_os-prober" umbenennen in "09_os-prober".
Dadurch hat dieser Eintrag die kleinste Nummer und wird vor Linux mit 10 angezeigt.
Es sollte dann so aussehen:
Jetzt muss man dem System nur noch sagen, dass es die Reihenfolge aktualisieren soll. Damit dies nun durchgeführt wird, muss man nur noch eine kleine Zeile im Terminal ausführen:
sudo update-grub
Dieser Befehl aktualisiert die grub.cfg Datei schnell und sicher, sodass es beim nächsten Systemstart keine Probleme auftreten.
Wie man bei dem Bild auch gut erkennen kann, zeigt es auch nun im Terminal alle gefundenen Einträge an, in derselben Reihenfolge, wie sie auch beim Systemstart verwendet werden.
Natürlich gibt es auch die Möglichkeit direkt in der grub.cfg die Einstellungen von Hand zu ergänzen, jedoch ist es dann nicht mehr möglich ein Betriebssystem zu starten, wenn sich ein kleiner Fehler in diese sehr wichtige Konfigurationsdatei einschleicht, daher sollte man unbedingt diese Datei automatisch von dem System generieren lassen.
Die Top 3 Must-Have Plugins für WordPress
Die Top 3 Must-Have WordPress Plugins
Was wäre ein Blog ohne Bilder? Kaum vorzustellen wäre das Internet nur aus Texten. WordPress bietet zwar ein integriertes Bildmanagementsystem, das aber leider nicht sehr viel kann. Hier kommt NextGEN Gallery ins Spiel, mit dieser umfangreichen Erweiterung kann man die Bilder ordentlich verwalten, organisieren und in den Artikel einbinden.
Schon seit Jahren verwenden wir die NextGEN Gallery um die vielen Bilder zu verwalten und sind voll und ganz zufrieden. Die ständige Weiterentwicklung und hohe Stabilität machen dieses Plug-In zum Must-Have Nummer 1.
- Zu der Plugin Seite der NextGEN Gallery ->
2. All in One SEO Pack
Heutzutage spielt SEO eine bedeutende Rolle bei den Webseiten. Denn umso mehr die Webseiten an Suchmaschinen optimiert sind, umso mehr Besucher hat man auf der eigenen Webseite. Das All in One SEO Pack unterstützt den Blogbetreiber bei der SEO-Optimierung und sorgt dafür, dass man schnell in Google und den anderen großen Suchmaschinen gefunden wird. Sodass unsere Informationen auch wirklich an den Leser kommen.
- Zu dem All in One SEO Pack ->
3. Global Translator
Das Internet ist ein Ort der Gemeinschaft, hier ist jeder gleich und man kann alles erreichen. In Millisekunden kann man auf Server in Australien zugreifen, obwohl man mehrere tausend Kilometer entfernt ist. Damit diese Inhalte die wir Blogger verfassen auch alle Menschen lesen können, sollte man den Beitrag eigentlich auf allen Sprachen schreiben, aber leider hat man erstens nicht die Zeit hierfür und vor allem fehlen die Sprachkenntnisse für die Vielzahl an Sprachen die es auf diesem kleinen blauen Planeten gibt.
Der Global Translator ist ein Plug-In, das im Hintergrund die geschriebenen Artikel, Seiten und Kategorien in eine große Anzahl von Sprachen übersetzt und auf dem Server zwischenspeichert. Hierdurch können dann auch Menschen von ganz verschiedenen Teilen des Planeten die Informationen des Blogs lesen. Aber eine wichtige Information hierzu: Die Übersetzung erfolgt durch kostenlose Online Übersetzungsdienste wie Google Translator. Diese Dienste kann man frei wählen und man hat hierbei eine große Bandbreite an Einstellungsmöglichkeiten.
Die Spambots und ihre Taten im Internet
Die Spambots und ihre Taten im Internet
Jeder der im Internet häufig surft stellt fest, dass auf fast allen Seiten unzählige Kommentare sind, die auf irgendwelche Seiten verlinken und thematisch überhaupt nicht passen. Diese falschen Kommentare werden als Spam bezeichnet und kosten unzählige Gigabytes an Traffic jedes Jahr.
Wir funktionieren diese Spambots?
Spambots sind kleine Programme, die auf normalen Computer oder auf Server laufen. Damit man Ihre eigentliche Adresse nicht herausfindet, laufen diese über Weltweit verstreute Proxyservern im Ausland und machen es daher unmöglich herauszufinden, woher sie eigentlich kommen. Diese Spambots fangen auf einer Seite an und gehen dann rekursiv jeden Link nach, den Sie auf den Seiten finden. Da jede Webseite mit irgendeiner anderen Webseite verlinkt ist (das sogenannte Internetprinzip) hört der Kreislauf nie auf.
Sobald er nun Auf einer Webseite ist, die Eingabefelder bereitstellt, werden Diese überprüft, für was sie dienen. Hierbei kommen komplexe Algorithmen ins Spiel, die dann die vorgegebene E-Mail auch in das richtige Feld schreiben. Sollte man sogar ein Erkennungsbild eingebaut haben, so werden in 90% der Fällen dieses Bild auch von den Spambots erkannt und der dargestellte Schlüssel eingegeben.
Eine Spambot-Anwendung kann bis zu 1000 Kommentare in der Minute schreiben.
Wie kann ich mich vor solchen Spambots schützen?
Naja, sich 100% vor diesen Biestern zu schützen wird nur gehen, indem Sie die Kommentar und Kontaktfunktion vollständig verbieten. Die andere Möglichkeit wäre, jeden Kommentar bevor er veröffentlicht wird zu überprüfen, aber auch das ist nicht wirklich eine tolle Beschäftigung. Einige Hersteller bieten auch Tools an, die professionell bekannte IPs von Spambots komplett sperrt und somit kein Schaden angerichtet werden kann.
Welche Folgen haben diese Spambots?
Diese Spambots können einen sehr großen Schaden anrichten, denn meistens verlinken diese Spamkommentare auf illegale Seiten und somit haften Sie als Betreiber für diese Veröffentlichung und Verbreitung dieser illegalen Inhalte. Natürlich können Sie nachweisen, dass Sie diesen Kommentar nicht erstellt haben, aber sobald Sie einen solchen Kommentar entdecken sind Sie verpflichtet ihn unverzüglich von Ihrem Server zu löschen.
Fazit
Gegen Spambots kann man in der Regel nicht viel machen, aber dennoch können diese unerwünschten Programme eine Menge Schaden anrichten. Folglich sollten unsere Gesetzgeber und auch kleine Staaten, die nur aus Proxyservern Bestehen, gegen diese illegalen Tools angehen, damit die Spambetreiber wirklich ein Problem haben und nicht der Eigentümer der Webseite.
qTranslate vollständig entfernen [SQL Skript]
qTranslate vollständig entfernen
Wenn man das WordPress Plug-In qTranslate entfernt, hat man danach einige Probleme mit der Datenbank. Denn die Datenbank wird nach dem deinstallieren des Plug-Ins nicht gesäubert.
Das Problem ist nun, dass alle mehrsprachigen Inhalte auf einmal in dem Post angezeigt werden. Die mehrsprachige Trennung erfolgt durch den Kommentar-tag: "<!--:en-->" ... "<!--:-->" alles zwischen den Tag wurde nur in der englischen Ansicht angezeigt. Für en können sie folgende Inhalte einsetzten:
- de = deutsch
- it = italienisch
- fr = französisch
- es = spanisch
- usw.
Damit sie erfolgreich die Datenbank aktualisieren können, empfehle ich Ihnen ein Backup von den Tabellen "wp_posts" und "wp_terms" Ihrer Datenbank zu erstellen. Am besten mit dem phpMyAdmin in dem Reiter "Exportieren".
Sobald Sie ihr Backup erstellt haben, können Sie folgenden SQL-Befehl durchführen*:
1 2 3 4 5 6 7 8 9 10 11 | UPDATE wp_posts SET post_content = CASE WHEN LOCATE('<!--:en-->', post_content) > 0 THEN SUBSTRING(post_content, LOCATE('<!--:en-->', post_content)+10) ELSE post_content END; UPDATE wp_posts SET post_content = CASE WHEN LOCATE('<!--:-->', post_content) > 0 THEN SUBSTRING(post_content, 1, LOCATE('<!--:-->', post_content)-1) ELSE post_content END; UPDATE wp_posts SET post_title = CASE WHEN LOCATE('<!--:en-->', post_title) > 0 THEN SUBSTRING(post_title, LOCATE('<!--:en-->', post_title)+10) ELSE post_title END; UPDATE wp_posts SET post_title = CASE WHEN LOCATE('<!--:-->', post_title) > 0 THEN SUBSTRING(post_title, 1, LOCATE('<!--:-->', post_title)-1) ELSE post_title END; UPDATE wp_posts SET post_excerpt = CASE WHEN LOCATE('<!--:en-->', post_excerpt) > 0 THEN SUBSTRING(post_excerpt, LOCATE('<!--:en-->', post_excerpt)+10) ELSE post_excerpt END; UPDATE wp_posts SET post_excerpt = CASE WHEN LOCATE('<!--:-->', post_excerpt) > 0 THEN SUBSTRING(post_excerpt, 1, LOCATE('<!--:-->', post_excerpt)-1) ELSE post_excerpt END; UPDATE wp_terms SET name = CASE WHEN LOCATE('<!--:en-->', name) > 0 THEN SUBSTRING(name, LOCATE('<!--:en-->', name)+10) ELSE name END; UPDATE wp_terms SET name = CASE WHEN LOCATE('<!--:-->', name) > 0 THEN SUBSTRING(name, 1, LOCATE('<!--:-->', name)-1) ELSE name END; |
* Dieser SQL-Befehl wurde von "guido" im qTranslate Forum veröffentlicht - Zu dem Beitrag ->
Ich selbst habe diesen SQL-Befehl auf meiner großen Datenbank ausgeführt und alle Posts sind perfekt erhalten und es traten keine Fehler auf, jedoch bei falscher qTranslate Verwendung oder mangelhafter Datenbank können größere Fehler zustande kommen.
Grundlagen der Informatik: Memory Management Unit MMU
Grundlagen der Informatik: Memory Management Unit MMU
Damit unser Prozessor nicht selbst die logischen Adressen umrechnen muss zu den tatsächlich Adresse im Hauptspeicher gibt es eine MMU. Warum man diesen Teil Hardwaretechnisch ausgelagert hat versteht sich von selbst, da durch diese Rechnungen vom Prozessor pro Zugriff wertvolle Zeit verloren geht.
Bei dieser Grafik wird deutlich, dass der CPU vom die logische Adresse weitergereicht wird, an die MMU, diese überprüft zuerst, ob sich die logische Adresse überhaupt in dem freigegebenen Adressraum des Programms befindet. Die Überprüfung ist ganz simpel, da einfach überprüft wird, ob die Adresse größer ist, als das Grenzregister der Anwendung.
Dadurch kann das Programm nicht eine logische Adresse anfordern, die weit über dem Programm freigegebenen Speicher liegt, um Daten von einem anderen Programm auslesen zu können.
Nun wird die Seiten Nr. ermittelt, dieser Vorgang ist nicht weiter komplex, da die logische Adresse binär maskiert wird. Um das nachrechnen zu können mit dezimalen Adressen, kann man die gesamte logische Adresse durch die Seitengröße teilen. Sollte das Ergebnis nicht ganzzahlig sein, so wird einfach alles nach dem Komma weggestrichen.
Im Nächsten Schritt wird die Prozess/Programm abhängige Seitentabelle geladen und die herausgefundene Seiten Nr. gesucht. Sobald diese gefunden wurde, wird die Rahmen Nr., bzw. die genaue Block-Anfangs-Adresse im Hauptspeicher herausgeladen und ersetzt die Seiten Nr. der logischen Adresse. Das kann man dezimal mit einer einfachen Addition erledigen.
logische Adresse - Seiten Nr. * Seitengröße = Displacement
2055 - 1 * 2048 = 7 -> Das Ergebnis ist das Displacement (Seitengröße in diesem Beispiel: 2 KByte)
Nun wurde bereits oft über das Displacement geschrieben, das Displacement ist die Adresse innerhalb eines Speicherblocks zu dem gewünschten Dateninhalt.
Hierbei wird auch das PresentBit überprüft, wenn dieses nicht 1 (true) ist, dann befindet sich unser gewünschter Speicherblock nicht im Hauptspeicher sondern wurde Geswaped. Der Swap (Auslagerung) lagert unbenutzte Speicherblöcke auf die Festplatte aus, damit wir mehrere Programme öffnen können und auch Inhalte bearbeiten können, die größer sind als unser Hauptspeicher (z. B. Videobearbeitung von HD-Filmen). Jedoch verzögert das Swapen das Ausführen von einem Programm. Wenn auf einen solchen Block zugegriffen wird, wird das Programm blockiert und der Speicherblog wieder in den Hauptspeicher geladen (Pagefoult).
Dieses Phänomen kann man heute auch noch sehen, indem man viele Programme gleichzeitig öffnet und parallel laufen lässt, dadurch wird das System deutlich langsamer und die Programme werden wegen den Pagefoult immer kurzzeitig blockiert, hierbei entsteht die Wartezeit.
Zu der Block-Anfangs-Adresse (Rahmen Nr. * Seitengröße) wird nun das Displacement Addiert.
Nun haben wir die physikalische Adresse, diese kann nun auf den Datenbus gelegt werden, mit der Anweisung auf den Steuerungsbus.
Grundlagen der Informatik: Der Hauptspeicher
Grundlagen der Informatik: Der Hauptspeicher
Jeder weis wie wichtig der Arbeitsspeicher bzw. Hauptspeicher bei einem PC ist, doch was macht er wirklich? Wie organisiert er seinen Inhalt und wie greifen die Programme darauf zu?
Ein Programm oder genauer gesagt, ein laufender Prozess, brauch im (Haupt-)Speicher Daten (Variablen, Attribute) und auch der Programmcode (Funktionen, Prozeduren).
Früher zu DOS Zeiten hat der Compiler/Linker die absoluten Adressen zu den Attributen, Variablen bzw. zu den Funktionen gelegt. Das ist auch einer der Gründe, warum DOS nicht Multitasking fähig war.
Heutzutage erstellt der Compiler/Linker bei dem kompilieren logische Adressen (beginnend ab 0) zu den Bestandteilen im Hauptspeicher, diese kann dann das Betriebssystem selbstständig verwalten und die logischen Adressen können dynamisch berechnet werden.
Logische Adressen kann man sich somit als eine vereinfachte Adresse vorstellen, die unser Betriebssystem frei verwalten kann und einer physikalischen Adresse zuteilen kann.
Ein weiterer Vorteil ist das dynamische Laden. Diese Bestandteile werden erst in den Hauptspeicher geladen, wenn sie für die Laufzeit notwendig werden. Vor allem bei Multitasking Systemen kommt es oft vor, dass 2 oder mehr Programme auf dieselbe Bibliothek zugreifen.
Natürlich wird auch hier jetzt klar, dass unser Betriebssystem jetzt die logischen Adressen frei Verwalten kann und den Arbeitsspeicher effizient verwenden kann. Mittels Paging wird der benötigte Speicher in Seiten bzw. Blöcken aufgeteilt und auf dem Arbeitsspeicher verteilt. In einer Seitentabelle kann nun nachgeschaut werden, wo sich der eigentliche Speicherplatz auf dem Hauptspeicher befindet.
Gemeinsam genutzte Bibliotheken - Bei dem ersten Aufruf des Programms einer Bibliothek, wird ein Platzhalter ("stab") erstellt, dieser untersucht dann ob die Bibliothek bereits geladen wurde. Wenn die Bibliothek noch nicht geladen wurde, wird sie geladen und der Platzhalter bekommt einen Link zu der geladenen Bibliothek. Wenn aber die benötigte Bibliothek vorhanden ist, wird sofort der Platzhalter entfernt und zeigt direkt auf die geladene Bibliothek.
Wenn das unser Betriebssystem das nicht verwalten würde, dann hätte jedes Programm die Bibliothek geladen und das würde unnötig den Speicher beanspruchen.
Jedes Programm hat seinen eigenen Speicherbereich und kann NICHT auf den anderen Speicherbereich zugreifen.
Dies ist aus Sicherheitsgründen notwendig, da sonst Viren oder andere Programme den Inhalt aus anderen Programmen einfach lesen können bzw. diese beeinflussen kann. Diese Schutzvorrichtung ist in der MMU verankert.
Damit unser Prozessor nicht selbstständig alle Speicherbereiche von der logischen Adresse zur physikalischen Adresse berechnen muss, gibt es auf unserer Hardware eine Memory Management Unit MMU









Abbonieren