2024/11 9

[컴퓨터구조][Cache Coherence]

[컴퓨터구조][Cache]CPU의 구조에 대해서 배웠을 때, Instruction memory와 Data memory가 있었던 것을 기억하실 거에요.  Instruction memory와 Data memory는 실제로 Cache memory를 사용합니다. Cache memory를 사용하는 이유는, 메모리monkey-engineer.tistory.com cache에 대해서 잘 모르신다면, 이전에 작성한 Cache 포스팅을 읽고 오시면 도움이 됩니다.       일반적으로 정보를 가지러 Main memory에 접근해야 하지만, 이 경우 overhead가 많이 듭니다.그 이유는 메모리의 계층구조에서 알 수 있듯이 Main Meomory에 접근하기 위해서 많은 Clock이 소요되기 때문입니다.  이 문제를 해결..

[컴퓨터 구조][Out of order]

[컴퓨터 구조][Parallel]컴퓨터 구조에서 병렬처리는 여러 프로세서를 연결하여 성능을 향상시키는 것으로Scalability(확장성)을 확보하며, 전력 효율성을 높이기 위해서 사용됩니다.  컴퓨터 구조에서 병렬처리에는 ILP,monkey-engineer.tistory.com     지난 포스팅을 보시면, Parallel에 대해서 알아보며 ILP, DLP, TLP에 대해서 알아봤었습니다. 결국에는 "병렬로 수행해서 성능을 향상시키기 위해서라는 것"이라는 공통의 목표로 병렬성을 증가시킨 것 입니다.  지난 시간에 ILP에 대해서 배우며 그 예시로, 기존에 배웠던 것에서는 Pipelining과 Branch predictor, Hazard detector등을 이용하면 CPI가 줄일 수 있기 때문에 전체적인 ..

[신호와 시스템][Time Transformation]

Time Transformation은 주어진 신호를 시간의 변화에 따라 변환시키는 개념입니다. 시간 이동에는 Time Shifting, Time Reversal, Time Scaling이 있습니다.  그리고 마지막으로 위의 세 가지를 혼합해서 사용하는 Amplitude Transformation이 있습니다.    Time Shifing      $\text{x(t - a)}$는 $\text{x(t)}$를 time축상에서 오른쪽으로 a만큼 이동하는 것 입니다.  만약에 아래와 같이 그려지는 함수가 있다고 가정하고 그려보자면 아래와 같습니다. $\text{x(t)} \; = \begin{matrix} 0 \; , \; t \leq -1 \\ t+1 \; , \; -1 2\end{matrix}$   위의 함..

[컴퓨터 구조][Parallel]

컴퓨터 구조에서 병렬처리는 여러 프로세서를 연결하여 성능을 향상시키는 것으로Scalability(확장성)을 확보하며, 전력 효율성을 높이기 위해서 사용됩니다.  컴퓨터 구조에서 병렬처리에는 ILP, DLP, TLP라는 세 가지 주요 용어가 있습니다.     ILP(Instruction Level Parallelism)     ILP는 Instruction level parallelism으로 단일 프로그램 내에서독립적인 명령어들을 병렬로 실행함으로써 성능을 향상시키는 기술입니다. ILP에 사용되는 주요 기술에는 이전에 저희가 많이 배웠던 Pipelining이 있고,다음 시간에 배울 Out of order Execution과 Superscalar가 있습니다.또한 branch predictor와 hazard ..

[신호와 시스템][Elementary Signals]

순서상 Time transformation에 대해서 먼저 알아봐야 하지만,Elementary Signals은 암기해야 할 것들이 조금 있어서 먼저 살펴보겠습니다.       Unit Step Function(signal)       unit step function은 위와 같은 형태를 띄고 있습니다.$\text{u(t) = } \begin{matrix} 1,\; t > 0 \\ 0,\; t  $u(0) =  \frac{1}{2}[u(0^{+})+u(0^{-})]=\frac{1}{2} \; \text{or} \; undefined$       Rectangular function(pulse)         위의 pulse는 $rect(\frac{t}{2a})$와 같이 표현할 수 있고, Rectangular..

[Operating System/운영체제][Working set page replacement algorithm, WSClock page replacement algorithm]

지난 시간에 이어서 마지막인 Working set page replacement algorithm과WSClock page replacement algorithm에 대해서 알아보도록 하겠습니다.       The Working Set Page Replacement Algorithm     Working Set Page Replacement Algorithm은 Locality 개념을 기반으로 한 페이지 교체 알고리즘입니다. 프로세스가 실행되는 동안 자주 사용되는 페이지 집합을 유지하여 page fault를 줄이는 것을 목표로 합니다.간단히 말해, 프로세스가 일정 시간 동안 활성 상태로 유지하는 페이지들의 집합을 Working Set이라고 합니다.  working set의 정의는 $\text{W(k , t)}..

[Operating System/운영체제][Inverted page table, Page replacement algorithm]

Inverted page table       지난 시간에 multilevel page table에 대해서 배워봤습니다.multilevel page table을 사용해도 되는데 Inverted page table은 왜 사용할까요?  Inverted page table은 모든 프로세스가 공유하는 단일 테이블을 사용하고 이 방식으로 인해서프로세스별로 개별적인 페이지 테이블을 가지고 있는 일반적인 방법과 다르게 메모리 사용량이 크게 줄어드는 것 입니다. 쉽게 생각해보면, 일반적으로는 프로세스의 모든 가상 페이지에 대한 엔트리를 page table이 가지고 있지만,Inverted page table은 각 physical page마다 하나의 엔트리만 유지하기 때문에 메모리를 적게 사용한다는 것 입니다.      ..

[신호와 시스템][Energy and Power signal]

오늘은 Energy signal과 Power signal에 대해서 배워보도록 하겠습니다.  Energy signal과 Power signal을 이용하는 이유는 무엇일까요?  Energy signal은 무한한 시간 동안 에너지가 유한한 신호입니다. 쉽게 이야기해서 신호이 전체 에너지가(대부분의 경우) 유한한 경우를 말합니다. 그 예시로 펄스 등과 같이 비주기적인 신호가 에너지 신호에 해당합니다.  Power signal은 무한한 시간 동안 평균 전력이 유한한 신호입니다. 주기적인 신호나 지속적인 신호에서전력을 구하는 것으로 전력이 유한하지만 에너지는 무한한 신호입니다.예시로 사인파 등과 같은 주기적인 신호가 전력 신호에 해당하게 됩니다.  Energy signal과 Power signal을 판별하는 방법은..

[Operating System/운영체제][TLB, Multilevel page table]

지난 시간에 paging의 단점에는 두 가지가 있다고 배우고 간단한게 첫 번째 문제를 해결하기 위한 방법으로TLB에 대해서 간략하게 소개하고 난 이후에 글을 끝냈습니다. 지난 내용을 잠시 떠올리자면, 첫 번째로 paging기법에서 main memory로 정보를 가져가기 위한 cost가 많이 든다는 것이고,두 번째로 page table이 너무 큰 용량을 차지하기 때문에 문제가 발생할 수 있다는 단점이 존재했습니다.  이제 해당 단점을 개선하기 위한 방법들을 이야기 할 건데, 지난 시간에 TLB에 대해서 간략하게만 이야기 했기 때문에자세하게 살펴보고 난 이후에 두 번째 문제점의 개선 방법을 알아보고 글을 마치도록 하겠습니다.        TLB(Table Lookaside Buffer)         TLB..