@freebsd_ru

Страница 423 из 669
Sergey
13.04.2018
17:14:59
Rust or Nim

Dmitry
13.04.2018
17:18:19
Зшбс, 3proxy работает

Google
Andrey
13.04.2018
17:21:19
у миня не работает docker run

Anton
13.04.2018
17:56:28
Нет у меня доверия к коду на Си, который мало кто изучал. Т. е. на Си можно писать безопасный код если приложить усилия (примеры такого софта - openbsd, dovecot, postifx, nginx и другие популярные проекты). Но проект, код которого скорее всего никто не изучал и который 5 лет не обновлялся это в лучшем случае лотерея в худшем случае - решето.

Andrey
13.04.2018
18:00:01
ну так ты его обложи костыльчиками, и пусть он там лежит себе решитит не отсвечивая

Sergey
13.04.2018
18:25:48
Те кто может писать на си безопасный код, по пальцам можно пересчитать

Аудитом никто незанимается, ни секурностью самих проектов, и тдд и тп

Ида, у всех ли есть например доступ типа к misra ?

e
13.04.2018
20:10:03
Смотрю пилят новый загрузик на луа и вроде как хотят успеть к 11.2. Но вот что-то не могу найти там подстановку картинки фоном. Опять забили на красивые десктопы?

Aleksandr
13.04.2018
20:11:11
Он на луа, но не графический

e
13.04.2018
20:13:07
он потенциально не может быть графическим?

Dmitry
13.04.2018
20:13:18
ну, штатный лоадер умеет рисовать как влинуксе количество процессоров

логотипами FreeBSD

Google
Dmitry
13.04.2018
20:14:40
ну и умеет в процессе загрузки показывать нескучные обои

провда только pcx или bmp формата

e
13.04.2018
20:15:55
это только на старой консоли вроде. vt уже не совместима с этим

Dmitry
13.04.2018
20:16:09
############################################################## ### Splash screen configuration ############################ ############################################################## splash_bmp_load="NO" # Set this to YES for bmp splash screen! splash_pcx_load="NO" # Set this to YES for pcx splash screen! splash_txt_load="NO" # Set this to YES for TheDraw splash screen! vesa_load="NO" # Set this to YES to load the vesa module bitmap_load="NO" # Set this to YES if you want splash screen! bitmap_name="splash.bmp" # Set this to the name of the file bitmap_type="splash_image_data" # and place it on the module_path

эээ

речь шла о загрузчике ?

какое отношение он имеет к новой консоли ?

e
13.04.2018
20:17:13
Both the splash screen and the screen saver work with syscons(4) only.

т.е. видать прямое

Dmitry
13.04.2018
20:23:52
/usr/src/sys/dev/vt/logo

т.е. сама vt(4) умеет рисовать

e
13.04.2018
20:27:12
но не графику (

Dmitry
13.04.2018
20:29:50
по-моему, как раз графику

спрайты 80x80 точек

/* Used internally, not a tunable. */ int vt_draw_logo_cpus; VT_SYSCTL_INT(splash_cpu, 0, "Show logo CPUs during boot"); VT_SYSCTL_INT(splash_ncpu, 0, "Override number of logos displayed " "(0 = do not override)"); VT_SYSCTL_INT(splash_cpu_style, 2, "Draw logo style " "(0 = Alternate beastie, 1 = Beastie, 2 = Orb)"); VT_SYSCTL_INT(splash_cpu_duration, 10, "Hide logos after (seconds)");

так как оно не настраиваемое, то ручками проставь там нужные тебе цифры и перекомпилируй ядро

просто эта фигня реально никому не нужна

e
13.04.2018
20:35:01
splash_cpu - это в loader.conf прописать?

Dmitry
13.04.2018
20:35:11
нет

/usr/src/sys/dev/vt/vt_core.c

Google
Dmitry
13.04.2018
20:36:00
напрямую в исходниках

Roman
13.04.2018
20:37:00
Го не такой быстрый
На чем основано это утверждение?

Dmitry
13.04.2018
20:37:45
там тупо врапперы для работы с freebsd, linux, windows

Roman
13.04.2018
20:38:18
там тупо врапперы для работы с freebsd, linux, windows
Ну да, потому что libc ему не нужна

e
13.04.2018
20:38:53
ну да, в таком виде это действительно никому не нужно... а вот нормальная графика в загрузчике многих бы привлекла

Dmitry
13.04.2018
20:39:20
причем, там было место, где в целях совместимости с FreeBSD 8,x вызывалась древняя функция определения времени вместо новой gettimeofday(), котороя появилась в 9.0

в результате, демон, написанный на go, который который часто вызывал эту функцию, съедал все процессорное время

а libc в 9.0 научилась вызывать gettimeofday() не делая syscall

Roman
13.04.2018
20:46:00
Dmitry
13.04.2018
20:47:34
в любой платформе есть "логические фичи", которые позволяют родным программам работать более эффективно

а так - это просто модный компилятор python

берешь программу на python, собираешь ее со всеми питонячими библиотеками в один большой файл - получаешь программу на Go

Roman
13.04.2018
20:49:37
ну, оно по скорости сравнима с си и имеет более строгую систему типов

Dmitry
13.04.2018
20:51:34
В Си, насколько я помню, там вообще отсутсвует система типов

Roman
13.04.2018
20:51:52
Dmitry
13.04.2018
20:52:43
вот именно что примитивная. на уровне того, что char - 1 байт, а int - 16 или 32 байта

все состальное - костыли, проверяющие знаковость, безнаковость и т.п.

Google
Dmitry
13.04.2018
20:55:08
т.е., если у меня есть массив байт, длиной 32 байта, мне никто не запретит записать туда 64-х разрядное число по адресу 28-го байта

и пофиг, что я 4 байта запишу в "левую" область памяти. для стандарта Си - это не ошибка

Dmitry
13.04.2018
20:58:13
что из этого: https://en.wikipedia.org/wiki/UB

Lev
13.04.2018
20:58:16
Другое дело, что для скорости и совместимости с терабайтами говно- и старо-кода это йуби на будет поймано по-умолчанию

но соберите свою программу с санитайзером и она рухнет в этом месте с диагностикой.

Dmitry
13.04.2018
20:59:22
нифига

Lev
13.04.2018
20:59:31
бля. рассуждать о стандарте Си и не знать одного из ключевых терминов - это сильно

Dmitry
13.04.2018
20:59:53
единственный вариант - прогон программы в какой-нибудь виртуальной машине

Admin
ERROR: S client not available

Lev
13.04.2018
20:59:56
undefined behavioir

а вы пробовали пользоваться санитайзерми из кланга? попробуйте

только 90% реальных программ не пройдут проверку

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

Арифметика указателей за пределами массивов, например, стандартом запрещена

и алиасинг кроме как с char* запрещён

Dmitry
13.04.2018
21:03:29
и приведения типов нету ?

Lev
13.04.2018
21:03:40
но всем пофиг, ведь так быстрее, если без проверок!

приведение типа через указатель (скастить указатель на инт в укащатель на дабл и разыменовать) - нельзя

то есть можно

Google
Lev
13.04.2018
21:04:56
но - то самое ub.

Dmitry
13.04.2018
21:05:18
ага, и union самое то

я после паскаля когда увидел Си, удаснулся

В паскале тоже есть подобная структура

Lev
13.04.2018
21:05:54
стандарт написан так, что программист мамой клянётся, что он не нарушит, а компиояториверит и не проверяет

Dmitry
13.04.2018
21:05:58
но там все ее члены должны иметь одинаковый размер

Lev
13.04.2018
21:06:08
юнион как раз правильный способ этт делать

и он чётко описан, что по наибольшему

но все кастят указатели, так проще

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

в рамках одной функции можно включить проверку

Dmitry
13.04.2018
21:08:04
в архитектуре x86 по другому нельзя

Lev
13.04.2018
21:08:26
только по дефолту выключена потому что тогда не соберётся половина программ

А в результате и имеем проблемы с оверранами буферров, отрицательными смещениями и прочими дырами. Зато быстро

Dmitry
13.04.2018
21:10:10
нет. это дебильная x86 архитектура

Lev
13.04.2018
21:11:03
а что не дебильное?

у икс86 модель памяти хотя бы строгая

Dmitry
13.04.2018
21:11:20
когда писался Си, не было всяких младших байтов и тому подобной фигни

а что не дебильное?
ну, глянь хотя бы 6502

Lev
13.04.2018
21:12:17
i432 был не дебильный дамвесь вышел нк начавшись

А сравнивать 8 бит даже с 16 смешно. На аппаратном уровне спасёт только теговая память, а это дорого непередаваемо дорого

Dmitry
13.04.2018
21:14:13
причем здесь 8 бит

Страница 423 из 669