Linux
Tipps & Tricks zu Linux (Debian, Ubuntu, Arch Linux …)
Cross-Compiling Android Kernel – Samsung GalaxyS2
2Das GalaxyS2 läuft ziemlich gut mit dem neuen nightly-builds von CM9 (Android 4.0.4) & den neusten Google-Apps & dem SiyahKernel.
Ich möchte hier kurz erklären, wie du einen Kernel für das Samsung S2 (CM9) auf Basis vom SiyahKernel kompilierst.
1.) Installiere Linux + Cross-Compiler
Als erstes solltest du Linux bereits installiert haben (z.B. Ubuntu, Debian ...) ggf. einfach auf einen virtuellen PC z.B. via VirtualBox. Für Ubuntu gibt es bereits ab Werk GCC für ARM, bei Debian habe ich bisher folgende Paket-Quellen ( /etc/apt/sources.list ) mit aufgenommen und anschließend gcc-4.6-arm installiert, jedoch bisher nur mit Debian *sid* getestet.
deb http://www.emdebian.org/debian/ unstable main
Install:
sudo apt-get install build-essential git gcc-4.5-arm-linux-gnueabi wget More >
C-Programm & Cflags
2Ich habe vor einiger Zeit das Prinzip von Makefiles anhand eines kleines Beispiels gezeigt -> http://suckup.de/howto/c/c-programm-primzahlen-makefiles/ <- den selben Quelltext kompilieren wir heute mit verschiedenen C-Flags und 1000000 Schleifendurchläufen ...
1.) ohne C-Flags
gcc -lm primzahlen.c -o primzahlen_slow
Output: time ./primzahlen_slow
[...] 999961 999979 999983 real 0m1.760s user 0m1.420s sys 0m0.164s
2.) ohne C-Flags & ohne "math.h" (sqrt)
gcc primzahlen.c -o primzahlen_slow
Output: time ./primzahlen_slow
[...] 999961 999979 999983 real 0m1.407s user 0m0.988s sys 0m0.192s
3.) -O2 & ohne "math.h" (sqrt)
gcc -O2 primzahlen.c -o primzahlen_2
Output: time ./primzahlen_slow
[...] 999961 999979 999983 real 0m1.405s user More >Google Chrome App für Android 4
6Gerade bei Twitter gelesen: "Google veröffentlicht Chrome für Android". Leider ist die neue Google Chrome App nur für Android 4.0 "Ice Cream Sandwich" und für bestimmte Länder verfügbar... aber da ich seit einigen Wochen ein Galaxy S2 mit CyanogenMod9 nutze, ist das kein Problem für mich.
Google veröffentlicht Chrome für Android
Google Chrome für Android Beta ist da - Alle Infos
Tabs: geöffnete Tabs vom PC können auf's Smartphone übertragen werden, zudem kann man zwischen den Tabs sehr einfach Navigieren und bereits geöffnete Tabs werden auf Chrome-Startseite angezeigt
Google_Chrome_Tabs
Chrome + Google Suche: natürlich ist die Google Suche direkt in der URL integriert
Chrome_Google
Synchronisieren: Lesezeichen synchronisieren, an Google Diensten More >
PHP-Sicherheit erhöhen
9Jeder Server welcher PHP-Skripte verarbeitet, sollte zumindest zwei Sicherheitsschlösser eingebaut haben, so dass man nicht jedem Tür & Tor öffnet.
1.) suPHP oder suexec + fcgid
Wir sollten PHP-Skript nicht alle mit dem selben User-Berechtigungen (z.B. apache) laufen lassen, daher empfiehlt es sich auf kleinen Webservern suPHP und auf Webseiten mit mehr Traffic "Fast CGI" zu installieren. Alternativ kann man PHP mit "PHP-FPM" (FastCGI Process Manager) auch jeweils als eigenständigen Prozess laufen lassen.
2.) Suhosin
Da einige PHP-Projekte nicht wirklich für Ihre Sicherheit bekannt sind, empfiehlt es sich zudem die "Suhosin" Erweiterung für PHP zu installieren. "Es wurde entworfen, um den Server und die Benutzer vor bekannten und unbekannten Fehlern in PHP-Anwendungen und im More >
perror – Explain Error Codes für MySQL in der Shell
1Info: http://dev.mysql.com/doc/refman/5.0/en/perror.html
Ausgabe:
OS error code 1: Operation not permitted OS error code 2: No such file or directory OS error code 3: No such process OS error code 4: Interrupted system call OS error code 5: Input/output error OS error code 6: No such device or address OS error code 7: Argument list too long OS error code 8: Exec format error OS error code 9: Bad file descriptor OS error code 10: No child processes OS error code 11: Resource temporarily unavailable OS error code 12: Cannot allocate memory OS error code 13: Permission denied OS error code 14: Bad address OS error code 15: Block device required OS error code 16: Device or resource More >
Optimierte Gallery3D-App für Android (Froyo)
2Ich habe für mein altes Samsung Spica (Android 2.2.2) eine optimierte Gallery3D App kompiliert und ggf. läuft die App auch auf anderen Geräten, daher würde ich mich über euer Feedback freuen...
Gallery3D
Download: Gallery3D
Changelog:
* Gingerbread-Sources (Android 2.3)
* deaktiviertes Dithering
* deaktivierter dynamischer Hintergrund
* Fixes / Updates
Sources: https://github.com/voku/android_packages_apps_Gallery3D/
Epic Fail – Bumblebee
6Wer ein Notebook mit "NVIDIA® Optimus™ Technologie" besitzt und z.B. Ubuntu installiert hat sollte sich einmal "Bumblebee" anschauen ... "Owners of optimus laptops. Install bumblebee, use the nvidia card while gaming, use intel chipset for everything else. Now with autoshutdown for the nvidia card." - Quelle
Mit dem Update auf Version 1.4.32 wurde ein Fehler behoben, welcher bei Ubuntu-Usern "/usr" löscht. daraufhin wurden in den letzten Tagen etliche lustige Kommentare & Bilder zu dem Thema auf github.com gepostet. Hier einige Beispiele ...
bumblebee-fun1
bumblebee-fun2
bumblebee-fun3
bumblebee-fun4
bumblebee-fun5
bumblebee-fun6
More >Optimierungen von Android unter Linux nutzen
6Vor einiger Zeit habe ich ein kleines Shell-Script (SSSwitch - auto-switch settings) geschrieben, welches mein Android Handy beim Start optimiert und die Kernel-Einstellungen anpasst, wenn der Bildschirm an bzw. aus ist. Einige der Einstellungen kann man auch unter Linux verwenden. Als Beispiel beschreibe ich hier kurz, wie man die I/O Leistung verbessern kann und wer allgemein etwas zum optimieren von Linux / Ubuntu lesen möchte, dem hilft ggf. folgender Blog-Post weiter -> SpeedUp-Ubuntu
Ein Ausschnitt aus dem besagtem Skript ...
# ========= # One-time tweaks to apply on every boot; # ========= STL=`ls -d /sys/block/stl*`; BML=`ls -d /sys/block/bml*`; MMC=`ls -d /sys/block/mmc*`;... hier wurde der externe / interne Speicher von Android angegeben unter meinem Linux-System More >
Screenshots von Android via shell
4Wenn man auf seinem Android beispielsweise einen Kernel mit 24bpp Unterstützung installiert, kann man auch wenn man root-Rechte hat, keine Screenshot via App machen. Um dies zu umgehen kann man die "Android Debug Bridge (adb)" verwenden.
sudo apt-get install ffmpeg /opt/android-sdk-linux_x86/platform-tools/adb pull /dev/graphics/fb0 fb0 ffmpeg -vframes 1 -vcodec rawvideo -f rawvideo -pix_fmt rgb32 -s 320x480 -i fb0 -f image2 -vcodec png image.png
Das gleich Verfahren kann man auch unter Windows anwenden und wer lieber mit einer GUI arbeitet, sollte sich einmal QtADB anschauen.

LETZTE KOMMENTARE