понедельник, 30 июля 2012 г.

Пробуем язык Gо

Каждый кто начинает изучать новый язык программирования, задает себе вопрос "нужно или не нужно". Чтобы быстро ответить на этот вопрос есть play.golang.org. Тут можно написать сакраментальный Hello world.go и не только прямо на web-странице.

Листинг:  Hello world.go 
package main
import "fmt"
func main() { 
fmt.Println("Hello, playground") 
}

Проект e4rat

Проекта e4rat, в рамках которого развивается система для увеличения скорости загрузки системы и отдельных приложений, использующая для достижения данной цели перераспределение блоков в файловой системе Ext4. Утилита пытается оценить порядок загрузки и участвующие в загрузке компоненты, после чего физически перераспределяет их на диске таким образом, чтобы сократить число перемещений головок и минимизировать время доступа к данным.

В работе утилиты используется ioctl EXT4_IOC_MOVE_EXT, позволяющий выполнять на лету операции дефрагментации данных. Данный ioctl реализован в ядрах Linux начиная с версии 2.6.31. Готовые установочные пакеты с e4rat подготовлены для Debian Linux.

Судя по тестам эффективность работы e4rat выше, чем можно ожидать - заявлено об ускорении фазы загрузки данных до трёх раз. При оценке общего времени загрузки с использованием инструмента bootchart, e4rat позволил ускорить загрузку свежеустановленного Debian Squeeze с GNOME с 61 до 42 секунд.

Шаг 1. Скачиваем e4rat

К сожалению в репозитарии данной утилиты нет. Поэтому загружаем с sourceforge.net. Есть "386" и "amd64". Что не может не радовать :)

четверг, 26 июля 2012 г.

Язык программирования Go: компиляция и установка на Ubuntu/Debian/Mint

Go является новым системным языком программирования, выразительным, кратким, чистым и эффективным. Его механизмы параллелизма позволяют легко писать программы, которые получают максимальную отдачу от многоядерных и сетевых машин, в то время он обеспечивает гибкость и модульность написания программ. Это быстро компилируемый, статически типизированный язык  с динамической типизацией и интерпретируемый язык, еще есть в нем удобства сбора мусора.


Шаг 1: Установка переменных окружения

Перед установкой нужно установить следующие переменные окружения:

$GOROOT – корневая директория для установки Go. Обычно это $HOME/go, но может быть любой директорией.

$GOOS – Название целевой операционной системы. Поскольку это Ubuntu (примечание переводчика: используя Ubuntu для разработки, на самом деле можно получать бинарные файлы для разных целевых систем) значение будет «linux»

$GOARCH – Название целевой архитектуры. Если у Вас 32-битная x86 система, это будет «386». См. другие значения в онлайн-документации Go.