Думаю, вы спрашиваете, являются ли пользовательские потоки планируемыми объектами в ядре. Является ли пользовательский поток «видимым» для ядра, зависит от сопоставления между пользователем и ядром, которое зависит от используемой модели. Существуют различные модели потоков -
[ https://www.kernel.org /doc/ols/2002/ols2002-pages-330-337.pdf visible[1 provided) для получения информации о моделях потоков.
В Linux (
(man pthreads (7) для получения дополнительной информации)
. В NPTL (1x1) все пользовательские потоки в процессе имеют одинаковый pid, но имеют уникальные идентификаторы потоков.
Это можно увидеть с помощью флага -L в ps (man ps (1))
хорошая статья о NPTL - [ https://www.redhat.com/whitepapers/developer/POSIX_Linux_Threading.pdf] [2]
Есть некоторые специальные символы оболочки, которые будут заключены в двойные кавычки в вашей строке.
Используйте одинарные кавычки вместо этого, если вы ожидаете любого расширения от оболочки:
echo '<your_string>' >/etc/test.conf
Это будет трактовать строку буквально.
Поскольку вам кажется, что вы хотите поместить пустые строки, вы можете использовать cat
вместо echo
:
cat << 'EOT' > /etc/test.conf
^%(log_prefix)s SecurityEvent=(FailedACL|InvalidAccountID|ChallengeResponseFailed|InvalidPassword)",EventTV="[\d-]+",Severity="[\w]+",Service="[\w]+",EventVersion="\d+",AccountID="\d+",SessionID="0x[\da-f]+",LocalAddress="IPV[46]/(UD|TC)P/[\da-fA-F:.]+/\d+",RemoteAddress="IPV[46]/(UD|TC)P/<HOST>/\d+"(,Challenge="\w+",ReceivedChallenge="\w+")?(,ReceivedHash="[\da-f]+")?$
EOT