LINUX.ORG.RU

Сообщения bga_

 

Делают ли сейчас ноутбуки с процессором в сокете?

Форум — General

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

 , , ,

bga_
()

Не тупящая альтернатива NewPipe имеется?

Форум — Mobile

Какой бы мощный телефон у меня не был эта дрянь всегда течёт памятью и сыпет ошибками. Прямо худший пример опенсорца.

 , ,

bga_
()

Deluge или transmission или qbittorrent или rtorrent?

Форум — General

rtorrent проработал у меня неделю. Ман нормальный хрен найдешь. Воевал с dht(ничего не видит). Довоевался что dht было максимум 20 пиров. Соответственно раздает очень плохо. А качает еще хуже. Я так понял у него не работает peer exchange.

Вчера ночью переехал на трансмиссию. Качать стало лучше. Даже качает брошенные торренты с 1 сидом через диалап автора. Не порадовал жор цпу. rtorrent жрал меньше в 1.5 раза. Понравилось что есть нативные удаленные клиенты под все ос и не по одной штуке. Сейчас управляю с андроид телефона. На сервере ncurses клиент

С ходу мне сказали что qbittorrent будет еще лучше тк умеет bittorent 2.0 и еще какие то протоколы и связь с самым популярным uTorrent будет около 100%.

Про делюгу сами мне расскажите.

PS сравниваю все с uTorrent 2.2.1 на соседней вендо машине где dht всегда около 300+ и качает все моментально. А rtorrent даже рядом соседнюю машину в упор не видел пока через общий рабочий трекер не помог.

PPS порты все открыл. И даже 6881

 

bga_
()

Github сломал скачку релизов

Форум — Development

Раньше и без js все ссылки были видны. А теперь там кружочек анимации загрузки и нифига не скачать. Аш бесит. В html коде тоже ссылок не замечено. Ещё оно требует веб компонент которых нету например в паленуме. Да и вообще в альтернативных браузерах без зашквара.

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

А как например скачать на сервере через links?

Короче зла не хватает. Чтобы они смузи подавились.

Перемещено hobbit из general

 ,

bga_
()

const поля однократной инициализации в классе и оптимизация

Форум — Development

Хочу использовать вместо постоянного выбора между обычным изменяемым полем и заданием константы из параметров шаблона

Те вместо

#include <cstdint>
#include <cstdlib>

#define BGA__ARRAY_SIZE(arrayArg) (sizeof((arrayArg)) / sizeof((arrayArg)[0]))

template<class ValueArg, size_t sizeArg, class IndexArg = size_t>
struct Stack_Storage_Static {
	typedef ValueArg Value;
	typedef IndexArg Index;
	static const Index size = sizeArg;
	
	Value data[size];
};
template<class ValueArg, class IndexArg = size_t>
struct Stack_Storage_Dynamic {
	typedef ValueArg Value;
	typedef IndexArg Index;
	
	Value* data;
	Index size;
};

template<class StorageArg>
struct Stack {
	typedef StorageArg Storage;
	typedef typename Storage::Value Value;
	typedef typename Storage::Index Index;
	
	Storage storage;
	Index topIndex = 0;
	
	Index size() const {
		return this->storage.size;
	}
	
	void push(Value const& v) {
		if(this->topIndex < this->size()) {
			this->storage.data[this->topIndex++] = v;
		}; 
	}
};

int main() {
	Stack<Stack_Storage_Static<int, 16> > staticStack;
	
	staticStack.push(1);
	int dynamicStack_data[16];
	Stack<Stack_Storage_Dynamic<int> > dynamicStack;
	
	dynamicStack.storage.data = dynamicStack_data;
	dynamicStack.storage.size = BGA__ARRAY_SIZE(dynamicStack_data);

	dynamicStack.push(1);
	
	return 0;
}

такое

#include <cstdint>
#include <cstdlib>

#define BGA__ARRAY_SIZE(arrayArg) (sizeof((arrayArg)) / sizeof((arrayArg)[0]))

template<class ValueArg, class IndexArg = size_t>
struct Stack {
	typedef ValueArg Value;
	typedef IndexArg Index;
	
	private:
	Index topIndex = 0;

	//# спрячем поля чтобы гарантированно пользователь не смог их изменить. Даже через const_cast. Тк мы и сами не можем изменить поля то фактически они есть жеткие константы 
	Value* const data;
	const Index m_size;
	
	public:
	Stack(Value* data_, Index size_): data(data_), m_size(size_) {
		
	}
	
	Index size() const {
		return this->m_size;
	}
	
	void push(Value const& v) {
		if(this->topIndex < this->size()) {
			this->data[this->topIndex++] = v;
		}; 
	}
};

//# тут компилятор знает адрес fixedStack_data и размер и может заинлайнить их в методы. Более того - вообще выкинуть память под указатель на данные и размер если все методы есть инлайн. Те фактически это должно работать как Stack<Stack_Storage_Static<int, 16> > но не инстанцировать новые методы класса на каждый размер данных
int fixedStack_data[16];
Stack<int> fixedStack(fixedStack_data, BGA__ARRAY_SIZE(fixedStack_data));

int main() {
	fixedStack.push(1);
	
	size_t dynamicStack_size = 16; //# но может быть задано пользователем 
	//# тут уже dynamicStack_data с неизвестным адресом и размером. Оптимизация не выйдет. Работает как Stack<Stack_Storage_Dynamic<int> >
	int* dynamicStack_data = new int[dynamicStack_size];
	Stack<int> dynamicStack(dynamicStack_data, dynamicStack_size);
	
	dynamicStack.push(1);
	
	return 0;
}

Что это дает? Меньший объем исходного кода. Меньше бойлерплейтной возни с шаблонами. Значительно меньший шанс случайно нарожать кучу одинаковых методов, отличающихся только размером контейнера (было такое).

Понятно что нужно проверять работает ли оптимизация на каждом интересующем компиляторе. Но тут вопрос чисто теоретический. Равноценная ли эта подмена?

И сразу параллельный вопрос. Допустим ::std::array<int, size>. Возможно компилятор достаточно не дебил и не рожает одинаковые методы для разных размеров а просто сам создает новое динамическое поле размера? Короче как сделать лучше?

И да. Это все чтобы экономить на спичках в условиях мелко контроллеров.

 ,

bga_
()

Список легаси не логичного поведения и проблем?

Форум — General

Типа как gzip по дефолту удаляет архив.

А для rm емнип нужно создать спец файл корне против rm -rf /

Накидайте ссылок или просто кто что знает.

 

bga_
()

Где вы предпочитаете писать сообщения для публикации в интернете?

Голосования — Голосования
  1. Прямо в браузере 270 (67%)

    ********************************************************************************************************************************************************************************************************************************************************************************************************************************

  2. Во внешнем редакторе текста, затем copy/past 105 (26%)

    ****************************************************************************************************************************

  3. Свой вариант 27 (7%)

    ********************************

Всего голосов: 402

 , ,

bga_
()

Хочу механическое отключение нервов

Форум — Talks

Адская боль (уже есть или предстоит, например у зубного врача). Отключаем нервы боли тумблером и ок.

Или допустим не спиться. А спать надо. Переводим мозг в режим сна форсированно воздействием на определённый нерв. Пусть это будет просто кнопка или программа на мк тут уже не важно.

Возможны просто всякие симуляции того что сейчас работает плохо а нужно чтобы хорошо или отлично.

Или я попал в окружение где женщин нет и не предвидится. Проще отключить половую систему чем вынужденно регулярно симулировать.

 , ,

bga_
()

Какие дистрибутивы до сих пор ставятся чисто из live консоли?

Форум — Linux-install

Или хотя бы официально есть такая альтернатива.

Чтобы было полное понимание процесса. Без волшебных окошек визарда после которых возникают левые ошибки и юзер впадает в ступор.

Типа

  • fdisk
  • mkfs
  • mount
  • распаковка базовой системы (tar)
  • написать fstab
  • прописать бутлоадер
  • umount всего
  • sync
  • reboot

Я даже для дебиана не могу найти подобный гайд. Сразу окошки лезут.

 

bga_
()

Gmail все

Форум — General

Отключил pop3 без oauth2. Куча древних клиентов больше почту не получат. Валю на другой почта сервер. Гуглу желаю разориться.

 ,

bga_
()

Embedded шрифт 6x7 на полуглифах

Форум — Development

Цифры + символы = 39 байт на полу глифы + до 19 байт на индексы (не обязательно)

Цифры + символы + буквы = 72 байт на полу глифы + до 96 байт на индексы (не обязательно)

Для любителей всяких микро микроконтроллеров типа attiny13

Байты без учета кода рисовая но он крайне тупой.

Идея изначально не моя.

Моя реализация https://github.com/bga/bit-font

 , , , ,

bga_
()

char это и не signed и не unsigned а непонятно что

Форум — Development
> cat main.cpp
#include <type_traits>

int main() {
        static_assert((::std::is_same<char, signed char>::value) == true);
        static_assert((::std::is_same<char, unsigned char>::value) == true);

        return 0;
}

> g++ -Wall -Wextra main.cpp
main.cpp: In function 'int main()':
main.cpp:4:2: error: static assertion failed
  static_assert((::std::is_same<char, signed char>::value) == true);
  ^~~~~~~~~~~~~
main.cpp:5:2: error: static assertion failed
  static_assert((::std::is_same<char, unsigned char>::value) == true);
  ^~~~~~~~~~~~~

 

bga_
()

Как определяют объем ЖД на заводе?

Форум — General

Внутри же они все одинаковые. Стальной полированный блин и магнитная голова. Можно разметить блин и на 120гб и на 2 тб. Или это зависит от качества полировки блина? Типа пытаются разметить максимально пока бэды массово не пойдут?

 ,

bga_
()

gperf для мк

Форум — Development

Чтобы не рожал жирно таблиц а что то вида hash = s[1] + 2 * s[5]

 , , , ,

bga_
()

Посоветуйте чем эффективно высосать 1s литий в 3.3В

Форум — General

Какую step down микро платку из Китая взять? Токи под 2А на выходе. Ток сна естественно как можно меньше.

 

bga_
()

Насоветуйте usb sata с защитой от записи

Форум — Linux-hardware

Для всталяния в сомнительные хосты

Не обязательно 3.0 но желательно.

Беглый поиск на али ничего не дал.

У контроллеров флешек такая функция обычно бывает. Сам лично ставил микро переключатель на write protect ножку. А как быть с внешними hdd боксами?

 , , ,

bga_
()

Задачка на комбинаторику

Форум — Development

Приснилась сегодня.

Есть стакан шириной W(нечетное) высотой H

ooooo
ooooo
ooooo
ooooo
ooooo
ooooo
ooooo

Из точки @ ([floor(W / 2), 0]) отпускают листик. Падать он может вниз или по диагоналям - #

oo@oo
o###o
ooooo
ooooo
ooooo
ooooo
ooooo

При этом не может пересечь края стакана. Те [x, y] -> [[x, y + 1], [min(x + 1, W - 1), y + 1], [max(x - 1, 0), y + 1]]

ooooo
o@ooo
###oo
ooooo
oooo@
@oo##
##ooo

Найти всевозможное количество путей из изначальной точки [floor(W / 2), 0] до дна.

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

 , , ,

bga_
()

Выбор дистрибутива для vps 1 ядро, 256 мб озу, ssd

Форум — General

Процессор строго x64 (такой хостер).

Выживет ли debian 11?

Или ставить debian 10 с мигрированием на 11 после окончания поддержи (август 2022)?

Задачи сервера

  • Веб сервер статики
  • Почта
  • jabber
  • разные vpn

Спасибо.

 , ,

bga_
()

Таки нашел годный андроид телефон в 2к22

Форум — Talks

Unihertz atom L https://aliexpress.ru/item/1005001602325985.html

Unihertz atom XL https://aliexpress.ru/item/1005001602669499.html

Обсуждение https://4pda.to/forum/index.php?showtopic=980110

Плюсы.

  • Не лопата. 4"
  • не выцветающий AMOLED
  • Есть рут
  • Есть порт линейки
  • Защита IP68, фронтальное стекло аш 1.5мм гориллы
  • Жирная батарея 4300мАЧ для такого размера
  • Рация(PTT)

 ,

bga_
()

int в си больше не нужен?

Форум — Development

Осознал что чистый int неизвестно какого размера мне перестал быть нужным. Кроме как передать в printf и общаться с api ос.

Давно использую (u)intXX_fast_t для считаная и (u)intXX_t для хранения. А так же (s)size_t для работы с памятью.

Некоторое время продолжал использовать int и unsigned для всяких констант и вычисления во время компиляции пока не понял что проще и надежнее в таких случаях сразу брать (u)int_max_t.

Про всякие short и прочие странные long long вообще молчу. Чистый бред.

PS реквестирую современный подход к шаблонам в printf. Чтобы не %d а %u8, %i32

 ,

bga_
()

RSS подписка на новые темы