[00:09] <autowiz> 안녕하세요~
[00:10] <autowiz> 토요일엔 바빠서 얘기도 별로못하고 얼굴도장만 찍고 왔습니다 ㅜㅜ
[00:22] <HolyKnight> ㅎㅇㅇ
[00:53] <ircCloud^Seony> 안녕하세요
[00:55] <JasonJang> ircCloud^Seony: 어휴~ 시간 참 빨리 지나갑니다. ㅠㅠ
[00:55] <ircCloud^Seony> 흐 그러게요... 지난 번에 한국 왔을 때는 하도 할 일이 없어서 분도님 따라댕겼었거든요 ㅎㅎ
[00:58] <JasonJang> ㅎㅎ+ㅠㅠ = ^^ ?
[01:02] <ircCloud^Seony> ㅎㅎㅎㅎ
[01:04] <matthewkim> 좋은아침입니다
[01:47] <autowiz> 좋은 아침들 되십시요~
[01:52] <funfunyo_> 좋은 한 주 되세요! :-)
[01:54] <ferendevelop> autowiz: 어제 집 가자마자 자는 바람에 링크 이제 봤네요ㅠ
[01:54] <ferendevelop> autowiz: 고객센터 상담원분들 보는 기분입니다.
[01:56] <autowiz> https://www.codingame.com/start 이거 재미삼아 시작했는데 생각했던거보다는 어렵기도 하고 재미있기도 하고 그렇네요
[02:45] <bluedusk> 안돼요
[02:45] <bluedusk> 월요일 점심때니 일찍 일찍 퇴근하셔요
[04:28] <lexlove> 지난 토요일에 몇분 만나뵈서 정말 좋았습니다.^^
[04:46] <funfunyo_> 저도 정말 반가웠어요 ^^
[04:46] <JasonJang> 아~ lexlove 미안해요. ㅠㅠ
[04:47] <lexlove> JasonJang: 일하셨다면서요.^^
[04:47] <JasonJang> 물론 일했죠. 근무중. 그날 왕 늦게 끝났어요.
[04:47] <lexlove> ㅠㅠ 다음에 뵐 기회가 있겠죠?
[04:48] <JasonJang> <--- 저 메뚜기, 저도 한철이 있다"라는 얘기에 따라 열근무 했어요.
[04:49] <lexlove> 바쁜 시기군요. 일할 때 바짝 일해야죠.^^
[04:49] <JasonJang> ^^ lex love님 업종도 요즘이 한창 바쁜 시기인 줄 알아요.
[04:51] <lexlove> 네. 지금 저희회사는 정신없이 바쁘네요. 저는 평소보다 쪼끔 더 바쁩니다.ㅎㅎ
[05:16] <funfunyo_> 방금 전 사내 직원들끼리 점심 도시락 내기 사다리 타서 공짜 도시락 먹고 복귀 ^^ 호호
[05:20] <lexlove> funfunyo_: 공짜라서 더욱 맛있었겠습니다.^^;
[05:22] <funfunyo_> lexlove: 사내 막내가 산 거라 더욱 더 꿀맛이었습니다 ^^
[05:23] <lexlove> ㅎㅎㅎㅎ
[05:35] <JasonJang> 설마 본심이 꿀맛이었겠?! 말씀 재밌게 하려니까 ...
[05:36] <JasonJang> (아냐, 본심일꺼야 ㅋㅋㅋ)
[05:36] <funfunyo_> 당연히 본심 입니다 :)
[05:37] <lexlove> 사내 막내면 '벼룩의 간' 맛을 보신거죠? ㅎㅎ
[05:37] <JasonJang> ㅎ
[05:38] <lexlove> 벼룩의 간 = 꿀맛  <- 이런 공식이 성립이 되는군요. 저희 회사에서는 제가 막내인데 제가 사드려야 윗분들이 꿀맛을 보시겠습니다.ㅎ
[05:40] <lexlove> 엑셀파일의 숫자를 계속 봤더니 머리가 지끈지끈 거리네요.  >.<
[05:44] <funfunyo_> ㅎㅎ 중요한 건 사다리를 하자고 한 게 그 막내 개발자 입니다 :-)
[05:45] <lexlove> 예쁜 막내입니다.^^
[05:47] <lexlove> 저도 전전전(?) 직장에서 사다리타기 많이 했었죠. 사다리타기도 점점 진화를 하죠.ㅎ
[05:48] <funfunyo_> 요즘엔 카톡으로도 하더군요 :)
[05:48] <lexlove> 간식사다리타기를 즐겨했는데 꽝이 2개 있습니다. 꽝에 당첨이 되면 돈을 안내는 대신 장을 봐와야 합니다. 그래서 윗분들은 꽝보다 돈내는 것을 선호했지요.
[06:38] <bluedusk> 안녕하세요
[07:04] <head|office> 안녕하세요 ㅎ
[07:14] <lexlove> 안녕하세요.^^
[07:24] <autowiz> 안녕하세요
[07:26] <autowiz> 저도 사다리를 직접 타는걸 좋아라 하는 ㅋㅋㅋ
[07:26] <autowiz> 저도 -> 저는
[07:27] <lexlove> ㅎㅎㅎ
[08:28] <pchero_work> 혹시.. sysinfo() 함수 써보신 분 계신가요?
[08:28] <pchero_work> struct sysinfo 구조체에 process 갯수를 확인할수 있는 항목이 있는데..
[08:29] <pchero_work>                unsigned short procs;    /* Number of current processes */
[08:29] <pchero_work> 이 숫자가 top이나 ps 명령어로 확인한 프로세스 결과랑 맞지가 않네요. -_-;;
[08:29] <pchero_work> 엄청나게 차이가 납니다.
[08:30] <pchero_work> ps 나 top 로 확인되는 프로세스 갯수는 250개 정도인데.. sysinfo()로 얻어온 결과에는 약 650 개 정도라고 나오네요. -_-;;;
[08:30] <pchero_work> 혹시 이유를 아시는 분..?
[08:32] <PotatoGim> Ps는 스레드 포함으로 보신건가요?
[08:33] <pchero_work> 아니요, 프로세스만이요.
[08:34] <pchero_work> 아.. -_-;;;
[08:34] <pchero_work> 이게 스레드 숫자네요. -_-;;
[08:35] <pchero_work> 전체 스레드 갯수를 확인하니까 숫자가 얼추 비슷해지네요. -_-;;;
[08:35] <pchero_work> 스레드라고 적어주징.. -_-;; man page 에 하필 프로세스 숫자라고 나와서리..
[08:45] <PotatoGim> sysinfo() 시스템콜은 nr_tasks를 바로 담아주니까 스레드도 딸려서 올겁니다 ㅎㅎ
[08:51] <bluedusk> jincreator_: 님 전에 말씀드린거 생각해보셨어요?
[08:52] <pchero_work> PotatoGim: 아.. task 갯수군요.
[08:52] <PotatoGim> http://lxr.free-electrons.com/source/kernel/info.c?v=2.0.40
[08:53] <pchero_work> PotatoGim: ??? 왜 nr_tasks -1 ; 이죠??
[08:53] <pchero_work> 혹시 아시나요..? :P
[08:55] <PotatoGim> kernel/fork.c를 보시면 초기값이 1인데 아마 init을 제외한게 아닐까 싶어요 ㅎ
[08:55] <PotatoGim> 음.. 아니면 호출한 자신을 제외?
[08:59] <PotatoGim> http://lxr.free-electrons.com/source/kernel/sys.c#L2293
[08:59] <PotatoGim> 최신 버전 기준으로는 nr_threads네요 ㅎㅎ
[08:59] <PotatoGim> 저렇게 바뀐지 꽤 되었을 것 같네요.
[08:59] <pchero_work> PotatoGim: 헉
[09:00] <pchero_work> 아마도
[09:00] <pchero_work> Since Linux 2.3.23 (i386), 2.3.48 (all architectures) the structure is:
[09:00] <pchero_work> 2.3.23 버전 이후버전일것 같습니다. :)
[09:00] <pchero_work> 2.3.16 버전까지는 nr_tasks 를 참조하고 2.3.23 버전 이후부터는 nr_threads 를 참조할 것 같네요.
[09:01] <PotatoGim> 이후 버전을 찾아보니 nr_tasks 자체가 nr_threads로 대체된 것 같네요
[09:02] <pchero_work> 아..
[09:03] <funfunyo_> 일반적으로 nr_ 가 붙는 것들은 대개 커널 내 전역변수 값들이에요
[09:03] <funfunyo_> sysinfo 도 커널 내부에서 주로 메모리 같은 내역들 뒤질 때 많이 사용했던 함수인데 요즘엔 잘 안쓰죠
[09:03] <funfunyo_> 커널 전체가 하나의 프로세스이고 그 안에 매우 많은 태스크들이 쓰레드 형태로 실행되서 변수 이름도 바뀌었어요
[09:07] <PotatoGim> 네, sysfs가 상대적으로 편하다보니..ㅎ
[09:07] <funfunyo_> 네 맞습니다
[09:07] <PotatoGim> 그런데 NPTL 같은 본격적인 스레드 지원은 사실상 2.6부터 이루어진 건데
[09:08] <pchero_work> sysfs는 filesystem 정보를 불러온다고 나오는데..
[09:08] <PotatoGim> 2.4 시점부터 커널 수준의 전역 변수명이 threads로 바뀐 점은...
[09:08] <pchero_work> 뭔가 다른 역할이 있나요?
[09:08] <funfunyo_> 예전엔 /proc  밖에 없었는데 추후에 sysfs 같은 것들이 생겨난 이후도 커널 메모리를 유저 영역에서 접근하기 어렵기 때문에 늘어난 걸로 보여요
[09:08] <PotatoGim> 체인지 로그를 봤으면 좋겠는데 오래된 버전이라 찾기가 어럽네요..
[09:08] <PotatoGim> 커널뉴비에도 없고...
[09:09] <funfunyo_> NPTL 은 모델의 이름이고...
[09:09] <funfunyo_> 위에 얘기한 쓰레드와 프로세스...는 일반적인 프로그래밍 메모리 관련 이야기예요.
[09:09] <lexlove> 먼저 퇴근합니다.^^
[09:09] <funfunyo_> 가령 1.c, 2.c, 3.c 가지고 하나의 a.out 을 만들게 되면
[09:10] <funfunyo_> a.out 이라는 하나의 process  안에 3개의 thread 가 있다는... 간단한 개념...
[09:10] <funfunyo_> 리눅스 커널도 매우 많은 소스들로 구성되어 있지만 결국 zImage 라는 하나의 process 니까요
[09:10] <funfunyo_> NPTL 은 2.6 부터 새롭게 붙은 모델 이름이 맞습니다!
[09:11] <funfunyo_> 참고로 Posix 는 원래 Unix 에서 나온 시스템 API 모델이에요
[09:11] <pchero_work> 음.. sysinfo()보다 sysfs()가 어떤점에서 좀 더 편한가요..?
[09:12] <PotatoGim> 네, 그와는 무관하게 linuxthreads가 이전 스레드 모델이었죠.
[09:12] <funfunyo_> 구조체를 다루는 것과 파일을 다루는 것과의 차이랄까요?
[09:12] <funfunyo_> 리눅스 같은 유닉스는 기본적으로 모든 제어를 '파일' 단위로 합니다
[09:13] <funfunyo_> 가령 소켓 연결 같은 것들이나 프린터 같은 것들 제어하는 단위도 파일이에요
[09:13] <funfunyo_> 그래서 파일로 처리하는 개념이 잘 발달되어 있는데....
[09:13] <funfunyo_> sysfs 같은 경우엔 가상메모리로 보호 받고 있는(User Level 에선 접근이 불가능한) 커널 메모리 영역을
[09:14] <funfunyo_> 마치 파일인 것처럼 pseaudo file system 으로 공유해주고 있는 게 바로 /proc 이고
[09:14] <funfunyo_> 비슷하게 더 확장해준 게 sysfs 로 알고 있어요
[09:14] <PotatoGim> 그냥 /sys로 마운트되늠 가상 파일 시스템입니다
[09:14] <funfunyo_> 가령 PnP 같은 디바이스 들은 sysfs 로부터 정보가 공유되죠
[09:15] <funfunyo_> 실제 /proc 나 /sys 안에 있는 파일들 사이즈가 0 인 이유가 사실은 파일이 아니라 메모리라 그래요
[09:15] <pchero_work> 음..
[09:15] <pchero_work> sysinfo() 와 sysfs()가 다른 목적의 프로그램이 아닌가요?
[09:16] <PotatoGim> sysfs 자체는 장치에 대한 정보가 주인 것 같습니다 ㅎ
[09:17] <funfunyo_> 맞습니다 sysinfo 는 커널이 주 대상이라면 sysfs 는 주변장치가 주 대상이죠
[09:18] <pchero_work> 한방에 이해되네요. :)
[09:18] <ferendevelop> 퇴근합니다~
[09:18] <pchero_work> int sysfs(int option, unsigned int fs_index, char *buf);
[09:18] <pchero_work> 장치 파일을 지정할 수 가 있군요. :)
[09:21] <pchero_work> funfunyo_: PotatoGim: 감사합니다. :) 큰 공부가 되네요. ㅎㅎ
[09:22] <funfunyo_> 저보단 PotatoGim: 님이 설명 짱이신 듯! ^^
[09:25] <pchero_work> 방금 택배가 도착했습니다. ㅎㅎㅎㅎ
[09:25] <pchero_work> 한 3주 전에 이베이로 카드게임을 하나 주문했는데 이제야 도착했네요. ㅎ
[09:28] <pchero_work> 이베이는 다 좋은데.. 너무 느리다는게 단점.. -_-;;
[09:33] <funfunyo_> 그래서 이베이 같은 해외 배송으론 건담과 피규어를 못 지르고 있어요 ㅠ.ㅠ
[09:35] <pchero_work> ㅠㅠ
[09:36] <pchero_work> 그냥 주문하고 잊어버려야 함. ㅠㅠ
[10:03] <bluedusk> funfunyo_: 클라우드 엔지니어좀 찾아보라고 하는데
[10:03] <bluedusk> 어디 괜찮은 사람 아시는분 없으신가요?
[10:06] <funfunyo_> 페이스북 오픈스택 그룹...에 올려보는 게 어떨까?
[10:38] <bluedusk> private  cloud뿐만 아니라 public  cloud도 할줄 아는 사람이여야 해서요... aws나 gcp 같은..
[15:00] <autowiz> 벌시러 하루가 지나뿠네요
[15:39] <DarkCircle> 하는거도 없이 그냥 휙 가네요 ㅋㅋ ㅠㅠㅠ
[15:42] <jincreator> bluedusk: 죄송합니다. 전에 말씀하신 게 뭔지 기억이 안나네요. T T
[16:29] <sungyo> 노크노크.
[16:32] <autowiz> 안녕하세요
[16:34] <sungyo> 오. 안주무셨네요.
[16:38] <ircCloud_autowiz> 네 요즘 늦게 자는 일이 많네요 ㅎㅎㅎ
[16:38] <sungyo> 잠이 안와 일어났어요...서버로 접속하신건가요?
[16:39] <ircCloud_autowiz> 아니요 그냥 휴대폰으로 ㅎㅎ
[16:41] <sungyo> 지금 하시는 일이 서버개발쪽이신가요?
[22:44] <ferendevelop> 안녕하세요.
[23:45] <ircCloud^Seony> 안녕하세요
[23:47] <autowiz> 안녕하세요 서니님~
[23:51] <lexlove> 안녕하세요.^^
[23:54] <PotatoGim> 안녕하세요~!