16 сентября 2011 г.

Ремонт Samsung X20

Достался мне ноут Samsung X20. Попытался его я отремонтировать. Симптомы: при подключении адаптера питания светодиод начинает мигать - признак перегрузки. Ноутбук сам дотянул до полной разрядки батареи, т.к. зарядить уже ничего не мог.

Разбираю, подключаю сетевой адаптер. Сильно греется полевик SI4435, на первой фотке отмечен стрелкой.



Затем пытаюсь найти, что с ним не так. Скорее всего, греется от короткого замыкания, но уже не на этой плате, а на материнке, т.к. на этой платке никаких подозрительных потребителей тока не обнаружил.

На материнке первое, что сделал - проверил сопростивление на контактах для кондюка напряжения 18V, на рисунке обозначил зелёным цветом. 0.001 ом! теперь осталось найти причину. отпаивал поочерёдно находящиеся недалече SI4435 (обозначено синим), там есть еще один SI4431 около диода Шоттки, обозначил красным. После выпаянных SI4435 картина не менялась, но после SI4431 К.З. исчезло. Рядом с ним находился диод, который я тоже на всякий случай выпаял, чтобы проверить. Диод Шоттки оказался тоже пробитым.



После замены этих двух деталей ноутбук начал снова работать от сети и заряжать батарею.

На радостях установил Debian базированную систему, только дополнительно нужно было установить пакет для WLAN, скачать можно здесь

12 сентября 2011 г.

автоматическое улучшение качества плохого скана

вот еще одна тема, с которой мен пришлось столкнуться. нашел я одну книженцию на просторах интернета. качество её меня сильно не устроило.


при ближайшем рассмотрении можно увидеть много "шумов". читать можно но...

в программе GIMP я помотрел, можно ли что-нибудь улучшить, используя изменения кривых цвета. затем на ресурсе скриптов для ImageMagick я нашел подходящий скрипт curves.

Transformation Graph (curve with points drawn)

Подбирая две точки, нашел лучше всего подходящие параметры:
./curves -s 100,100 "25,25 75,95" test.jpg test_out.jpg

результат приведён ниже:


после этого, как и ранее, я применил скрипт для циклической обработки всех изображений книги:

#!/bin/bash
# loop_for_fotos.sh
#

SAVEIFS=$IFS
IFS=$(echo -en "\n\b")

#проверяем, установлен ли convert
convert > /dev/null
if [ $? -ne 0 ] ; then
    echo "Error: convert is needed, it's a part of ImageMagick" ;
fi;
DIR=$1;
# велосипед, убирающий "/" в конце
if [ -z $1 ]; then $DIR=`pwd`;
else
    TEMP=`pwd`;
    cd $DIR; TEMP2=`pwd`;
    cd $TEMP;
    DIR=$TEMP2;
    echo $TEMP2;
fi;
#наши старые файлы копируем в DIR.orig
echo $DIR
mkdir $DIR/orig;
cp *.jpg $DIR/orig/
ERR=0;
CPUS=1;
echo "Start in " $DIR
files=$(ls $DIR/*.jpg)
list=($files)
len=${#list[@]}
echo $len
CPUS=2;
echo "Start curve transformation"
for(( i=0; i<$len ; i=i+$CPUS))
do
    for(( j=0; j<$CPUS ; j++))
    do
    if [ ${list[i+j]} ]; then
#echo ${list[i+j]}
    ./curves -s 100,100 "25,25 75,95"  ${list[i+j]} ${list[i+j]}.new.jpg &
    fi
    done;
    for job in `jobs -p`
    do
    echo $job
    wait $job || let "FAIL+=1"
    done;
    if [ $? -eq 0 ]; then
    echo "curve transformation successfully ;) next step";
    else ERR=$[$ERR+1]; #считаем ошибки
    fi;
    for(( j=0; j<$CPUS ; j++))
    do
    if [ ${list[i+j]} ]; then
    mv  ${list[i+j]}.new.jpg ${list[i+j]}
    fi
    done;
done;

if [ $ERR -eq 0 ]; then
    echo "Job done!";
else echo "Job done with some errors.";
fi;
echo "You can find your old files in $DIR.orig"

IFS=$SAVEIFS
#end


попытки обрабатывать пробелы в именах файлов при помощи
SAVEIFS=$IFS
IFS=$(echo -en "\n\b")
...
IFS=$SAVEIFS

к успеху не привели, т.к. либо в скрипте curves, либо в самой конвертирующей программе выдаёт ошибку convert: unable to open image... более подробно не выяснял.

точки кривых всегда нужно выяснять экспериментальным путём, в зависимости от качества скана.


автор публикации - Карбофос.

8 сентября 2011 г.

уменьшение времени генерации locales на debian базированном дистрибутиве

Порой пакет locales актуализируется и при этом проводится генерация локалей для системы, видим:

Generating locales (this might take a while)...
de_DE.UTF-8... done
en_GB.UTF-8... done
en_US.UTF-8... done
ru_RU.UTF-8... done

в моём случае, чтобы не ждать очень долго генерации локалей, я подредактировал файл /etc/locale.gen, оставив в нем только те, которые мне могут пригодиться. при коротком списке актуализация проходит очень быстро. если список не изменять, то можно прождать несколько минут

дистрибутив: debian базированный

2 сентября 2011 г.

новая версия X.org server 1.11 закрыла КУЧУ УТЕЧЕК памяти. прогрессивное человечество вздохнуло с облегчением ;)

В последнее время наблюдал тихий ужас на моём компе
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
1982 root 20 0 685m 587m 3360 S 31 29.2 6:27.83 Xorg
В общем, наблюдалось НЕЧТО, чему я не мог найти толком объяснения. В любом случае, я думал обо всем, чем угодно, но не об ошибках ТАКОГО УРОВНЯ.

Вчера проактуализировал свою систему, и, О, ЧУДО!!! :)

PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
1960 root 20 0 154m 32m 7116 S 6 1.6 0:27.05 Xorg

Железо на моём компе такое:

процессор AMD Athlon(tm) Dual Core Processor 4850e
видеокарта VGA compatible controller: ATI Technologies Inc Cedar PRO [Radeon HD 5450]
плата MSI K9A2GM
система Linux 3.0-3-amd64

Вполне вероятно, что большинство ошибок утечки специфичны для 64bit систем...

Проявления: у меня на компе основная оболочка KDE 4, но запускал также и другие дистрибутивы с другими оболочками. Не было этой проблемы только на OpenSUSE 11.4, но там использовалась версия 1.9, а не 1.10.
При открытии объектов (всплывающие окна, объекты меню и пр.) было видно, что перед появлением информации в форме заготовка создавалась с содержимым-мусором, по всей видимости - содержимых других, уже занятых участков памяти. Выглядело примерно так: