본문 바로가기

알고리즘16

운영체제 24장 - 메모리 관리(11) : 페이지 교체 알고리즘 - 운영체제 24장- 페이지 교체 알고리즘 - 가상 메모리는 요구 페이지 기법을 통해 필요한 페이지만 backing store에서 메모리로 적재를 하고 사용하지 않는 부분은 그대로 둔다. 하지만 필요한 페이지만 올린다고 하더라도 메모리가 나중에는 가득 차게 되고 올라와있던 페이지가 사용이 다 된 후에도 자리만 차지하고 있을 수 있다. 메모리가 가득 차면 추가로 페이지를 가져오기 위해 어떤 페이지는 page-out을 해야 하고 그 빈 공간에 필요한 페이지가 page-in을 해야 한다. 여기서 어떤 페이지를 backing store로 page-out을 시킬 것인지에 대해서 고민을 하게 된다. page-out이 되는 페이지를 victim page라고 부르는데 기왕이면 수정이 되지 않는 페이지를 선택하려고 한다. .. 2017. 5. 13.
운영체제 23장 - 메모리 관리(10) : 페이지 교체 - 운영체제 23장- 페이지 교체 - 요구 페이징은 요구되어지는 페이지만 backing store에서 가져와 메인 메모리에 적재하는 방법이다. 필요한 페이지만 메인 메모리에 올리므로 메모리의 낭비를 줄이는 방법으로 사용되었다. valid 비트를 추가한 페이지 테이블과 필요하지 않은 페이지를 보관하는 backing store를 가지고 기능을 수행할 수 있다. 하지만 프로그램 실행이 계속 진행되게 되면 요구 페이지가 늘어나게 되고 언젠가는 메모리가 가득 차게 될 것이다. 페이지를 backing store에서 가져와 메모리에 올려야 되는데 메모리에 자리가 없는 것이다. 이럴 경우 메인 메모리에 있는 특정 페이지를 내보내야할 필요가 있다. 그 자리에 필요한 다른 페이지를 올려야한다. 이를 페이지 교체라고 한다. 메.. 2017. 5. 11.
데이터 마이닝 1장 - 데이터 마이닝 기초 지식 - 데이터 마이닝 1장- 데이터 마이닝 기초 지식 - 마이닝이라고 하는 것은 광부가 광산에서 석탄과 같은 것을 캐는 과정을 말한다. 결과적으로 데이터 마이닝이라고 하는 것은 기업의 특정한 데이터들로부터 무언가를 캐내는 것을 의미한다. 그러면 여기서 무엇을 깨낼 것인가? 바로 새로운 지식에 대해서 알아내는 것이다. 이렇게 기존에 있던 데이터들로 새로운 지식을 캐어내는 것을 데이터 마이닝이라고 한다. 데이터 마이닝을 하는 기법에는 여러 가지 종류가 있다. 크게 두 가지로 나눌 수 있다. 자율학습 분석기법과 지도학습 분석기법이 있다. 데이터 마이닝의 예시를 보게 되면 추천 제도를 들 수 있다. A라는 사람이 쇼핑 사이트에서 여러 가지 제품을 구매 했는데 이에 대해 기업은 데이터를 모으게 된다. 기업은 이를 이용해.. 2017. 4. 29.
세션 하이재킹 공격 & 부채널 공격 세션 하이재킹 공격 & 부채널 공격 세션 하이재킹 공격은 두 시스템 간 연결이 활성화된 상태, 즉 로그인된 상태를 가로채는 것을 말한다. 서버와 클라이언트가 TCP를 이용해서 통신하고 있을 때, RST 패킷을 보내 일시적으로 TCP 세션을 끊고 시퀀스 넘버를 새로 생성해 세션을 빼앗아 인증을 회피하는 공격이다. 세션 하이재킹은 세션 가로채기라고 한다. 세션이 사용자와 컴퓨터, 또는 두 대의 컴퓨터 간의 활성화된 상태를 나타낸다. 가장 쉬운 세션 하이재킹은 누군가 작업을 하다가 잠시 자리를 비운 PC를 몰래 사용해 원하는 작업을 하는 것이다. TCP 세션 하이재킹은 서버와 클라이언트가 통신할 때 TCP 시퀀스 넘버를 제어하는 데 문제점이 있음을 알고 공격하는 것이다. TCP 세션 하이재킹은 Non-Blin.. 2017. 4. 23.
운영체제 5장 - 프로세스 관리(2) : 스케줄링 - 운영체제 5장- 프로세스 관리(2) : 스케줄링 - 앞장에서 설명한 스케줄링의 종류가 3가지가 있었다. 하지만 그 중 CPU 스케줄링이 가장 중요하다고 할 수 있다. 이 점은 컴퓨터의 성능과 바로 직결되는 문제를 안고 있기 때문이다. 따라서 CPU 스케줄링이 어떻게 진행되는지에 대해 학습해 보고자 한다. CPU 스케줄링은 크게 두 가지의 특징으로 나눌 수 있다.선점하는 방식(Preemptive)과 비선점하는 방식(non-preemptive)이다. 선점하는 방식은 하나의 프로세스가 CPU를 할당받아 작업을 수행하고 있는 도중에 다른 프로세스가 새치기를 할 수 있는 방식을 말한다. 따라서 선점하는 방식을 사용하면 언제든지 CPU가 다른 프로세스에 할당될 수 있다. 하지만 비선점하는 방식을 사용하면 하나의 프.. 2017. 4. 16.
데이터 마이닝 데이터 마이닝 정보화 시대에서 가장 큰 이슈는 바로 빅데이터이다. 엄청나게 많은 자료가 인터넷이라는 매체를 통해 쏟아져 나온다. 엄청나게 큰 도서관조차도 인터넷의 빅데이터 앞에서는 매우 초라해질 수밖에 없다. 21세기 기업에게 가장 중요한 자산은 바로 데이터이며 이를 관리하고 여기서 가자치를 이끌어내는 기업만이 살아남을 수 있는 시대가 된 것이다. 빅데이터의 주된 특징으로는 크기, 다양성, 속도가 꼽혔다. 단순히 양이 많다고 해서 빅데이터가 되는 것이 아니다. 물론 물리적 크기가 큰 데이터가 빅데이터이지만 그 뿐만 아니라 데이터의 형태가 다양성을 가지고 다양성에 따른 기술을 확보해야한다. 또한 데이터의 처리 능력인 속도가 매우 중요한 역할을 하고 있다. 많은 데이터를 가지고만 있고 처리할 능력이 없다면 .. 2017. 4. 14.