๐Ÿ–ฅ๏ธ Linux 4

OpenSSL docs ์ •๋ฆฌ (์—…๋ฐ์ดํŠธ ์˜ˆ์ •)

OPENSSL_malloc - ๋ฉ”๋ชจ๋ฆฌ ํ• ๋‹น, ONENSSL_free์™€ ๊ฐ™์ด ์‚ฌ์šฉ CRYPTO_num_locks - ์ตœ๋Œ€ ์ฒ˜๋ฆฌ๊ฐ€๋Šฅํ•œ mutex ๊ฐœ์ˆ˜ - mutex ๊ด€๋ จํ•˜์—ฌ int ํ˜• ์ƒ์ˆ˜๋ฅผ ๋ฐ˜ํ™˜, ์ด๋งŒํผ์„ ์ฒ˜๋ฆฌ ํ•  ์ˆ˜ ์žˆ์–ด์•ผํ•จ - OpenSSL-1.0.1j ๊ธฐ์ค€์œผ๋กœ 41์ž„ - openssl/crypto/lock.c ์†Œ์Šค์—์„œ ํ™•์ธ ๊ฐ€๋Šฅ - ๋‹ค์ค‘ ์Šค๋ ˆ๋“œ๋ฅผ ์‚ฌ์šฉํ•  ๊ฒฝ์šฐ ์ถฉ๋Œ ํ•  ์ˆ˜ ์žˆ์œผ๋ฏ€๋กœ lock ์‚ฌ์šฉ CRYPTO_THREADID_set_callback - ์ฃผ์–ด์ง„ lock type๊ณผ ์ž ๊ธˆ ํ•ด์ œ ์—ฌ๋ถ€(mode)๋กœ ํ•ด๋‹น lock๋ฅผ ๊ด€๋ฆฌํ•ด์คŒ - ํ˜„์žฌ ์‹คํ–‰ ์ค‘์ธ ์Šค๋ ˆ๋“œ์˜ tid ๋ณ„๋กœ ๋“ฑ๋กํ•ด์„œ ๊ด€๋ฆฌ ํ•จ โ†’ CRYPTO_THREADID_set_numeric์„ ์‚ฌ์šฉํ•œ ์ฝœ๋ฐฑ์„ ๋“ฑ๋ก - ์ฝœ๋ฐฑ ๋“ฑ๋ก ํ•˜์ง€ ์•Š์œผ๋ฉด ๊ธฐ๋ณธ ๊ตฌํ˜„์œผ๋กœ ..

ls ๋ช…๋ น์–ด/ํŒŒ์ผ๋ชฉ๋ก/linux ls

์งค๋ง‰ํ•œ ls ๋ช…๋ น์–ด๋ฅผ ์ •๋ฆฌํ•˜๋ ค๊ณ  ํ•œ๋‹ค ์›”๋ฃจ ํ•˜๊ณ  ์žˆ์—ˆ๋Š”๋ฐ ์‹œ๊ฐ„์ด ๋„ˆ๋ฌด ์•„๊นŒ์›Œ์„œ ๋ญ๋ผ๋„ ๋‚จ๊ฒจ์•ผ๊ฒ ๋‹ค 1. ls ๋ช…๋ น์–ด (list) ๋‚˜๋Š” ์‰˜์ฐฝ์„ ํ‚ค๋ฉด ๊ทธ๋ƒฅ ์ž์—ฐ์Šค๋Ÿฝ๊ฒŒ ls ๋ช…๋ น์–ด๋ฅผ ์นœ๋‹ค ํŒŒ์ผ ๋ชฉ๋ก์ด๋ผ๋„ ์ผœ๋†“์•„์•ผ ๋  ๊ฒƒ ๊ฐ™์•„์„œ ls๋Š” list์˜ ์ค„์ž„๋ง๋กœ, ๋ง ๊ทธ๋Œ€๋กœ ํŒŒ์ผ ๋ชฉ๋ก์„ ๋ณด์—ฌ์ค€๋‹ค ์‚ฌ์šฉ๋ฒ•์€ ์•„๋ž˜์™€ ๊ฐ™๋‹ค CLI> ls []... []... ์˜ˆ๋ฅผ๋“ค์–ด์„œ, ์•„๋ž˜์™€ ๊ฐ™์€ ํŒŒ์ผ๊ตฌ์กฐ๊ฐ€ ์žˆ๋‹ค๋ฉด ls ๋ช…๋ น์–ด๋ฅผ ์ณค์„ ๋•Œ ๋‚˜์˜ค๋Š” ํ•ญ๋ชฉ์€ ์•„๋ž˜์™€ ๊ฐ™๋‹ค CLI> ls Makefile main.cpp release test.cpp ์š”๋ ‡๊ฒŒ ํ˜„์žฌ ๋””๋ ‰ํ† ๋ฆฌ์— ์žˆ๋Š” ํŒŒ์ผ ๋ชฉ๋ก์„ ๋ณด์—ฌ์ค€๋‹คใ…‹ ls ๋ช…๋ น์–ด๋Š” ๋งŽ์€ ์˜ต์…˜๋“ค์„ ๊ฐ–๊ณ  ์žˆ๋‹ค ํŒŒ์ผ ๋ชฉ๋ก๋“ค์˜ ์ •๋ณด๋ฅผ ๋‹ค ๋ณด์—ฌ์ฃผ๋Š” ๋ช…๋ น์–ด๋ผ์„œ, ํŒŒ์ผ์˜ ๊ถŒํ•œ/ํŒŒ์ผ ํฌ๊ธฐ/์‚ฌ์šฉ์ž/์ˆ˜์ • ๋‚ ์งœ ๋“ฑ๋“ฑ ๋˜ํ•œ ํ™•์ธ ๊ฐ€๋Šฅํ•˜๋‹ค ..

ํ”„๋กœ์„ธ์Šค/ps ๋ช…๋ น์–ด/pstack ๋ช…๋ น์–ด/kill ๋ช…๋ น์–ด

์˜ค๋Š˜์€... ์ด๋Ÿฐ ๋ถ„๋“ค๊ป˜ ๋„์›€์ด ๋˜๋ฉด ์ข‹๊ฒ ๋‹ค ํ”„๋กœ๊ทธ๋žจ์„ ์‹คํ–‰ ์‹œ์ผฐ๋Š”๋ฐ ์ด๊ฒŒ ์ง„์งœ ์‹คํ–‰๋œ๊ฑด์ง€ ํ™•์ธํ•ด๋ณด๊ณ  ์‹ถ๋‹ค ๐Ÿ– ์ž์‹ ์ด ์‹คํ–‰์‹œํ‚จ ํ”„๋กœ๊ทธ๋žจ์ด ์•ˆ์ฃฝ์–ด๋ณธ ์ ์ด ์žˆ๋‹ค ๐Ÿ– ์™œ ์•ˆ์ฃฝ๋Š”์ง€ ๋ชจ๋ฅด๊ฒ ๋‹ค ๐Ÿ– ์ข€๋น„ ํ”„๋กœ์„ธ์Šค๋ฅผ ๋งŒ๋“ค๊ณ  ๋‹นํ™ฉํ•œ์  ์žˆ๋‹ค ๐Ÿ–๐Ÿ–๐Ÿ– ๋ฐ”๋กœ ๋‚˜์•ผ๋‚˜ ๋ฆฌ๋ˆ…์Šค ํ™˜๊ฒฝ์—์„œ ํ”„๋กœ๊ทธ๋žจ์„ ์งœ๋ดค๋‹คํ•˜๋ฉด ํ•œ๋ฒˆ์ฏค์€ ๋“ค์–ด๋ดค์„ process(ํ”„๋กœ์„ธ์Šค)์™€ PID์— ๋Œ€ํ•ด์„œ ์•Œ์•„๋ณด๊ณ ์ž ํ•œ๋‹ค ๊ทธ๋ฆฌ๊ณ  ์ด๋ฅผ ํ™•์ธํ•  ์ˆ˜ ์žˆ๋Š” ๋ช…๋ น์–ด๋„ ์ •๋ฆฌํ•˜๋ ค๊ณ  ํ•œ๋‹ค 1. Process(ํ”„๋กœ์„ธ์Šค)๋ž€? ํ”„๋กœ์„ธ์Šค๋ž€ ๋‹จ์–ด๋Š” ๋งŽ์ด ์ต์ˆ™ํ• ํ…๋ฐ, ๋”ฑ ๋ญ๋ผ๊ณ  ์ •์˜ํ•˜๊ธฐ๋Š” ์–ด๋ ค์šด ๋‹จ์–ด๋‹ค ๋ณดํ†ต ํ”„๋กœ๊ทธ๋žจ๊ณผ ๋งŽ์ด ๋น„๊ต๊ฐ€ ๋œ๋‹ค ํ”„๋กœ๊ทธ๋žจ์€? ํ•˜๋“œ ๋””์Šคํฌ์— ์ €์žฅ๋˜์–ด ์žˆ๋Š” ์‹คํ–‰์ฝ”๋“œ ํ”„๋กœ์„ธ์Šค๋Š”? ํ”„๋กœ๊ทธ๋žจ์„ ๊ตฌ๋™ํ•˜์—ฌ ํ”„๋กœ๊ทธ๋žจ ์ž์ฒด์™€ ํ”„๋กœ๊ทธ๋žจ์˜ ์ƒํƒœ๊ฐ€ ๋ฉ”๋ชจ๋ฆฌ ์ƒ์—์„œ ์‹คํ–‰๋˜๋Š” ์ž‘์—… ๋‹จ์œ„ ์ฆ‰, ์‹คํ–‰์‹œ..

์‹ฌ๋ณผ๋ฆญ ๋งํฌ(Symbolic Link)

์‹ฌ๋ณผ๋ฆญ ๋งํฌ๋ฅผ ์•Œ์•„๋ณผ๊ฑฐ๋‹ค ๊ตฌ๊ธ€๋ง ํ•˜๋ฉด์„œ ๋ช…๋ น์–ด๋งŒ ์•Œ๊ณ  ์‹ถ์—ˆ๋˜ ์ ์ด ๋” ๋งŽ์•„์„œ, ๋ช…๋ น์–ด->์„ค๋ช… ์ˆœ์œผ๋กœ ์ •๋ฆฌํ•ด์•ผ๊ฒ ๋‹ค - ์‹ฌ๋ณผ๋ฆญ ๋งํฌ ์ƒ์„ฑ ์ปค๋งจ๋“œ(์ƒ์„ฑ, ๋ณ€๊ฒฝ, ์‚ญ์ œ) - ์‹ฌ๋ณผ๋ฆญ ๋งํฌ๋ž€ ๋ฌด์—‡์ผ๊นŒ 1. ์‹ฌ๋ณผ๋ฆญ ๋งํฌ(Symbolic Link) Command 1) ์‹ฌ๋ณผ๋ฆญ ๋งํฌ ์ƒ์„ฑ CMD> ln -s {๋งํฌ๊ฑธ๊ณ  ์‹ถ์€ ํŒŒ์ผ} {๋งํฌ ์ด๋ฆ„} ์œ„์™€ ๊ฐ™์ด ์“ธ ์ˆ˜ ์žˆ๋‹ค ํ•ฉ๊ณ„ 0 drwxr-xr-x. 2 pp pp 48 12์›” 17 17:17 . drwxr-xr-x. 3 pp pp 17 12์›” 17 16:58 .. -rw-r--r--. 1 pp pp 0 12์›” 17 16:59 library.so.0 -rw-r--r--. 1 pp pp 0 12์›” 17 17:17 library.so.0.1.0 ๋งŒ์•ฝ ๋งํฌ ๊ฑธ๊ณ  ์‹ถ์€ ํŒŒ์ผ์ด lib..