Архив автора: admin

NAND FLASH, UBIFS и с чем это едят

UBIFS это новая файловая система для NAND и NOR носителей. 

Подробней она описана здесь.

Что бы протестировать возможности сей прекрасной ФС нужно:

 — включить поддержку оной в ядре (Device Drivers -> 
Memory Technology Device (MTD) Supportas -> Enable UBI — Unsorted block images )
( File Systems -> Miscellaneous filesystemsas -> UBIFS file system support)
 — скачать снимок mtd-utils с git (здесь) и собрать из исходников
Для компиляции mtd-utils потребуются пакеты: libacl-devel и zlib-devel, 

а так же библиотеки zlib, lzo и uuid.

Для Ubuntu: sudo apt-get install libacl1-dev zlib1g-dev liblzo2-dev uuid-dev


Но прежде чем мы сможем воспользоватся всеми преимуществами данной файловой
системы, нужно внести некоторые изменения в исходники ядра. На плате которую  я использую для экспериментов (BeagleBone Rev.A3) нет распаяной NAND flash, потому мы ее подключим. Рассказ о подключение не столь интересен, но нам нужно поправить загрузочную конфигурацию ядра, вся нужна информация расположенна в файле 
/linux-3.2.0-patched/arch/arm/mach-omap2/board-am335xevm.c:

/* Make some additions to configs */
/* Beaglebone Rev A3 and after */
static struct evm_dev_cfg beaglebone_dev_cfg[] = {
{tps65217_init, DEV_ON_BASEBOARD, PROFILE_NONE},
{mii1_init, DEV_ON_BASEBOARD, PROFILE_NONE},
{usb0_init, DEV_ON_BASEBOARD, PROFILE_NONE},
{usb1_init, DEV_ON_BASEBOARD, PROFILE_NONE},
{mmc0_init, DEV_ON_BASEBOARD, PROFILE_NONE},
{i2c2_init, DEV_ON_BASEBOARD, PROFILE_NONE},
{ehrpwm_init, DEV_ON_BASEBOARD, PROFILE_NONE},
{uart1_init, DEV_ON_BASEBOARD, PROFILE_NONE},
{gpio_led_init, DEV_ON_BASEBOARD, PROFILE_NONE},
{evm_nand_init, DEV_ON_BASEBOARD, PROFILE_NONE},
{NULL, 0, 0},
};

Тут diff файл, а тут про подключение nand flash к beaglebone.
как видно тут в список инициализации добавлена nand(а так же UART1, ehrpwm), причем сменился ее тип.
Кстати nand flash в отличии от блочных устройств имеет софтварное разбиение на разделы и эти разделы захардкорженны
в этом же файле:

/* NAND partition information */
static struct mtd_partition am335x_nand_partitions[] = {
/* All the partition sizes are listed in terms of NAND block size */
{
.name = "SPL",
.offset = 0, /* Offset = 0x0 */
.size = SZ_128K,
},
{
.name = "SPL.backup1",
.offset = MTDPART_OFS_APPEND, /* Offset = 0x20000 */
.size = SZ_128K,
},
{
.name = "SPL.backup2",
.offset = MTDPART_OFS_APPEND, /* Offset = 0x40000 */
.size = SZ_128K,
},
{
.name = "SPL.backup3",
.offset = MTDPART_OFS_APPEND, /* Offset = 0x60000 */
.size = SZ_128K,
},
{
.name = "U-Boot",
.offset = MTDPART_OFS_APPEND, /* Offset = 0x80000 */
.size = 15 * SZ_128K,
},
{
.name = "U-Boot Env",
.offset = MTDPART_OFS_APPEND, /* Offset = 0x260000 */
.size = 1 * SZ_128K,
},
{
.name = "Kernel",
.offset = MTDPART_OFS_APPEND, /* Offset = 0x280000 */
.size = 40 * SZ_128K,
},
{
.name = "File System",
.offset = MTDPART_OFS_APPEND, /* Offset = 0x780000 */
.size = MTDPART_SIZ_FULL,
},
};
Ну и на закуску, два различных способа «залить» информацию во флеш описанны здесь.

Автор: Dmitriy Falko
Дата публикации: 2012-10-03T11:20:00.001+04:00

Диета для улучшения зрения

По мере старения человека «стареет» и зрение, это связано с изменением структуры глаз. Чтобы наше зрение не ухудшалось необходим здоровый образ жизни и правильное питание. В данной статье мы рассмотрим продукты которые помогут снизить риск развития таких заболеваний как глаукома, катаракта и истощение сетчатки. Продукты несущие пользу для глаз.


1. Зелень. Антиоксиданты лютеин и зеаксантин защищают сетчатку глаза от разрушения, снижают риск развития катаракты и возрастных изменений. Они содержатся в : капуста, зелень репы (турнепс),шпинат,брокколи,а также в яйцах.

2. Цитрусовые. Витамин С укрепляет сосуды глаза, поддерживая нормальное кровообращение,что помогает снизить множество заболеваний. Витамин С содержиться в : грейпфрукт,мандарин, лимон, апельсин и т.д.
3. Морковь. Бета-каротин в организме синтезируется в витамин А, так съеденная морковка или пару абрикосов в день помогут улучшить вечерние зрение и предотвратить развитие катаракты. Также бета-каротин содержиться в дыне, тыкве, сладком картофеле.
4. Фасоль. Красная фасоль богата цинком, важнейшим минералом для здоровья глаз! Также фасоль помогает в выработке меланина, что способствует хорошему зрению в сумерки и уменьшает риск развития катаракты. А вот для похудения можно приобрести самые лучшие таблетки для похудения, но нужно знать отзывы и побочные действия.

Подставка для кастрюль из шерсти

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

Подставка для чайника из шерсти

Читать

Рост потребительского кредитования в Казахстане

Рост потребительского кредитования в Казахстане

Рост потребительского кредитования в
Казахстане
================================================================================
Makhabat on 16/07/2013 05:28:00

Банковская система Казахстана является
олигополистической. На три крупнейших
банка — АО «Казкоммерцбанк», АО «Банк
ТуранАлем», АО «Народный Банка Казахстана»
— приходится 60,95% активов всей банковской
системы. Для целей определения анализа
деловой активности были взяты финансовые
данные по 10 крупнейшим банкам Республики
Казахстан по состоянию на 01.01.2013 г. (таблица
1).
Таблица 1
Анализ активов банков второго уровня
(данные в млрд. тг.) за 2012 год
Наименование банка
Валюта баланса
Ликвидные активы
Капитал 1-го уровня
Обязатель-ства перед клиентами
Финансов. активы
Материальные активы
АО «Казкоммерцбанк»
286.04
12.62
25.37
359.52
257.72
4.42
АО «Банк Туран Алем»
228.68
11.50
22.35
335.54
215.17
1.46
АО «Народный Банка Казахстана»
219.11
13.45
16.76
333.15
201.10
7.07
АО «АТФБ»
68.00
7.49
5.48
234.40
63.30
1.83
АО«БанкЦентрКредит»
59.66
6.75
4.99
233.75
55.41
1.22
АО«Ситибанк Казахстан»
29.24
3.13
5.47
215.72
28.19
0.49
АО «Нурбанк»
46.95
11.39
5.70
214.82
44.48
0.65
АО «ДАБ ABN AMROБанкКазахстан
29.88
2.36
5.38
209.46
27.95
1.02
АО «Евразийский банк»
32.55
2.78
4.32
207.76
30.87
0.28
АО «Темiр банк»
24.22
2.47
3.83
210.59
21.98
1.27
Прочие
179.56
14.61
32.46
301.52
162.15
8.89
Примечание — Составлено на основе отчета
Национального банка Республики Казахстан о
состоянии банковского сектора РК в 2012 году
Активы банковской системы Казахстана,
часто называемой «лучшей в СНГ», за
последние два года росли стремительными
темпами, достигнув на сегодняшний день $7,4
миллиарда, или около 30 процентов ВВП (на
01.01.2013 г. — $5,4 миллиарда). Активы банков
увеличились в тенговом выражении с 795,2 млрд.
в конце января до 1,146 млрд. в конце декабря
2012г. Разница составила 350,8 млн. или 44,1%. В
январе 2013г. активы банков уже равнялись в
тенге 1,126,6 млрд. тг. В валютном эквиваленте
размер активов составил на конец января и
декабря 2012г соответственно 5,241,2 млн. $ и 7,365
тыс. $. Рост равнялся 2,141 млн. $ или 40,5%. Т.е. в
валютном исчислении рост был немного
меньше и был вызван ростом доллара. В начале
2013г. активы банков в долларах составили
цифру $7250,7 млн.
На фоне благоприятных макроэкономических
условий и продолжающегося роста ресурсной
базы, банки значительно активизировали
свою деятельность на кредитном рынке. На 1
декабря 2012 года общий объем кредитования
банками отраслей экономики вырос до 659,3
млрд. тенге, из которых 377,2 млрд. тенге.
приходится на средне- и долгосрочные
кредиты.
Недостатком, с которым часто сталкивалась
инспекция при проверке качества активов,
является недостаточность залогов и
кредитование финансово неустойчивых
субъектов.
Основными заемщиками банков на рынке
кредитных услуг остаются корпоративные
клиенты — предприятия и организации. При
этом удельный вес кредитов,
предоставленных корпоративным клиентам, в
общем объеме кредитов экономике за
прошедший год снизился с 94,7% до 93,7%, тогда
как по кредитам физическим лицам
увеличился с 5,3% до 6,3%. Хотя повышение доли
кредитов, выданных физическим лицам,
является незначительным, оно оценивается
положительно, так как показывает
расширение кредитных услуг банков,
предлагаемых населению.
Казахстан существенно отстаёт от России в
этом вопросе: по статистике на одного
казахстанца в среднем приходится порядка 600
долларов кредита, в России же, эта цифра как
минимум вдвое выше.
Проведенный анализ долгосрочных тенденций
в экономике Казахстана, позволяет
прогнозировать в следующем году рост
потребительского кредитования на уровне
20-30%. Особенно перспективным является
сегмент автокредитования и кредитов на
потребительские нужды. На сегодня, в
Казахстане, в пересчёте на душу населения,
приобретается вдвое меньше новых
автомобилей чем в России, но в последнее
время замечена явная тенденция к росту
таких покупок. Кроме того, растущие крупные
сети по продаже электроники и бытовой
техники, продвигают в тесном
сотрудничестве с банками разнообразные
кредитные программы, которые пользуются
большой популярностью у населения. Явный
рост доходов граждан, и, как следствие,
возросшие потребности в товарах не первой
необходимости, приобретать которые и
помогут потребительские кредиты.
Рынок потребительского кредитования за
2011-2012 год вырос на 50%. И достиг 1 трлн 200 млн
тенге.
Большой скачок в этом году ожидается в
автокредитовании, так как в прошлом году на
этом рынке зафиксирован 100-процентный рост.
Эта тенденция сохранилась и в текущем году.
Также был большой рост выдачи денежных
кредитов наличными в прошлом году, кредиты
в точках продаж также выросли, эта
тенденция сохранилась и в 2013 году. Есть
большой потенциал в развитии
потребительского кредитования, если взять
за основу показатель, который часто
используется для оценки данного рынка –
соотношение кредитного портфеля к ВВП
страны, — то Казахстану есть к чему
стремиться и куда расти.
Сейчас это соотношение в РК составляет
меньше 20%, что значительно ниже показателя
на Украине и в России, где оно порядка 30%;
вдвое меньше, чем в Восточной Европе; в 4
раза — чем в Западной; в 5 раз меньше — чем в
США.
СПИСОК ИСПОЛЬЗОВАННЫХ ИСТОЧНИКОВ
1.Сейткасимова Г.С. — «Деньги Кредит Банки»,
Экономика, 2008г.
2.Лаврушина О.И. — «Банковское дело» — Финансы
и статистика, 2010г.
3.Журнал «Банки Казахстана» №3, 2011г.
4.Мак Нотон Д. — «Банковские учреждения в
развивающихся странах», том 1: Укрепление
руководства и повышение чувствительности к
изменениям — Всемирный Банк, 2011г.
5.Щиборщ К. — «Потребительский кредит:
западный опыт и перспективы развития в
России» — Банковские технологии, № 9, 2008г.
6.Ширинская Е.Б. — «Операции коммерческих
банков и зарубежный опыт» — Финансы и
статистика, 2010г.
7.Хе Олег — «Народный банк увеличивает
объемы потребительского кредитования», 2011
8.Отчет Национального банка Республики
Казахстан о состоянии банковского сектора
РК в 2012 году
9.Интернет- портал Forbes.kz
10.Интернет-издание «Азия Центр» выпуск
номера от 25.03.2013 года

Сахарный диабет

В последние годы растет число людей, которые страдают сахарным диабетом. И этот недуг уже не относят к заболеваниям, которые мешают вести нормальный образ жизни,работать, заниматься спортом. При правильном режиме, соблюдении диеты и при современных медицинских возможностях лечения таблетками и инсулином, жизнь страдающих этим недугом ни чем не отличается от жизни здорового человека. Сахарный диабет бывает: При сахарном диабете I типа происходит гибель клеток, вырабатывающих инсулин. А когда создается нехватка инсулина в организме, то плохо усваивается сахар из крови, в результате этого клетки голодают, и в крови начинается скапливаться глюкоза. Единственным средством, которое может помочь – это инсулин, его вводят внутримышечно и затем он поступает в кровоток. На начальных стадиях можно еще помочь пациентам, но когда болезнь получила свое развитие уже невозможно восстановить разрушенные клетки. На настоящий момент проведено множество попыток по пересадке клеток, которые вырабатывают инсулин или поджелудочной железы, но, увы, пока нет положительных результатов. Поэтому для лечения диабета необходимо на протяжении всей жизни соблюдать диету и введение инсулина. Возникновение диабета второго типа во многом зависит от наследственности, хотя не установлено точной причины его развития. Также существует связь между диабетом второго типа и ожирением. Если у вас ожирение I степени, то риск предрасположенности к болезни в два раза выше, чем у людей имеющих нормальный вес. Поэтому следует во время заняться собой и бороться с ожирением. Только не занимайтесь этим самостоятельно, лучше обратитесь к специалистам. Обратитесь например, в центры снижения веса, подход к пациентам там индивидуальный. Диабет этого типа считается весьма распространенным, такой формой страдает 2-10% населения всего мира. Когда болезнь начинает развиваться и устанавливается диагноз, практически у всех пациентов сохраняется способность выработки инсулина. Основной причиной увеличения сахара в крови – это неправильная выработка инсулина или недостаточное его количество. Происходит это из-за замедленной реакции организма на пищу и поступление сахара в кровь. Слишком поздно появляется инсулин в крови и содержание его низкое, поэтому происходит недостаточное усвоение глюкозы, которая поступила в организм с пищей. Еще одной причиной появления этого типа болезни является неспособность жировой клетчатки и мышц использовать полностью вырабатываемый инсулин. Поэтому глюкоза практически не поступает в клетки. Такое состояние в медицине называют – инсулинорезистентность. Симптоматика при этой форме болезни мало выражена, поэтому диабет второго типа относят к легкой форме. Однако и не воспринимается вся серьезность ситуации и больные в течение долгого времени не подразумевают о коварном заболевании.

Метаклассы в python 2.X с примерами и полным разоблачением

Теория, часть 1. Метаклассы

Все начинается с объявления класса:

Hightlited/Raw

class A(object):
field = 12
def method(self, param):
return param + self.field

class A(object):
field = 12
def method(self, param):
return param + self.field

Имеющие опыт программирования на компилируемых языках могут увидеть здесь декларативную конструкцию, но это только обман зрения. В python всего две декларативные конструкции — объявление кодировки файла и импорт синтаксических конструкций «из будущего». Все остальное — исполняемое. Написанное объявление это синтаксический сахар для следующего:

Hightlited/Raw

txt_code = """
field = 12
def method(self, param):
return param + self.field
"""

class_body = {}
compiled_code = compile(txt_code, __file__, "exec")
eval(compiled_code, globals(), class_body)
A = type("A", (object,), class_body)

txt_code = """
field = 12
def method(self, param):
return param + self.field
"""

class_body = {}
compiled_code = compile(txt_code, __file__, "exec")
eval(compiled_code, globals(), class_body)
A = type("A", (object,), class_body)

Оба этих способа создать класс A совершенно эквивалентны. Окончательно убедиться в том, что объявление класса исполнимо можно посмотрев вот на это:

Hightlited/Raw

def this_is_not_cplusplus(some_base_class, num_methods):
class Result(some_base_class):
x = some_base_class()
for pos in range(num_methods):
# добавим функцию в locals - она попадает в тело
# класса Result и станет его методом
locals()['method_' + str(pos)] =
lambda self, m : m + num_methods
return Result

class_with_10_methods = this_is_not_cplusplus(object, 10)
class_with_20_methods = this_is_not_cplusplus(
class_with_10_methods, 20)
print class_with_10_methods().method_3(2) # напечатает 12
print class_with_20_methods().method_13(2) # напечатает 22

def this_is_not_cplusplus(some_base_class, num_methods):
class Result(some_base_class):
x = some_base_class()
for pos in range(num_methods):
# добавим функцию в locals - она попадает в тело
# класса Result и станет его методом
locals()['method_' + str(pos)] =
lambda self, m : m + num_methods
return Result

class_with_10_methods = this_is_not_cplusplus(object, 10)
class_with_20_methods = this_is_not_cplusplus(
class_with_10_methods, 20)
print class_with_10_methods().method_3(2) # напечатает 12
print class_with_20_methods().method_13(2) # напечатает 22

Функция this_is_not_cplusplus создает новый класс каждый раз, когда мы ее вызываем, используя переданный тип в качестве базового и создавая в н