Случайны выбор дневника Раскрыть/свернуть полный список возможностей


Найдено 339 сообщений
Cообщения с меткой

ядро - Самое интересное в блогах

Следующие 30  »
Ирина_Ситникова

Травматик-белка мечется со своим разрушенным(расщеплённым) личностным ....

Воскресенье, 24 Июля 2016 г. 12:50 (ссылка)





 


3492655_images_2 (237x213, 8Kb)


 


Внутренние феномены пограничного состояния. Ядро личности.

...Травматик-белка мечется со своим разрушенным(расщеплённым) личностным ядром-орехом, пытаясь спрятать его(уберечь от поглощения) , а с другой стороны, привлекая к себе внимание самим этим мельтешением - невозможно не обратить внимание на столь

мельтешащий объект....

ЧИТАТЬ СТАТЬЮ



www.psyshans.ru



#psychologicalhelp #Psychologist #psychotherapist #психолог #ПсихологМосква #практикующийПсихолог #психоаналитическийТерапевт #пограничноеСостояние


 








 



Метки:   Комментарии (0)КомментироватьВ цитатник или сообщество
kiev2376393

Больше ядер, хороших и разных! Встречаем новые Xeon Phi

Суббота, 03 Июля 2016 г. 01:49 (ссылка)

Более двух лет на рынок не выводились новые многоядерные сопроцессоры Intel Xeon Phi. Можно было бы подумать, что компания потеряла к ним интерес, но это не так, доказательство чему — только что анонсированная новая линейка 7200 (кодовое название — Knights

Читать далее...
Метки:   Комментарии (0)КомментироватьВ цитатник или сообщество
rss_rss_hh_new

Dropbox объяснил, почему внедряется в ядро операционной системы

Четверг, 26 Мая 2016 г. 13:08 (ссылка)






Ровно месяц назад Dropbox анонсировал Dropbox Infinite — «революционно новый способ доступа к вашим файлам», как писала компания в корпоративном блоге. В демонстрационном видео показали, что десктопный клиент Dropbox предоставляет прямой доступ к облачному хранилищу файлов на уровне файловой системы, без необходимости запускать браузер. Локальный диск «увеличивается» на размер облачного хранилища, файлы доступны напрямую. Облачное хранилище может быть больше по размеру, чем локальный диск. Сейчас компания раскрыла технические подробности, как работает эта функция.



Сразу после первого анонса эксперты высказали опасения, что Project Infinite откроет доступ в систему посторонним, если они найдут уязвимости в клиенте Dropbox. Собственное расширение ядра от Dropbox станет тогда своеобразным бэкдором в системе.

Читать дальше →

https://habrahabr.ru/post/301826/?utm_source=habrahabr&utm_medium=rss&utm_campaign=best

Комментарии (0)КомментироватьВ цитатник или сообщество
rss_rss_hh_new

Анатомия драйвера

Среда, 27 Апреля 2016 г. 16:56 (ссылка)

Опять вернёмся в традиционную область разработки операционных систем (и приложений для микроконтроллеров) — написание драйверов.



Я попробую выделить некоторые общие правила и каноны в этой области. Как всегда — на примере Фантома.



Драйвер — функциональная компонента ОС, ответственная за отношения с определённым подмножеством аппаратуры компьютера.



С лёгкой руки того же Юникса драйвера делятся на блочные и байт-ориентированные. В былые времена классическими примерами были драйвер диска (операции — записать и прочитать сектор диска) и драйвер дисплея (прочитать и записать символ).



В современной реальности, конечно, всё сложнее. Драйвер — типичный инстанс-объект класса, и классов этих до фига и больше. В принципе, интерфейс драйверов пытаются как-то ужать в прокрустово ложе модели read/write, но это самообман. У драйвера сетевой карты есть метод «прочитать MAC-адрес карты» (который, конечно, можно реализовать через properties), а у драйвера USB — целая пачка USB-специфичных операций. Ещё веселее у графических драйверов — какой-нибудь bitblt( startx, starty, destx, desty, xsize, ysize, operation ) — обычное дело.



Цикл жизни драйвера, в целом, может быть описан так:




  • Инициализация: драйвер получает ресурсы (но не доступ к своей аппаратуре)

  • Поиск аппаратуры: драйвер получает от ядра или находит сам свои аппаратные ресурсы

  • Активация — драйвер начинает работу

  • Появление/пропадание устройств, если это уместно. См. тот же USB.

  • Засыпание/просыпание аппаратуры, если это уместно. В контроллерах часто неиспользуемая аппаратура выключается для экономии.

  • Деактивация драйвера — обслуживание запросов прекращается

  • Выгрузка драйвера — освобождаются все ресурсы ядра, драйвер не существует.





(Вообще я написал в прошлом году черновик открытой спецификации интерфейса драйвера — см. репозиторий и документ.)



Мне известны три модели построения драйвера:




  • Поллинг

  • Прерывания

  • Нити (threads)





Драйвер на основе поллинга (циклического опроса) устройства



Такие драйвера применяются только с большого горя или по большой необходимости. Или если это простая встроенная микроконтроллерная система, в которой и есть-то всего два драйвера. Например, конвертор интерфейсов serial port <-> TCP, в котором сеть работает по прерываниям, работу с последовательным портом может, в принципе, выполнять и поллингом. Если не жалко избытка тепла и затрат энергии.



Есть и ещё одна причина: такие драйвера практически неубиваемы. Поэтому, например, в ОС Фантом отладочная выдача ядра в последовательный порт сделана именно так.



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



#define PORT 0x3F8

int dbg_baud_rate = 115200;

void debug_console_putc(int c)
{
while(! (inb(PORT+5) & 0x20) )
;

if( c == '\n' ) outb(PORT, '\r' );
outb(PORT, c);
}

void arch_debug_console_init(void)
{
short divisor = 115200 / dbg_baud_rate;

outb( PORT+3, 0x80 ); /* set up to load divisor latch */
outb( PORT, divisor & 0xf ); /* LSB */
outb( PORT+1, divisor >> 8 ); /* MSB */
outb( PORT+3, 3 ); /* 8N1 */
}




Такой драйвер, как нетрудно видеть, пожирает процессор в ожидании готовности устройства. Это можно починить, если скорость работы самого драйвера некритична:



    while(! (inb(PORT+5) & 0x20) )
yield(); // отдать процессор другим нитям, пока наше устройство не готово




Но, конечно, в целом это никуда не годная (кроме вышеприведённого случая:) модель.



Драйвер на основе прерываний



Общая структура такого драйвера выглядит вот как:




strauct device_state dev;

dev_write( buf )
{
dev.buf = buf;
if( dev.started ) dev_start();
cond_wait( &dev.ready );
}

dev_interrupt()
{
dev_output();
}

dev_start()
{
dev.started = 1;
dev_enable_interrups( &dev_interrupt );
dev_output();
}

dev_output()
{
if( buffer_empty() || (!dev.started) )
{
dev.started = 0;
dev_disable_interrupts();
cond_signal( &dev.ready ); // done
return;
}

// send to device next byte from buffer
out( DEV_REGISTER, *dev.buf++ );
}




Фактически, такой драйвер порождает для себя псевдо-нить: поток управления, который живёт только на поступлении прерываний от устройства.



Как только драйвер получает очередной запрос на запись, он включает прерывания и «вручную» инициирует отправку в устройство первого байта данных. После чего входящая нить засыпает, ожидая конца передачи. А может и вернуться, если нужна асинхронная работа. Теперь драйвер будет ждать прерывания от устройства. Когда устройство «прожуёт» полученный байт, оно сгенерирует прерывание, при обслуживании которого драйвер или отправит очередной байт (и будет ждать очередного прерывания), или закончит работу, выключит прерывания и «отпустит» ждущую внутри dev_write() нить.



Что забыто



Прежде чем мы перейдём к последней модели драйвера, перечислим вещи, которые я (намеренно) пропустил в предыдущем повествовании.



Обработка ошибок


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



Таймауты


Устройство может сломаться и просто не ответить на запрос прерыванием, или никогда не выставить бит готовности. Драйвер должен запросить таймерное событие, которое бы вывело его из «ступора» на такой случай.



Смерть запроса


Если окружающая нас ОС это позволяет, то надо быть готовым к тому, что вошедшая в драйвер нить, в рамках которой «пришёл» запрос ввода-вывода, может быть просто убита. Это не должно приводить к фатальным последствиям для драйвера.



Синхронизация


Для простоты я указываю в качестве примитива синхронизации cond. В реальном драйвере это невозможно — cond требует объемлющего mutex в точке синхронизации, а в прерывании какой уж mutex — нельзя! Вот в последней модели, драйвере с собственной нитью, можно применять cond как средство синхронизации нити пользователя и нити драйвера. А вот синхронизация с прерыванием — только spinlock и семафор, причём реализация семафора должна быть готова к возможности активировать (открыть) семафор из прерывания. (В Фантоме это так и есть)



Драйвер на основе нити



От предыдущего он отличается тем, что имеет собственную нить, которая выполняет ввод-вывод.




dev_thread()
{
while(dev.active)
{
while(!dev_buffer_empty())
cond_wait(&dev.have_data);

while( /* device busy */ )
cond_wait(&dev.interrupt);

dev_enable_interrupts();
// send to device next byte from buffer
out( DEV_REGISTER, *dev.buf++ );
}
}

dev_interrupt()
{
dev_disable_interrupts();
cond_signal(&dev.interrupt);
}




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



Отметим, что есть третья, промежуточная модель, в которой драйвер не имеет своей нити, а выполняет всё то же самое из нити запроса ввода-вывода. Но, во-первых, см. пункт о том, что её могут убить, во-вторых это жлобство :), а в третьих — не всегда она (нить) такого хочет. Иным бы хотелось асинхронного обслуживания.



Блочный ввод-вывод, сортировка и заборы



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



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



Обычно драйвер просто сортирует очередь запросов по номеру блока и обслуживает их так, чтобы головка диска последовательно двигалась от внешней дорожки к внутренней, или наоборот. Это сильно помогает.



Но не всякую пару запросов можно поменять местами. Если файловая система (или её аналог) решила, что ей надо гарантировать целостность данных на диске, она бы очень хотела убедиться в том, что определённая группа запросов завершена. Для этого в очередь запросов вставляется специальный запрос ввода-вывода, который запрещает перемешивать запросы до себя с запросами после себя.



Кроме того, плохая идея переставлять местами запрос на запись блока N и запрос на чтение того же блока. Впрочем, это вопрос договорённостей.



Original source: habrahabr.ru.

https://habrahabr.ru/post/282564/?utm_source=habrahabr&utm_medium=rss&utm_campaign=best

Метки:   Комментарии (0)КомментироватьВ цитатник или сообщество
kiev2376393

DCM как ядро платформы Doubleclick: интеграция с DBM и другими инструментами

Пятница, 23 Апреля 2016 г. 00:51 (ссылка)

24 марта в Москве прошла профессиональная конференция по онлайн-аналитике Go Analytics! 2016. Мероприятие уже третий год собирает ведущих экспертов и лидеров отрасли.
В рамках конференции Андрей Липатов (Google) представил доклад на тему: «DCM

Читать далее...
Метки:   Комментарии (0)КомментироватьВ цитатник или сообщество
kiev2376393

Применение Google Analytics для расширения семантического ядра (на примере Price.ru)

Пятница, 23 Апреля 2016 г. 00:40 (ссылка)

Автор: Александр Егоров , директор по развитию Alytics





Сбор качественного семантического ядра - задача нетривиальная. Особенно, если все очевидные запросы уже давно в работе, синонимы подобраны, Wordstat пропарсен, а SpyWords и KeyCollector

Читать далее...
Метки:   Комментарии (0)КомментироватьВ цитатник или сообщество
Совет1

Как узнать 32-битный или 64-битный режим ядра

Суббота, 05 Марта 2016 г. 13:03 (ссылка)

Для Windows XP существует только 2 способа как узнать 32 или 64 версии установлены на компьютере...Далее

Метки:   Комментарии (0)КомментироватьВ цитатник или сообщество
Совет1

Как установить Ubuntu без помех для работы

Понедельник, 28 Декабря 2015 г. 22:25 (ссылка)

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

Метки:   Комментарии (0)КомментироватьВ цитатник или сообщество
Hot-Play

Обновление PlayStation 4 (PS4) дает больше возможностей для разработчиков / ИгроБлог

Среда, 02 Декабря 2015 г. 08:49 (ссылка)
hotplay.com.ua/publ/obnovle.../1-1-0-670


Последнее обновление для консоли PlayStation 4 (PS4) даст разработчикам больше технических возможностей



Метки:   Комментарии (0)КомментироватьВ цитатник или сообщество
rss_rss_hh_new

Вопросы для нового интервью с Эдуардом Шишкиным

Вторник, 17 Ноября 2015 г. 21:07 (ссылка)

Договорился с Эдуардом Шишкиным, разработчиком ФС Reiser4, о новом интервью (интервью пятилетней давности можно прочитать по ссылке).



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



Original source: habrahabr.ru (comments, light).

http://habrahabr.ru/post/271077/

Метки:   Комментарии (0)КомментироватьВ цитатник или сообщество
leovik7

ИНТЕРЕСНЫЕ ФАКТЫ О ЗЕМЛЕ!

Пятница, 13 Ноября 2015 г. 18:55 (ссылка)




fakti_29 (700x647, 211Kb)



Эти факты о Земле могут вас удивить:





1. Самое сухое местом на планете – это Сухие долины Мак-Мердо (Dry Valleys). Там не было дождя последние 2 миллиона лет.



2. Ежегодно ветром переносится 40 миллионов тонн пыли из Сахары в районы Амазонки.



3. Температура ядра Земли находится на уровне 5500 градусов Цельсия, что равняется температуре поверхности Солнца.



4. В ядре Земли находится 99% золотого запаса планеты.



5. Земля - единственная планета во всей солнечной системе, на которой происходит тектоническое движение плит. Без этих процессов углекислый газ не перерабатывался бы, и наша планета перегрелась бы, как Венера, уничтожив все живое.



6. Большинство вулканов Земли (90%) находятся под водой.



7. Литр соленой морской воды содержит в себе 1/13000000000 грамм золота.



8. 97 процентов всей воды Земли – это соленая вода.



9. Из этих 3% оставшейся воды – 70% приходится на ледяные шапки планеты.



10. Из оставшихся 30% - снова порядка 70% является либо почвенной влагой, либо расположена глубоко в земле, в малодоступных водоносных слоях.



11. 20% пресной воды, находящейся в озерах и реках, находится в одном месте – в России, озеро Байкал.



12. Ежедневно на нашей планете происходит порядка 8,6 миллионов ударов молний.



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



14. На высоте в 19 километров наблюдается явление, известное как Линия Армстронга (Armstrong Limit). Именно достигнув эту высоту человек должен быть в скафандре, иначе он умрет. На этой высоте давление настолько низкое, что вода способна закипеть при температуре человеческого тела.



15. Земная орбита загрязнена более чем 38 тысячами антропогенными объектами.



16. Размер 22 тысяч из них более 10 метров в длину.



17. Ежедневно, по крайней мере, один из антропогенных объектов падает на Землю.



18. Звездные сутки длятся 23 часа 56 минут и 4 секунды. Именно столько времени требуется нашей планете для того, чтобы сделать оборот вокруг своей оси.



19. На самом деле, Великую Китайскую стену из космоса не видно. Однако, из космоса можно увидеть смог, нависший над Китаем. Также из космоса видно Большой Барьерный Риф.



20. Самая удаленная фотография голубой планеты была сделана с расстояния 183 миллионов километров с американской станции Messenger. Фото называется «Pale Blue Dot», что переводится как «бледная голубая точка». На фото видно не только Землю, но и луну.



21. Озоновая дыра уменьшается. В 2012 году был зафиксирован наименьший размер за последние 10 лет.



22. Пластиком, который применяется людьми чуть более 100 лет, наиболее загрязнен мировой океан. Доля пластика среди мусора в толще воды составляет 90%.



23. Земля – не идеальная сфера, какой мы ее видим на глобусах. Из-за силы вращения Земля имеет немного выпуклую часть по экваториальной полосе.



24. Из-за данной аномалии в некоторых регионах планеты сила притяжения больше, либо меньше, чем в противоположных. Одно из таких мест – Гудзонский залив (Hudson Bay) в Канаде. Однако, разница в притяжении очень мала, и различие в весе составляет всего 0.005%.



25. Мы знаем о нашей Вселенной намного больше, чем о ядре Земли и даже океанах. Более того, не исследовано и 95% территории мирового океана.

Метки:   Комментарии (0)КомментироватьВ цитатник или сообщество
Stepan_Sikora

Смерть планеты: Ученые сообщили, когда замерзнет ядро Земли

Четверг, 08 Октября 2015 г. 18:16 (ссылка)
fenixslovo.com/ru/society/science/8704

Ядро остывает сейчас гораздо медленнее, чем предполагали ученые, что дает человечеству и прочей жизни на Земле больше времени для существования. Брита...
Метки:   Комментарии (0)КомментироватьВ цитатник или сообщество
Бослав

Недюжинный талант и твёрдая позиция...

Пятница, 11 Сентября 2015 г. 17:25 (ссылка)

Это цитата сообщения Цветок_грез_Танюша Оригинальное сообщение

Шестидесятники. Юнна Мориц











Напомнит что душа -

...Не мера, а избыток,

...И что талант - не смесь

...Всего, что любят люди,

...А худшее, что есть,

...И лучшее, что будет . . .

Юнна Мориц





Юнна Мориц — одна из ярких представителей поколения советской интеллигенции «Шестидесятники». Как и другие представители этого времени у нее было военное детство, которое по-своему сформировало мировоззрение и творческий путь юной писательницы.



СЕБЕ



Держи удар, дистанцию и слово.

Держи святую воду и перо.

Держи картошки полное ведро

И ожерелья лука золотого.

Они – твоё несметное добро,

Защита – от любого духа злого.



Держи свой путь, а не по ветру нос.

Держи любовь – бессмертно, тайнозримо,

Чтоб не держать ни краски для волос,

Ни туши для ресниц, ни щёк для грима,

На это есть всегда огромный спрос, –

Но подлинника страсть неповторима.



Держи улыбку, не оскалив пасть,

Как демонстранты кафеля зубного.

Держи себя, чтоб в лапы не попасть

Общественности, рвущейся во власть –

Кроить страну, как ножницы портного!

Держи удар, дистанцию и слово.



Ядро поэтики – атлетики ядро,

Держи ядро атлетики поэтской.

Ядрёный дух держи природы детской.

Держи картошки полное ведро.

Держи святую воду и перо.

Они – твоё несметное добро.



***



Многие современники познакомились с этой талантливой поэтессой благодаря ее стихам для детей. Но есть и те, кто знает и любит Юнну Петровну как серьезную поэтессу, которая не прогибалась под «генеральную линию», а говорила свое веское слово через свои произведения.



Читаем далее...
Метки:   Комментарии (0)КомментироватьВ цитатник или сообщество

Следующие 30  »

<ядро - Самое интересное в блогах

Страницы: [1] 2 3 ..
.. 10

LiveInternet.Ru Ссылки: на главную|почта|знакомства|одноклассники|фото|открытки|тесты|чат
О проекте: помощь|контакты|разместить рекламу|версия для pda