Задать вопрос
  • Почему ядро странно себя ведет?

    jcmvbkbc
    @jcmvbkbc
    "I'm here to consult you" © Dogbert
    Я пишу новую операционную систему и столкнулся с непредвиденным поведением ядра

    Обычно в этот момент люди начинают пользоваться отладчиком.

    проблема в файле kernel\kernel.asm

    Нет. Ядро твоё не запускается, потому что бутлоадер пытается загрузить его поверх собственного кода:

    0x00008122:  bb 00 81                 movw     $0x8100, %bx
    0x00008125:  50                       pushw    %ax
    0x00008126:  b8 00 00                 movw     $0, %ax
    0x00008129:  8e c0                    movw     %ax, %es
    0x0000812b:  58                       popw     %ax
    0x0000812c:  cd 13                    int      $0x13

    -- это вызов int 13 из бутлоадера, посмотри на адреса. Вот куда возвращается выполнение после этого int 13:

    0x0000812e:  00 00                    addb     %al, (%bx, %si)
    0x00008130:  00 00                    addb     %al, (%bx, %si)
    0x00008132:  00 00                    addb     %al, (%bx, %si)
    0x00008134:  00 00                    addb     %al, (%bx, %si)
    0x00008136:  00 00                    addb     %al, (%bx, %si)
    0x00008138:  00 00                    addb     %al, (%bx, %si)
    0x0000813a:  00 00                    addb     %al, (%bx, %si)
    0x0000813c:  00 00                    addb     %al, (%bx, %si)
    0x0000813e:  00 00                    addb     %al, (%bx, %si)
    0x00008140:  00 00                    addb     %al, (%bx, %si)
    0x00008142:  00 00                    addb     %al, (%bx, %si)
    0x00008144:  00 00                    addb     %al, (%bx, %si)


    Такие дампы ты можешь получить запуская своё ядро в qemu следующим образом:
    qemu-system-i386 -hda collector.bin -d in_asm,exec,cpu -D log
    Ответ написан
    7 комментариев
  • Unity 2d. У меня возникает следующая проблема. Можете, пожалуйста, объяснить, что не так?

    @Ezekiel4
    Охотник на пиратов и сборщик монолитов
    Кратко: у вас дубликат класса, переименуйте этот или найдите другой класс с таким же именем.

    Детально: есть такая штука, namespace. Грубо говоря, это каталог всех классов, которые к нему принадлежат. Вы namespace явно не задаёте, поэтому этот (а возможно и другие) класс лежат в так называемом global namespace. Чтобы всё правильно работало, в рамках одного пространства имён каждый класс должен иметь уникальное название. Ошибка говорит о том, что у вас уже есть такой класс.
    Если для вас принципиально важно иметь два класса с одинаковым названием, один из их переместите в другое пространство имён:

    public namespace MyNamespace {
    
        public class MyClass {
            //code
        }
    }


    Чтобы потом этот класс использовать в другом коде, укажите директиву:

    using MyNamespace;
    Ответ написан
    1 комментарий
  • Почему я в поиске по хештегу нашел свой давно удаленный пост? Как удалить удаленные посты 10000%?

    @mkone112
    Начинающий питонист.
    Очень просто:
    как узнать точно ли удалены посты

    Все что попадает в интернет - остается в интернете.
    и как удалять, чтобы окончательно они не гуляли?

    Никак.
    Ответ написан
    4 комментария
  • Возможно ли заменить Excel?

    Adamos
    @Adamos
    Ёксель нужно не "заменить", а просто выкинуть.
    То, что у вас уже более-менее формализованы обрабатываемые данные - это хорошее начало для того, чтобы внедрить нормальную систему на веб-технологиях.
    Сначала обкатать на внутреннем сервере, потом выложить в интернет, чтобы сотрудники не были привязаны к офису вовсе.

    Вопрос в том, почему это называется "журналирование". Глупо автоматизировать только часть работы, стоит смотреть шире и привязать к системе все, что может делаться внутри нее. Потому что у таких систем самый большой геморрой - это как раз внешние связи. Когда все, что возможно, делается через нее, система из обузы превращается в помощника и контролера.
    Ответ написан
    Комментировать
  • Можно ли размещать объявления с других сайтов у себя с целью наполнения контентом?

    alexgp13
    @alexgp13
    Руководитель ИТ-проектов
    Незаконно, причем можно получить и иск от площадки, и негатив от авторов объявлений.
    Отдельно отмечу, что площадки неплохо научились бороться с парсингом и мошенничеством. В частности, большинство площадок скрывают реальный номер телефона продавца.
    Вообще, на всех площадках есть пользовательские соглашения, стоит их почитать.
    Ответ написан
    2 комментария
  • Как создать собственные тайлы на основе OSM?

    @pfg21
    ex-турист
    елси правильно, то начать с чтения вики.осм
    https://wiki.openstreetmap.org/wiki/Rendering

    если побыстренькому, то сделать правильный запрос в поисковик
    https://github.com/mapnik/mapnik/wiki/Mapnik-Insta...
    https://switch2osm.org/serving-tiles/
    use.openstreetmap.ru/serving-tiles (на русском !!)

    попинать хабр
    https://habr.com/ru/post/144675/

    и т.д. и т.п.
    емнип видосики даже есть.
    Ответ написан
    2 комментария
  • Какие права выставить на файл sqlite базы?

    shurshur
    @shurshur
    Сисадмин, просто сисадмин...
    Лучше не "ставить из пакета". Это лишает смысла проверку целостности пакета по контрольным суммам, усложняет установку обновлений. Поэтому правильнее иметь некую "эталонную" базу, которую копировать в целевое размещение. Как вариант, в пакете держать .sql (.sql.gz) для инициализации базы. Саму инициализацию делать скриптом (как initdb в postgres) или описать в инструкции что куда скопировать/выполнить. К слову, для процесса обновления тоже может потребоваться механизм, так как структура данных может меняться в новых версиях. Процесс первичной инициализации и последующего обновления можно сделать частью post-install скрипта пакета.

    Базу следует класть не в /usr (в классической теории UNIX-систем /usr может вообще монтироваться в read-only, например, по nfs), а в /var, лучше /var/lib/имя_программы. Сделать специальную системную группу без пользователей вполне нормально, так делают. В инструкции следует описать, что пользователей надо в неё добавлять. Соответственно, на файл права 660, на каталог 770.

    Если пользователи будут работать с этой базой параллельно-одновременно, а не строго по очереди, то потребуется ещё механизм блокировок. В этом случае лучше рассмотреть полноценную СУБД или хотя бы вынести работу с базой в отдельный сервис, с которым программа будет взаимодействовать.
    Ответ написан
    7 комментариев
  • Как исправить нечитаемое имя отправителя и получателя почтового сообщения?

    Rsa97
    @Rsa97
    Для правильного вопроса надо знать половину ответа
    ?utf-8? - исходная строка была в кодировке UTF-8.
    ?B? - закодировано в Base64.
    0KnQtdC/0LAg0KHQзtdGA0LPQtdC5 - сама строка в Base64.
    print base64_decode('0KnQtdC/0LAg0KHQзtdGA0LPQtdC5'); // Щепа Сергей

    Кроме Base64 может встретиться кодировка Quoted-printable, обозначаемая как ?Q?. В этом случае заголовок будет выглядеть как
    ?utf-8?Q?=D0=A9=D0=B5=D0=BF=D0=B0 =D0=A1=D0=B5=D1=80=D0=B3=D0=B5=D0=B9?=

    Ну и кодировка исходной строки может быть любая. Для перекодирования можно использовать iconv().
    Ответ написан
    Комментировать
  • Из-за чего платформа может дергаться?

    EveningEugene
    @EveningEugene
    Unity-разраб
    Если ты используешь FixedUpdate (что правильно для физики), то соответственно нужно использовать fixedDeltaTime, а не deltaTime (которое для Update)
    Ответ написан
    4 комментария
  • Как запретить доступ мобильным устройствам к интернету?

    @Drno
    Ну по нормальному надо вынести вифи клиентов в отдельную подсеть. И на ней запретить
    Но на тп-линк это врятли

    Можно на dhcp сервере поставить выдачу неправильного шлюза.
    А на ПК вручную выставить нужный
    Ответ написан
    2 комментария
  • Разница между if else и try catch?

    @Akela_wolf
    Extreme Programmer
    Есть такой принцип: "если убрать все обработчики исключений, программа должна нормально функционировать при условии ввода корректных данных" (Д.Томас, Э.Хант "Программист-прагматик"). Поэтому вопрос - является ли введенный пользователем нуль корректными данными? Если да - то его надо оборачивать в if. Если же это некорректные с точки зрения программы данные - то можно кидать исключение.

    То есть исключение должно выбрасываться при поступлении на вход программы некорректных данных. А какие именно данные считать некорректными - это определяет разработчик (или заказчик) программы.
    Ответ написан
    5 комментариев
  • Как перевезти .app файл в .exe?

    @rPman
    macbook не подходит для разработки windows приложений, как и наоборот, pc не подойдет для разработки под macos и osx.
    В твоем случае нужно запустить windows в виртуалке и уже из нее заниматься сборкой приложения

    p.s. если все же надо, ищи по ключевым словам macos windows кросскомпиляция, в зависимости от цели может ничего не получиться.
    Ответ написан
    1 комментарий
  • Как сделать музыку на сайте так же как в вк?

    ThunderCat
    @ThunderCat Куратор тега Веб-разработка
    {PHP, MySql, HTML, JS, CSS} developer
    Создаю свой мессенджер, задача такова что нужно сделать список абсолютно всех мелодий которые есть в мире, так же как в вк, как это можно реализовать?
    Так, давайте прикинем что нам нужно для реализации. Программная часть собственно нас не сильно интересует, так как на фоне прочих затрат найм какого-нибудь Линуса Торвальдса на пару месяцев вообще теряется в общей сумме.

    1) Хранилище. По примерным оценкам в мире в цифровом виде около 500 000 000 оригинальных музыкальных композиций. Учитывая ремиксы и каверы - можно смело брать миллиард. Средний вес композиции среднего качества - 5 Мб. То есть порядка 5 петабайт, если хранить не в лучшем качестве. Учитывая что это должно иметь какое-то резервное хранение (у нас тут серьезный сервис все-таки), умножаем на 2 (10 петабайт). При стоимости около 2 центов за гиг в месяц, 10 000 000 Гб * $0,02 = $200 000 в месяц хранение. Ну, бюджетненько в целом.

    2) БД, которая хранит данные обо всех этих композициях. Стоимость хранения будет поменьше, но думаю к 20-50К все равно где-то выйдет.

    3) Другой вопрос - где брать эти данные, так как не все музыкальные файлы содержат полное описание композиции. На перебор 1 миллиарда записей и сортировки их по жанрам, альбомам, исполнителям, дате выпуска и т.д. уйдет некоторое время. Допустим 50% композиций будут иметь нормальное описание, остается все те же 500 миллионов композиций на обработку. Пусть на каждую понадобится 2 минуты работы, внести данные в поля (хотя их еще как-то найти надо, но допустим), тогда получим 1 миллиард минут. Это 1900 лет работы, или 16 666 667 часов. Час работы самого дешевого индуса - 3 бакса/час. 16 миллионов * 3 - давайте округлим до 45 миллионов. Даже если сократить этот пункт в 10 раз - выйдет под 4 миллиона. Рабский труд сегодня дорог как никогда...

    4) Теперь платформа которая будет всем этим ворочать, так как у нас в сервисе должны же какие-то пользователи завестись вроде. Ну, на сервера можно смело отложить небольшую сумму, тоже где-то 20-30К, для начала сойдет.

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

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

    По итогу на год:
    $200 000 * 12 = $2 400 000 хранилище
    $20 000 * 12 = $240 000 бд
    $20 000 * 12 = $240 000 сервера приложения
    $4 000 000 работы
    Итого: чуть меньше 7 миллионов баксов.
    Ответ написан
    2 комментария
  • Копирование файлов с сервера на сервер происходит через компьютер клиента?

    @nApoBo3
    Да вы правильно понимаете если проводник открыт на клиенте, то он копирует через клиента.
    Ответ написан
    Комментировать
  • Как запустить приложение с локальной базой данных на другом пк?

    Adler_lug
    @Adler_lug
    А тут что написано?
    HfhGPBu.png

    P.S. А почему mssql ?
    Ответ написан
    Комментировать
  • Стоит ли затрагивать асм и на какой стадии?

    AlexNest
    @AlexNest
    Работаю с Python/Django
    Короткий ответ: что хотите, то и учите.
    Ответ подлиннее: в текущих реалиях, как впрочем и до этого, сферы применения ассемблера и PHP не пересекаются. Ассемблер используется для крайне низкоуровнего и системного программирования (прошивки устройств, дрова и части ОС). В то время как PHP изначально создавался для WEB.
    К тому-же, надо понимать, что синтаксис и уровни языков принципиально отличается и применять опыт программирования на одном языке, к программированию на другом практически невозможно.
    Хотите работать с железками - учите ASM (хотя сейчас, в целом, для рядовых задач, куда лучше использовать плюсы)
    Хотите в веб - учите PHP ну или любой другой высокоуровневый язык.
    Ответ написан
    Комментировать
  • Как исправить ошибку в юнити CS1061?

    QuiShimo
    @QuiShimo
    Держу путь на бекэнд :)
    Т.к. самого текста ошибки нет, предположу, что это опечатка вmoney.ToSpring()
    Должно быть так:
    money.ToString()
    Ответ написан
    Комментировать
  • Как сделать чтобы работала анимация при нажатии на клавишу?

    KraGenDeveloper
    @KraGenDeveloper
    Unity Developer
    ну вообще тебе нужно
    1. Создать анимацию поднятия
    2. Адекватно всё наладить в Аниматоре
    3. Сделать параметры по которым будет осуществлятся включение анимации (Для анимации "Подъём предмета" советую юзать параметер тригер)
    И короч уже в скрипте который прикреплён к объёкту который имеет компонент аниматор в коде нужно написать чо то тип такого
    private Animator _animator;
    void Start(){
    _animator = GetComponent<Animator>();
    }
    void Update(){
    if(Input.GetKey(KeyCode.E){
         _animator.SetTrigger("Raise");
      }
    }

    animator.SetTrigger("Raise"); это ты вызываешь параметер по которому включается анимация. Если ты не понимаешь как работать с анимациями вот годный урок - Видео
    И документация по получению нажатой кнопки - Получение нажатой кнопки
    Получение касания кнопки/мышки и т.д и т.п.
    Если помог отметь пожалуйста решением буду благодарен :)
    Ответ написан
    6 комментариев
  • Как сделать аналог google play на wordpress?

    shurshur
    @shurshur
    Сисадмин, просто сисадмин...
    Магазин приложений - это прежде всего про удобную их установку. Скачивать apk с сайта, разрешать установку из недоверенных источников - это неудобно и отпугивает. Для магазина приложений нужно приложение-установщик. Которое в идеале ещё и в Google Play либо в штатные прошивки каких-то телефонов надо будет протолкнуть, чтобы пользователям не приходилось его с бубном устанавливать.

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

    На вордпрессе можно сделать в лучшем случае блог о приложениях со ссылками на их apk. Но это даже не 5% от того, что нужно для "аналога Google Play". И да, не надо делать как те недавно высмеянные дельцы, которые с пафосом презентовали "российский play", оказавшийся переименованным f-droid...
    Ответ написан
    Комментировать