Могут ли pin’ы USART_TX/USART_RT работать как UART_TX/UART_RX? Наоборот явно нет. Ну а если мне нужен UART, а свободные выходы USART, могу ли я их ипользовать и если да, что дополнительно в них необходимо сконфигурировать?
Привет ребята.
Пришло ко мне сегодня желание навелосипедить по полной.
Навелосипедил:
struct node_s {
void *value;
struct node_s *children[256];
};
typedef struct node_s node_t;
node_t *
create_node()
{
return calloc(1, sizeof(node_t));
}
node_t *
create_storage()
{
return create_node();
}
int
insert(node_t *root, char *key, void *value)
{
node_t *curr_node = root;
size_t k;
size_t c;
for (k = 0; key[k]; k++) {
c = (size_t) key[k];
if (NULL == curr_node->children[c]) {
curr_node->children[c] = create_node();
}
curr_node = curr_node->children[c];
}
if (NULL != curr_node->value) {
return 0;
}
curr_node->value = value;
return 1;
}
void *
get(node_t *root, char *key)
{
node_t *curr_node = root;
size_t k;
size_t c;
for (k = 0; key[k]; k++) {
c = (size_t) key[k];
if (NULL == curr_node->children[c]) {
return NULL;
}
curr_node = curr_node->children[c];
}
return curr_node->value;
}
...
...
...
node_t *storage = create_storage();
// тут вставили 1113 тестовых элементов
// по строковым ключам разной длины (от 1 до 39 символов),
// каждый из них уникален,
// но большая часть не уникальна по префиксам
insert(storage, "blahblah", "A_LA_POINTER"
;
// типа ищем
clock_t tic = clock();
size_t i;
for (i = 0; i < 500000; i++) {
get(storage, "blahblah_not_found_key"
;
}
clock_t toc = clock();
printf("test time : %f\n", (double) (toc - tic) / CLOCKS_PER_SEC);
// ~0.000207
И ещё я посчитал сколько места такая неэффективная страхолюдина занимает для всех этих индексов: 1697228 байт.
Ну, это, конечно, швах. Да хрен с ним. Дело не в этом.
А вот в этом:
Мне нужна какая-то, внешне вот стаким интерфейсом хреновина, контейнер для данных.
Я посмотрел на хеш таблицу, но:
1) Хеш таблица, перед тем как искать, в цикле по строке получает хеш сумму строкового ключа, и только потом ищет по заявленному O(1). У меня же тут сразу во время цикла по строке происходит поиск. Хеширование ключа не требуется.
2) Доступная мне реализация хеш таблицы «искаропки» требует кучу каких-то танцеваний при инициализации. Так ещё и просит указать хотябы примерное количество элементов, которые в ней будут храниться. А я не знаю!!! Поставишь много — пожрёт много. Поставишь мало — в какой-то момент изза перестройки при выделении дополнительного куска памяти для индексов просядет скорость. Опять же у меня в велосипеде, кажется, такой проблемы нет — скорость (наверное) всегда примерно средняя, каллочит почуть и ладно.
Ну, размер выделенной памяти, конечно, ужас. 1.6 метра на 1.1к строчек. Или не ужас?
Нет, не хочу использовать свой велосипед. Он просто получился.
А вы, господа гуру, подскажите-ка немощному страдальщику какой мне контейнер правильно выбрать под свои хотелки?
Вышло мажорное обновление «швейцарского перочинного ножа» спасения и восстановления локальной системы SystemRescue 7.00.
Изменения:
- Переименование проекта: SystemRescueCd => SystemRescue
- Новый адрес веб-сайта: https://www.system-rescue.org/
- Версия ядра обновлена до LTS linux-5.4.71
- Добавлен инструмент снятия защиты dislocker для доступа к дискам, зашифрованным с использованием bitlocker
Свежая версия от 1 ноября 2020 после 20 сентября.
https://youtube-dl.org/ - ссылки кроме ссылки на гитхабовскую репу рабочие, доступна линуксовая сборка, *.exe и исходный код.
Кто пользуется - рекомендую скачать , так как копирасты не успокаиваются https://www.opennet.ru/opennews/art.shtml?num=53990
Привет!
Люди, кто пользовался этой утилитой?
Я проббовал ее уже на двух машинках с убунтой сервер 18,4 и кубунтой.
Утилиту скачивал с сайта автора, а также устанавливал из универсального репозитория убунты. Всякий раз одинаковый результат.
Создал на пробу файлик с простейшим содержанием
#!/bin/bash -x
echo mytest
exit
После компиляции
shc -r -T -f ./test.sh
появляются, как и полагается, два файла - .с и .х, последний с исполняемым флагом. После его запуска в консоли он просто висит безрезультатно, пока его не снимет Ctrl+C.
Бинарный файл вместо 20 байт в источнике превращается в 10К.
Она вообще работает у кого?
Всем доброго денечка! У меня в KDE5 начались странные глюки с локализацией. Половина слов просто стала на английском. Сейчас в моем оконном менеджере Dolphin это выглядит так:
Точки входа:
Домашняя папка
Сеть
Корневая папка
Корзина
Desktop
Документы
Downloads
Недавно измененные:
Modified Today
Modified Yesterday
В этом месяце
В прошлом месяце
Искать:
Документы
Изображения
Audio
Видео
Что это за жесть - непонятно. Но так стало примерно месяц назад, хотя ничего конкретно сам не обновлял.
Вывод команды locale:
LANG=ru_RU.UTF-8
LANGUAGE=
LC_CTYPE="ru_RU.UTF-8"
LC_NUMERIC="ru_RU.UTF-8"
LC_TIME="ru_RU.UTF-8"
LC_COLLATE="ru_RU.UTF-8"
LC_MONETARY="ru_RU.UTF-8"
LC_MESSAGES="ru_RU.UTF-8"
LC_PAPER="ru_RU.UTF-8"
LC_NAME="ru_RU.UTF-8"
LC_ADDRESS="ru_RU.UTF-8"
LC_TELEPHONE="ru_RU.UTF-8"
LC_MEASUREMENT="ru_RU.UTF-8"
LC_IDENTIFICATION="ru_RU.UTF-8"
LC_ALL=
Содержимое файла ~/.config/user-dirs.dirs:
# This file is written by xdg-user-dirs-update
# If you want to change or add directories, just edit the line you're
# interested in. All local changes will be retained on the next run.
# Format is XDG_xxx_DIR="$HOME/yyy", where yyy is a shell-escaped
# homedir-relative path, or XDG_xxx_DIR="/yyy", where /yyy is an
# absolute path. No other format is supported.
#
XDG_DESKTOP_DIR="$HOME/Рабочий стол"
XDG_DOWNLOAD_DIR="$HOME/Загрузки"
XDG_TEMPLATES_DIR="$HOME/Шаблоны"
XDG_PUBLICSHARE_DIR="$HOME/Общедоступные"
XDG_DOCUMENTS_DIR="$HOME/Документы"
XDG_MUSIC_DIR="$HOME/Музыка"
XDG_PICTURES_DIR="$HOME/Изображения"
XDG_VIDEOS_DIR="$HOME/Видео"
Содержимое файла ~/.config/user-dirs.locale:
ru_RU
Что делать то?
Здравствуйте. Мне понадобилось скачать с ютуба сборники музыки в mp3, очень много. Я воспользовался youtube-dl, вставив в текстовый файл все ссылки (youtube-dl -i -x –audio-format mp3 –audio-quality 128K -a mir.txt). И все бы хорошо, но проблема в том, что эти файлы весят 200-400 MB, и он их сначала очень долго скачивает, потом еще дольше конвертирует (10 штук - весь день). А мне из этих сборников достаточно 30 MB, поэтому дальше вырезаю с помощью audacity. У youtube-dl есть опция ограничения размера, но при этом он просто не скачивает такие файлы, а нужно чтобы скачивал, но только 30 MB. Пожалуйста подскажите как это сделать с youtube-dl или автоматизировать систему без него. Буду очень благодарен.
Обновление : setup-2.13.7-2.fc33.noarch 1/2
предупреждение: /etc/profile создан как /etc/profile.rpmnew
Error unpacking rpm package setup-2.13.7-2.fc33.noarch
Проверка : setup-2.13.7-2.fc33.noarch 1/2
Проверка : setup-2.13.6-2.fc32.noarch 2/2
Сбой:
setup-2.13.6-2.fc32.noarch setup-2.13.7-2.fc33.noarch
Ошибка: Сбой транзакции
есть варианты борьбы с этим???
Добрый день!
В интернете много инструкций по развертыванию, но начинаю ставить и почти везде облом.
то MySQL на 10 дебиане нет, то еще по мелочи…
Можете подсказать как данный модуль на дебиане 10.6 называется ?
rsyslog-mysql
или как ставится ?
Привет всем. Встала задача именно «спроектировать» сайт, то есть схематически набросать как он будет выглядеть, поэтому спрашиваю, какими утилитами вы пользуетесь? От руки можно но они растут из неподходящего места.
Возможно ли в STM32CubeIDE (Eclipse CDT пригать медлу последним открытым документов и следующим открытым например при помоши Ctrl-Click закрывая его при помощи Ctrl-W (а что если и первый документ и то, что в нем было надено по Ctrl-Clitck.
Медитировал над: http://blog.atollic.com/editor-power-130-useful-keyboard-shortcuts-plus-the-only-one-you-need-to-know.
Даже на stackoverflow спросил: https://stackoverflow.com/questions/64660612/eclipse-cdt-stm32cubeide-how-to-switch-to-previously-opened-header-source.
И крикну, а в ответ тишина.
Добрый день.
Версия Qt с данным багом: Qt5.15.1.
Версия Qt без данного бага: Qt5.12.9.
Повторно описывать подробно не буду, если что милости прошу на страницу бага (https://bugreports.qt.io/browse/QTBUG-88125).
Если у нас есть некий производный от QObject
(или другого в его иерархии) с макросом Q_OBJECT
и если в данном заголовочном файле есть подключение <bsoncxx/types.hpp>
то будет ошибка компиляции метаобъектным компилятором Qt (MOC).
Проблема заключается в следующих строках файла <bsoncxx/types.hpp>
:
enum class type : std::uint8_t {
#define BSONCXX_ENUM(name, val) k_##name = val,
#include <bsoncxx/enums/type.hpp>
#undef BSONCXX_ENUM
};
И вот содержимое <bsoncxx/enums/type.hpp>
:
#ifndef BSONCXX_ENUM
#error "This header is only meant to be included as an X-macro over BSONCXX_ENUM"
#endif
BSONCXX_ENUM(double, 0x01)
BSONCXX_ENUM(utf8, 0x02)
BSONCXX_ENUM(document, 0x03)
BSONCXX_ENUM(array, 0x04)
BSONCXX_ENUM(binary, 0x05)
BSONCXX_ENUM(undefined, 0x06)
BSONCXX_ENUM(oid, 0x07)
BSONCXX_ENUM(bool, 0x08)
BSONCXX_ENUM(date, 0x09)
BSONCXX_ENUM(null, 0x0A)
BSONCXX_ENUM(regex, 0x0B)
BSONCXX_ENUM(dbpointer, 0x0C)
BSONCXX_ENUM(code, 0x0D)
BSONCXX_ENUM(symbol, 0x0E)
BSONCXX_ENUM(codewscope, 0x0F)
BSONCXX_ENUM(int32, 0x10)
BSONCXX_ENUM(timestamp, 0x11)
BSONCXX_ENUM(int64, 0x12)
BSONCXX_ENUM(decimal128, 0x13)
BSONCXX_ENUM(maxkey, 0x7F)
BSONCXX_ENUM(minkey, 0xFF)
Приветствую, комрады!
Интересует вопрос, на ниве популярности переползания в web и ориентации на бизнес-логику приложений вроде бы выглядет нормальным реализовывать сервисы (интересует API) на всеми забытом smalltalk.
А что, хорошие вроде бы начальные: image based код (контейнирозоваться должно с пол пинка, получаем замкнутую кодовую базу), в теории очень не плохая производительность, большая часть диалектов/реалзаций имеют оптимизированную VM, синтаксис прост как пять копеек, средства разработки отличные…
Есть ли примеры success story и серьезные web-продукты? Есть ли туториалы из разряда «пишем на pharo + vue todo приложение» и тд? Заранее спасибо.
З.Ы.: на ниве популярности electron выглядит вполне вкусно и какой-нибудь софт на Smalltalk для декстопа. Портирован почти везде, умеет много, код может быть схож с вебприложением (поменяется по идее только слой view).
Доброго времени суток, ЛОР!
Проблема
При распаковке архива(сам же и паковал, но на другом устройстве) даёт ошибку 12 - error: invalid zip file with overlapped components (possible zip bomb).
Команда для распаковки: unzip -P <тут пароль> archive.zip -d .
В архиве лежит gz архив.
В gz лежит маленькая rootfs.
Вопрос
Как это обойти?
Librem Mini — это мощный и доступный настольный мини-ПК в компактном форм-факторе. Librem Mini ставит на первое место свободу, конфиденциальность и безопасность, поэтому он поставляется со свободной прошивкой PureBoot и операционной системой PureOS, которая включает только свободное и открытое программное обеспечение.
Технические хар-ки:
- Процессор: Intel Core i7-10510U (Comet Lake), активное охлаждение, 4 ядра, 8 потоков, частота до 4.6ГГц
- Графика: Intel UHD Graphics 620
- ОЗУ: DDR4-2400, 2 слота SO-DIMM, максимальный объём 64GB, 1.2V DDR4 L2133/2400MHz
- Жёсткий диск: 1 SATA III 6Gbps SSD/HDD (7мм), 1 M.2 SSD (SATA III/NVMe x4)
- Видео: 1 HDMI 2.0 4K@60Hz, 1 DisplayPort 1.2 4K@60Hz
- USB: 4 x USB 3.0, 2 x USB 2.0, 1 x USB Type C 3.1
- Аудио: 3.5мм AudioJack (совмещённый микрофонный вход и выход для наушников)
- Сеть: 1 RJ45 (Gigabit Ethernet LAN), опционально WiFi модуль Atheros ATH9k, 802.11n (2.4/5.0 GHz)
- Bluetooth: Ar3k Bluetooth 4.0 (опционально)
- Питание: DC-IN Jack
- Размеры: 12,8 x 12,8 x 3б,8 см
- Вес: 1кг
Заказать https://shop.puri.sm/shop/librem-mini/
Цена $699
Raspberry Pi Foundation представила настольный компьютер Raspberry Pi 400.
Raspberry Pi 400 – это полноценный персональный компьютер, встроенный в компактную клавиатуру. Благодаря четырехъядерному 64-битному процессору, 4 ГБ оперативной памяти, беспроводной сети, поддержки двух мониторов и воспроизведения 4K видео, а также 40-пиновому интерфейсу GPIO, этот компьютер является самым мощным и простым в использовании компьютером Raspberry Pi.
Компьютер будет поставляться в двух вариантах: просто клавиатура за $70 или набор из клавиатуры, руководства начинающего пользователя, SD-карты с Raspberry Pi OS, фирменных кабелей и мыши за $100.
Proxychain-ng игнорирует настройки в /home/user/proxychains-ng/src/proxychains.conf. Меняю порт tor с 9050 на 9150/9051 - в терминале при запуске firefox всё равно обращается на 9050. Добавляю ниже новые прокси, игнорирует и ходит через tor. Закоментировал строку 127.0.0.1 9050 всё равно ходит через tor. Раскоментировал/закоментировал разные варианты цепочек, перезагружал сеть, ПК, всё равно ходит только через tor.
Хочу создать цепочку tor -> socks5 прокси, если tor не запущен - к прокси напрямую не подключится.
Что я делаю не так?
На домашнем компьютере (Linux)запущено несколько служб/серверов, порты от них проброшены в маршрутешаторе за NAT,но ряд служб работают без авторизации, и это не есть безопасно..
Хочу поставить какой-нибудь локальный прозрачный прокси сервер с автрризацией(логин /пароль) за NAT пробросить его порт, а уже у него в конфигах настроить перенаправление на порт нужной службы в локальной сети..
т.е. чтоб из интернета пользователь стучался на порт этого прокси, и если логин)пароль правильные перенаправлялся на порт нужной службы..
..
Подскажите, кто знает, какой локальный проксисервер умеет задуманное?
А какая версия chromium/chrome используется тобой, $username?
Во избежание эксплуатации уязвимости хакерами пользователям настоятельно рекомендуется установить версию Chrome 86.0.4240.183.
https://www.securitylab.ru/news/513732.php
Вчера обнаружил что время на часах спешит на час.
Дистрибутив OpenSuse 15.2
В настройках времени стоят стандартные сервера времени и синхронизация работает. Похоже что плагин часов XFCE как то неправильно интерпретирует его.
ov@tech02:~> date
Вт ноя 3 10:02:22 EET 2020
На часах 11:02
В настройках часов есть поле Часовой пояс. И там написано что если оставить его пустым он будет использовать локальное время. По факту даже если вбить туда Europe/Zaporozhye он спешит на час.
Я живу в Украине GMT+2. Пока что для того чтоб исправить ситуацию вбил в часы xfce Etc/GMT-2(Как то через задницу но почему то у них все наоборот плюс это минус)
Это у меня одного так? Может подскажете куда копать?