Архив за 22 апреля 2013

Пишу игрушечную ОС (доступнее о планировщике)
Отсутствие комментариев к двум моим предыдущим постам, несмотря на большое число лайков, привели меня к выводу, что подавляющее большинство ничего не поняли. Просто, будучи давно погружённым в тему, я проявил невнимательность к своему читателю. Моя вина, буду исправляться. Итак, поговорим о планировании доступным языком.

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

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

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

Кроссбраузерное воспроизведение видео на html5
Продолжительное время для воспроизведения видео на сайтах использовался в большинстве случаев flash. Но выход html5 принес свои изменения. И сейчас мы рассмотрим как использовать html5 для видео на Вашем сайте.
Читать полностью »

в 21:29, , рубрики: django, python, reports, метки: ,

Доброго времени суток.

Так случилось, что моя работа связана с написанием отчетов.
Этому я посвятил около 8 лет. Отчеты — это глаза бизнес-процесса и информация,
необходимая для принятия оперативных решений.

Вначале наш отдел делал отчеты,
— Принимая задачи по outlook
— Составляя sql-запрос
— Отправляя результаты заказчику в xls
— В лучшем случае, сохраняя sql-код куда-то в папку (а иногда и не сохраняя)

Но это было скучно и неинтересно. Так появилось простейшее приложение на PHP,
в котором каждый отчет был представлен в виде php-файла с одним классом, имеющим единственный (помимо конструктора) метод show()

В таком виде, система прожила 5,5 лет, за которые мной и еще одним человеком было написано более 500 различных отчетов.
В процессе появился опыт и стало понятно, что многое (если не все) сделано не так, да и PHP уже не устраивал.

Сервер отчетов был переписан на django, где была «админка» и код приложения уже не правился.
В процессе работы снова накопилось несколько мыслей,
в итоге сервер был снова переписан.

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

Это рабочий инструмент, который вы можете (если захотите) использовать в работе,
который нам использовать просто нравится.

Читать полностью »

Читал я сегодня новости в ВК, и наткнулся на пост о каком то проекте (игре), и что команда работающая над ним ищет помощь.
Зашел на их страничку в соц сети. Просмотрел посты да арты со скриншотами проекта, мне очень понравилось

вот несколько скринов готового мира(чем то СТАЛКЕР -Зов Припяти напомнило) ):

imageЧитать полностью »

Динамический контроль доступа: как работать с утверждениями В предыдущей статье данного цикла я немного вас ввел в курс дела и рассказал, что собой представляет динамический контроль доступа, чем он отличается от предоставления доступа на основе списков ACL, о его преимуществах, а также – буквально в двух словах – o наиболее частых сценариях, когда целесообразно применять данную функциональную возможность. Статья была немного громоздкой, наполненной исключительно теоретическим материалом, да и, вообще сложной для восприятия, так как в ней отсутствовали описания каких-либо пошаговых процедур.
Начиная с этой статьи, я постараюсь исправиться и рассказать вам о том, с чего же необходимо начинать знакомство с этой технологией. А начинать, как видно из самого заголовка статьи, следует ни с чего иного, как с утверждений (они же, как я уже писал в предыдущей статье, еще называются заявками, клаймами и прочими словами, которыми можно заменить claim), которые смело можно отнести к одной из основных составляющих динамического контроля доступа. Сейчас же я постараюсь дать как можно меньше теоретического материала и практически сразу перейти к пошаговой процедуре. Итак, что же вы для себя сможете почерпнуть из этой относительно небольшой статьи?Читать полностью »

Что то телефоны Zopo проходят мимо меня. После ZP100 это второй телефон этой фирмы, который попал в мои руки. Однако, я уже писал о телефоне подобного форм-фактора: Haipai I9220 — Как китайцы копировали Galaxy Note, а получился 5" планшет. Тот телефон получился очень удачным — и GPS там был отличный, и батарея отличная, вот только экран подкачал. Вот и посмотрим, оправдает ли наши ожидания идейный последователь I9220, правда от другой компании.
image
Кстати, у китайцев похоже, новый тренд — телефоны формата Galaxy Note II и S3 с соответствующим дизайном и оформлением. Если год назад это были единичные экземпляры, то сейчас это приняло какой-то массовый характер — маленьких телефонов становится все меньше и меньше. Мой коллега уже рассказывал о одним из его конкурентов — THL W8, а я расскажу о телефоне похожего формата, но от другой фирмы. На мой взгляд ZP950 — это больше Note, а W8 — это китайский S3/S4

image Экран: 5,7", 1280x720, IPS, 258 dpi
image Процессор: MTK6589 (1.2 ГГц, 4 ядра)
image Видеоускоритель: PowerVR SGX544
image Операционная система: Android 4.2.1 (Jelly Bean)
image Оперативная память: 1 ГБ
image Пользовательская память: 4/16 ГБ
image Камера: фронтальная 5 Мп, задняя — 8 Мп
image Аккумулятор: 2500 мАч
image Размеры: 158 x 83.5 x 10.2 мм
image Сертифицирован по уровню SAR — 0.593W/kg(допустимый — 2W/kg)
Читать полностью »

В сети появилась информация о новом продукте китайской компании Smallart. TV-приставка Uhost3, слегка напоминающая хоккейную шайбу, работает под управлением операционной системы Android 4.1 Jelly Bean.

Smallart Uhost3

Читать полностью »

«Великих аналитиков взращивают, а не обучают. Для работы аналитиком требуется множество личностных черт, а не знаний каких-либо технологий. Стандартного обучающего курса или описания обязанностей такого специалиста не существует. В аналитики приходят из разных профессий, и, скорее всего, у всех новичков есть пробелы в знаниях и навыках»
Вигерс Карл «Разработка требований к программному обеспечению», 2004
Как стать настоящим аналитиком требований. Часть 1. Великими аналитиками рождаются или становятся?
Карл Вигерс написал свою книгу практически 10 лет назад, но ситуация не изменилась – настоящих аналитиков единицы.
Эта серия статей – для тех, кто собирается стать профессиональным аналитиком требований. Информация собрана из личного опыта, книги Карла И. Вигерс «Разработка требований к программному обеспечению», а так же из опыта других аналитиков из сети Интернет.Читать полностью »

Что происходит, когда вы отправляете что-то по почте? Что происходит в промежутке между отправкой и получением посылки? Сколько людей и процессов задействованно и сколько этапов занимает этот процесс?
На эти вопросы я хотел получить ответ. Так что вместо того чтобы сидеть на попе, я сделал простой проект, чтобы увидеть всё самому. Я поместил маленькую камеру в коробку, сделал таймер на Arduino и отправил это по почте.
Читать полностью »

image
(картинка для привлечения внимания)

Данная статья является сборником интересных мне идей для Google Glass. Надеюсь многие захотят высказать своё мнение либо предложить те функции которые нужны именно им. Сразу предупрежу что эта статья является лишь моими идеями, которые не обязательно должны быть сейчас технически реализуемыми и отражать реальное состояние вещей. Просто полёт моей фантазии :)
Читать полностью »