Архив метки: Ubuntu
Android с Ubuntu Touch на борту, двойная загрузка
Разработчик десктопной и карманной версии ОС Ubuntu, фирма Canonical сделала анонс предварительной версии системы с возможностью использования сразу двух мобильных ОС, Android и Ubuntu Touch. Система двойной загрузки позволяет мгновенно переключаться из среды одной системы в другую, что даёт больший простор, как для разработчиков, так и простым пользователям в будущем, ведь две системы дают в два раза больше возможностей. Это вроде одеяла с подогревом, как здесь — http://diag.com.ua/krasota-i-zdorovje/eljektrichjeskije-grjelki-eljektroodjejala/eljektroodjejala/
Переключение осуществляется по средствам приложений, написанных для Android и Ubuntu Touch. Поддерживаются как официальные прошивки Android, так и сборки от сторонних команд вроде CyanogenMod и AOSP. Решение пока не рассчитано на массового пользователя, а нацелено на разработчиков мобильных приложений. Установив Ubuntu Touch на телефон базирующийся на Android, он легко сможет переключаться на среду разработки в Ubuntu, не потеряв преимуществ Android для повседневного использования.
При двойной загрузке Ubuntu Touch устанавливается в сисемный раздел “/recovery” Android, предназначенный для восстановления операционной системы. Получается, что в режиме восстановления стартует Ubuntu Touch, а при обычном запуске Android. Образ Ubuntu Touch и системные данные хранятся в раздела ОС Android, в частности образ размещается в /data/system.img, пользовательская и системная информация в разделах /data/user-data пользовательские, /data/system-data системные соответственно. Установка, а также обновление ОС Ubuntu Touch происходит через приложение в Android.
Метод двойной загрузки прошёл тестирование на Nexus 4, и скорее всего должен работать и на других продуктах линейки Nexus.
Автор: Сергей Курган
Пример ускорения python используя ctypes
Ниже пример вызова C-метода и сравнение производительности.
1) Пишем метод (файл myfib.c)
unsigned long fib(unsigned long x)
{
if(x < 2) return x;
return fib(x-1) + fib(x-2);
}
2) Компилируем:
gcc -shared -Wl,-soname,myfib.so -o myfib.so -fPIC myfib.c
3) Вызываем из Python и сравниваем с функцией написанной на чистом python:
import ctypes
import timeit
fib = ctypes.CDLL('./myfib.so').fib
fib.restype = ctypes.c_long
fib.argtypes = (ctypes.c_ulong,)
print timeit.timeit('fib(32)', 'from __main__ import fib', number=1)
def pyfib(x):
if x < 2: return x
return pyfib(x-1) + pyfib(x-2)
print timeit.timeit('pyfib(32)', 'from __main__ import pyfib', number=1)
Результат:
0.0463268756866
1.08009696007
В итоге, за счет использования ctypes, мы получили ускорение в 23 раза.
Если использовать оптимизацию при компиляции, то можно получить большую производительность, для этого нужно указать ключ оптимизации:
gcc -O3 -shared -Wl,-soname,myfib.so -o myfib.so -fPIC myfib.c
Варианты ключей оптимизации:
-O1 — Базовая оптимизация
-O2 — GCC выполняет почти все поддерживаемые оптимизации, эта опция уменьшает как время компиляции так и время выполнения сгенерированного кода.
-O3 — Более сильная оптимизация, включает -O2 + некоторые дополнительные опции.
С учетом оптимизации -O3, мы получили такой результат:
0.023335695266
1.08294892311
Это быстрее в 46 раз чем на чистом python.
Тестировалось на ubuntu 12.10, python 2.7
Автор: D1VER
Дата публикации: 2013-12-16T05:21:00.001-08:00
TP-LINK TL-WN821N (RTL8192CU) в Linux Mint 15 и Ubuntu 13.04.
Wi-Fi USB адаптер TP-LINK TL-WN821N, основан на чипе RTL8192CU, поддержка которого в ядро Linux добавлена начиная с версии 2.6.38, что в идеале означает, что нужно всего-лишь подключить его к USB порту и «из коробки» он мгновенно без перезагрузок и дополнительных настроек (кроме ввода пароля на доступ к Wi-Fi соединению) должен заработать. Но на деле оказалось что его поддержка в ядре реализована чертовски криво и лишь у немногих счастливчиков всё работает гладко. Симптомы больного: не подключается к wi-fi или подключается после нескольких попыток, но на несколько секунд, далее дисконнект, потеря пакетов или остаётся подключённым, но абсолютно не проявляет активности. «Счастливые обладатели» данного «свистка», вот уже несколько лет наводняют форумы вопросами о том, как его «завести», пишут багрепорты разработчикам ядра и различных дистрибутивов Linux, но пока всё безрезультатно и остаётся только использовать драйвер, который предлагает сама Realtek, для самостоятельной, ручной установки. НО, этот драйвер не установится на ядро Linux 3.8, которое является ядром по умолчанию в дистрибутивах Linux Mint 15 и Ubuntu 13.04. Решение, к счастью нашлось!) Это тот же драйвер от Realtek, только доработанный напильником для совместимости с ядром 3.8, упакованный в виде deb пакета и устанавливаемый в виде DKMS модуля ядра, то есть после обновления ядра, этот модуль автоматически пересобирается и после перезагрузки ПК, Wi-Fi не отваливается, как это происходит при установке оригинального драйвера от Realtek). Итак, преступим к установке (от root'а):
wget -P /tmp/ http://realtek-8188cus-wireless-drivers-3444749-ubuntu-1304.googlecode.com/files/rtl8192cu-tjp-dkms_1.6_all.deb && dpkg -i /tmp/rtl8192cu-tjp-dkms_1.6_all.deb
Пакет установлен, правильный модуль для ядра собран, осталось только деактивировать старый модуль и активировать новый, чтобы W-Fi заработал (от root'а):
modprobe -r rtl8192cu && modprobe 8192cu
В это же мгновение в трее должна активироваться беспроводная сеть. Ура, всё заработало! 🙂 Но остался ещё последний штрих — занести старый модуль в чёрный список, чтобы он больше не загружался вместе с системой и не мешал работе нового модуля (от root'а):
cd /etc/modprobe.d/ && nano blacklist.conf
В самый конец файла добавляем:
# Zanosim v cherniy spisok ne rabotayushie moduli yadra dlay wi-fi adaptera na osnove rtl8192cu
blacklist rtl8192cu
blacklist rtl8192c_common
blacklist rtlwifi
Нажимаем CTRL+O, подтверждаем, и затем CTRL+X. ВСЁ, я вас поздравляю, Wi-Fi адаптер у вас теперь работает и после перезагрузки системы или обновления ядра не отвалится!)
P.S. Естественно, этот метод подходит не только для адаптера TP-LINK TL-WN821N, но и для любого другого на основе чипа RTL8192CU.
Автор: Yar4e
Xerox Phaser 6000 в Xubuntu 12.10
cd /tmp/ && wget http://download.support.xerox.com/pub/drivers/6000/drivers/linux/en_GB/6000_6010_deb_1.01_20110210.zip && unzip 6000_6010_deb_1.01_20110210.zip && cd deb_1.01_20110210/ && sudo dpkg -i xerox-phaser-6000-6010_1.0-1_i386.deb
Далее, остаётся установить принтер через веб-интерфейс CUPS или с помощью любой другой утилиты управления принтерами, используемой в вашем дистрибутиве Linux.
Автор: Yar4e
Новая версия почтового клиента Geary вышла
Недавно стало известно, что компания Yorba Foundation заявила об окончании разработки и начале выпуска нового небольшого почтового клиента — Geary версии 0.4. Дизайн и система взаимодействий были разработаны не без участия GTK 3+ (кроссплатформенной библиотеки). Вполне возможна и разработка мобильных приложений для принятия и отправки почты. Читать
