하모니카 묻고답하기

조회 수 621 추천 수 0 댓글 9
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄

http://news.softpedia.com/news/canonical-wants-you-to-test-gnome-memory-leak-patches-in-ubuntu-18-04-lts-520751.shtml


케노니컬에서는 우분투 18.04 최신 버전 발표에 앞서서

그놈 메모리 누수 현상을 근본적으로 해결하기 위해서 그놈 메노리 누수 패치를 테스트할 사람을 구하고 있습니다.

이번 기회에 그동안 오랫동안 방치 되었던 이 문제를 근본적으로 해결해 보려고 하나 봅니다.

그나마 다행입니다. 모든 문제는 방치하면 안 되겠죠.


관심있으신 분은 기사 내용을 참고하여 도전해 보시기 바랍니다.

  • ?
    krhamoni 2018.04.19 20:13

    유익한 정보 감사합니다.


    케노니컬이 OS사업 그만둘 생각은 없나 봅니다.


    실례가 안 된다면 저 같은 문외한을 위해서 메모리 누수란 것이 어떤 것인지 간단히 설명 해주실 수 없을까요?

  • ?
    Moordev 2018.04.19 20:47
    메모리누수란 쉽게말해 프로그램이 점유하는 메모리를 시간이 가면 갈 수록 점점 더 늘리는 현상을 말합니다.
    그러니까 가만히 있을 뿐인데 메모리를 계속 처묵처묵하는 것입니다.

    이 현상이 계속되면 누수된것처럼 메모리의 가용량이 서서히 줄어들게 되는데 단순히 느리게 만드는 수준이면 그러려니하는데 심각하면 충돌및 오류를 뿜게됩니다.

    과거 메모리누수로 고생한 프로그램이 파이어폭스 2.x이 있습니다. 이 쪽은 탭을 닫으면 탭이 먹었던 만큼 뱉어야하는데 그냥 메모리를 꿀꺽하는 문제가 있었습니다. 그래서 인터넷 좀 하다보면 메모리가 부족해지곤 했었지요. 이는 파이어폭스 3.x이후 해결되었습니다.

    그리고 몇몇 일본산 게임들은 더 심각해서 게임을 켜고 조금 게임을 하다보면 혼자서 메모리를 반 이상 먹어버립니다. (유명업체가 이런짓을 합니다. 테크모, 세가 장난하냐?)

    그래서 가비지 컬렉터라고 해서 자동으로 메모리를 정리해주는 기능도 있는데 이건 어디까지나 JAVA나 Python같이 중간 매개체가 있을 때 이야기이고 C나 C++로 짜여진 경우에는 개발자가 알아서 메모리를 뱉게 짜야합니다. 그놈도 C++로 짜여진 만큼 어디서 메모리가 새는지 찾아야 할겁니다.
  • profile
    행복한펭귄 2018.04.20 09:13

    메모리 누수 현상과 가베지 컬렉션 문제는 아주 오래전부터 프로그래머 사이에는 핫 이슈이고, 실제로 다양한 방법으로 언어별로 처리하는 기법이 다 있습니다.


    그러나 이런 것까지 고려해서 프로그래밍을 척척 잘 짜주시는 정성스러운 분들이 생각보다 적어서 최종 소비자인 대중들 입장에서는 메모리 누수 현상으로 인한 피해(?)아닌 피해를 입게됩니다.


    예전에는 어떤 언어를 사용하던 간에 최적화라는 주제는 프로그래머의 가장 핵심적인 의식이었고 실제로 그렇게 프로그래밍했습니다. 요즈음은 프로그래머들이 편해져서 그냥 언어에서 지원하는 라이브러리에 의존해서 프로그래밍하다보니 근본적인 문제가 생기면 덜덜 떠는 분위기입니다. 이런 분위기는 많이 쇄신되어야 한다고 봅니다.


    아주 옛날 80년대, 90년대 초반까지만 해도 원라인 테스트(베이직 언어 256자 내외로 프로그래밍을 하는 기발한 프로그래밍 테스트), 최적화 테스트 (어셈블리어와 기계어를 이용해서 가장 최적으로 원하는 결과를 얻어내는 테스트), 가베지 컬렉션 테스트(각 언어별로 최적의 메모리 관리 방법을 제시하는 테스트) 등... 말 할려면 한 도 끝도 없음... 


    여하튼 다양한 방법으로 최적화를 이루어서 지금으로는 말도 안 되는 64K 메모리, 128K 메모리에서 엄청난 작품들이 쏟아지고 실제로 현장에서 사용되었다는 사실을 기억해야 합니다.


    지금은 너무 편해져서 이런 최적화 부분, 알고리즘 부분, 가베지 켈렉션 부분, 기타 코딩의 최적화 부분 등을 종합적으로 고려하지 못하는 분위기인 것 같습니다. 이번 기회를 통해서 오픈 소스 계열도 쇄신이 필요하다고 보입니다.


    C언어에서도 가베지 켈렉션 방법론이 아무 오래전부터 이미 충분하게 공개되어 있으니, 이를 시스템에 맞게 잘 반영하면 문제해결 되는 것은 전혀 문제될 것 없다고 보입니다. 문제는 전문 프로그래머들이 돈을 받고 사업적으로 프로그래밍 하시는 분들이 아니라 취미 차원에서 또는 자신이 시간될 때 프로그래밍 하시는 분들이 많아서 이를 최적으로 협동적으로 결과를 이끌어 낼지가 고민이다고 보이네요.


    기업 차원에서도 서로 협력하지 않으면 위에 언급한 게임과 같은 결과가 나오기도 합니다. 

    이미 알고리즘과 방법론 등에 모두 공개되어 있으나 이런 것까지 완벽하게 고려해서 프로그래밍하는 것은 사실 고역이죠. 그 마음은 이해합니다.


    그렇지만, 이번 기회에 그놈이 이런 부분까지 해결을 근본적으로 본다고 하니 잘 한 일이라고 보입니다.

    새롭게 그놈도 태어나야죠.

  • ?
    krhamoni 2018.04.20 10:36

    양, 질, 속도로 나눠 생각할 수 있습니다.


    옛날부터 지금까지 양(量)을 추구하다가 어느정도 성과를 이루자, 질(質)을 추구할 수 밖에 없게 되었고,


    질 역시도 어느정도 성과를 이루자 속도(速度)가 중요하게 되어 집중하게 된 결과, 오늘날


    비슷한 문제가 잊을만하면 발생하게 된 것 같습니다.


    편중(偏重)을 경계하며 균형(均衡)을 추구한다면 최상의 결과에 가까워지리라 생각합니다만, 그걸 구분할줄 안다면


    이런 글을 쓸 이유도 없겠죠.

  • ?
    krhamoni 2018.04.20 10:14

    moordev 님 친절한 설명 감사합니다.


    돈 빌리고 안 갚아서 문제가 생겼다고 보면 될까요?

  • ?
    Moordev 2018.04.23 20:57

    늦게 봤네요.

    많이 비슷합니다. 돈 빌리고 안 갚는 수준이 아니라 돈을 빌리고 계속 빌리기만 하는 상황이라고 봐야겠지요.


    계속 빌리기만 하니 은행(가용 메모리)에는 자꾸 돈이 떨어지고 그러니 다른 사람들이 돈을 못빌리는 상황에 처하게 되는데 사회간접자본(중요 시스템, 네트워크 매니저, UI 관리자 등)에 들어갈 돈까지 가져가는 바람에 사채(스왑)까지 쓰게되면 시스템 전체가 망하게 되는 것이지요.

  • ?
    Ohnine 2018.04.23 18:02
    우분투가 공식으로 채택하고 나서야... 수년간 방치된 메모리누수 버그를 급하게 패치하는걸 보니... 데탑용 리눅스계에서 캐노니컬의 클래스는 포스가 넘사벽인 것 같습니다.
  • ?
    아리수진 2018.04.23 22:11

    우분투 행보에 박수를 보냅니다.

    메모리 누수가 있다는 자백은 보통 용기를 갖지 않고서는 안되는것이니 많은 응원 부탁드립니다.

    저는 리눅스를 사용하시는 분들이 내 식구라고 버그에 관대하지 않으셨으면 합니다.

  • profile
    행복한펭귄 2018.04.24 09:29

    BUG(벌레)는 반드시 때려 잡아야 합니다. ㅋㅋ


    예를 들어서 집에 바퀴벌레가 전혀 보이지 않다고 어떤 이유인지는 모르지만 한 두 마리씩 보이기 시작하면 그냥 그러느니 하고 방치하면 몇 달도 안 되어서 엄청나게 번식해서 나중에는 감당하기 힘든 지경에 까지 이릅니다. 그래서 근본적으로 바퀴벌레를 때려잡는 방법을 동원해서 전멸시켜야죠. ㅋㅋ


    프로그램에서도 버그를 한 번 방치하기 시작하면 꼬리에 꼬리를 물고 예상하지 못한 큰 영향을 끼칩니다. 일종의 나비 효과와 비슷하다고 이해하시면 됩니다. 아주 사소한 것은 방치하지 말고 바로 때려잡아 주기....

    이것이 프로그램과 관련된 사람들의 식견과 기본적인 수칙이 되어야 하지 않을까 생각합니다.

    일종의 프로그래밍 습관에 관한 문제죠. 습관이라는 것이 이런 부분에서도 참으로 중요함을 느낍니다.


    여하튼 오픈 소스 계의 버그에 대한 다양한 시각이 있는데, 분명한 사실은 버그는 방치하면 안 된다는 상식을 지켜나가야 더욱 발전적으로 나갈 것이라 보입니다.


    그리고 최종 사용자도 "나는 전문가가 아니니 알아서 전문가들이 버그를 찾아서 고치시오"라는 심정으로 프로그램을 사용하는 것에 집중하는 것보다는 가능하면 자신이 할 수 있는 범위에서는 최선을 다해서 버그를 보고하고 피드백을 해서 근본적으로 프로그램 버그를 찾고, 고치고 하는데 일조하는 분위기가 된다면 더욱 시스템이 안정적으로 개선될 것입니다. 이 부분도 인식의 전환이 대단히 필요한 부분이죠.


List of Articles
번호 제목 추천 수 글쓴이 날짜 조회 수
공지 게시판에 질문하기 전 읽기 - 어떻게 질문을 하는 것이 좋을까? 1 0 Kevin 2019.11.18 12692
603 우분투(Ubuntu) LTS 리눅스 커널 업데이트 - 2018.04.05. 7 0 la_Nube 2018.04.06 683
602 리눅스민트 19.1 원격접속 질문 file 0 포토슬럼프 2019.02.20 683
601 리눅스에서 하드 배드섹터 등을 검사하는 문제 3 file 0 관우 2019.04.14 682
600 openSUSE Tumbleweed는 Linux 커널 4.16, KDE Plasma 5.12.4에 의해 구동됩니다. 8 file 0 행복한펭귄 2018.04.24 682
599 우분투 14.08(?) / mint 19 초보가 2가지 설치 후 .... 5 0 neo813 2018.06.09 682
598 Trinity 데스크탑 환경 배경화면 사라짐 0 6Gelemen 2020.03.07 682
597 페도라 리눅스 카카오톡에서 한글 입력이 이상하게 되어서 님프 입력기에서 ibus 입력기로 바꿀려고 하는데요. 2 0 라루미 2022.08.07 682
596 하모니카OS 5.0에서 MS 파워포인트 온라인 스크린샷 1 file 0 칩헤드 2021.10.25 681
595 배틀넷 오류가 이렇게 뜹니다 루트리스로 설치후에.. 1 file 0 라루미 2022.08.10 681
594 파이어폭스(Firefox) 60.0 업데이트 1 0 la_Nube(누베) 2018.05.10 680
593 CentOS Linux 7.5 공식 출시, Red Hat Enterprise Linux 7.5 기반 file 0 행복한펭귄 2018.05.11 680
592 만자로 리눅스 하모니카 우분투 페도라 에서 리그오브레전드를 설치해보았습니다. 2 0 라루미 2022.08.17 680
591 데비안 와이파이 드라이버 관련 문제 2 0 6Gelemen 2020.03.05 679
590 윈도우 11 질문 2 0 해중이 2022.05.08 679
589 linux에 airdrop 같은 기능이 있나요~? 3 0 식혜고양이 2018.02.21 678
588 하모니카 이런저런 4 0 Ohnine 2018.03.18 676
587 Ubuntu 18.04.1 LTS (Bionic Beaver) 출시 7 0 행복한펭귄 2018.07.27 676
586 데비안 9.7 나왔습니다. 5 0 세벌 2019.01.25 676
585 그놈 3.30 데스크탑 환경이 더욱 발전적으로 진행되고 있습니다 1 0 행복한펭귄 2018.08.03 675
584 사지방관련 버그리포트는 어디서하나요 1 0 한정훈 2020.07.11 675
Board Pagination Prev 1 ... 88 89 90 91 92 93 94 95 96 97 ... 123 Next
/ 123
CLOSE