More actions
({CREATE}) |
(Repair batch-0005 pages from live compare) |
||
| (4 intermediate revisions by one other user not shown) | |||
| Line 1: | Line 1: | ||
__TOC__ | |||
== 우리가 배우는(아는) 것 == | |||
* 운영체제가 올라간다 | |||
* 프로그램이 올라간다 | |||
* 운영체제의 입장 | |||
* 어플리케이션의 입장 | |||
** 다다익램! | |||
* 서버 입장 | |||
** 다다익램! | |||
* 프로그래머 입장 | |||
** 할당 해지나 잘해라 | |||
== 우리가 아는지 모르는지 모르는 지식 == | |||
=== 색마다 듀얼 채널 구성할때 같은 사이즈와 같은 속도? === | |||
* 더 이상 그렇지 않다 | |||
* Intel flex memory로 (AMD도) | |||
* 가능한 구성 | |||
** 2+4, 4+2, 2+2+2, 2+4+2+4, ... | |||
* 실제로는 같은 메모리를 사용하는 것보다 조금은 못하지만 | |||
* 그래도 걍 쓰는게 낫다 | |||
** 아무거나 막 꼽아봅시다 | |||
=== DDR4 vs DDR3 === | |||
* 셀 클럭 수가 제자리 | |||
* 따라서 성능 차이가 크지 않다 | |||
* 용량 큰 거를 삽시다 | |||
=== 쓰레기 값은 의미 없는 값이다? === | |||
* 실제로는 의미가 있는 값이다. | |||
* 제대로 메모리가 동작하기 때문에 만들어지는 값 | |||
* 프로세서, 운영체제, 컴파일러가 만든다 | |||
* 모든 셀에서 random한 voltage를 읽어들이므로, 전부 랜덤한 값 | |||
* 즉, 셀이 살아있다는 증거 | |||
* 프로그램 개발에서 확인 가능한 쓰레기값 | |||
** 예약된 값들 | |||
** 0xCCCCCCCC 초기화되지않은 스택 변수 | |||
** 0xCDCDCDCD 초기화되지않은 힙 변수 | |||
** 0xDDDDDDDD release된 힙 메모리 | |||
** 등등 | |||
** Magic Debug Values, Magic Number | |||
** 특정 상황에서 만들어내는 값 | |||
** 이를 통해 메모리 덤프 오류를 찾아 낼 수 있다 | |||
=== ECC 있으면 오케이? === | |||
* 우리가 알지 못하는 오류가 있다 | |||
* 메모리 오류 | |||
** 어플리케이션 구현시 발생하는 오류는 논리적인 이유가 주 | |||
** 운영체제에서의 메모리 오류 | |||
** 운영체제도 모르는 할당이 발생 - 세그멘테이션 폴트 | |||
** 운영체제가 모른는 메모리 읽기 오류 | |||
** ..OOPS | |||
** 가상페이지 관련 | |||
** 그래도 무슨 오류인지 알려준다 | |||
** 물리페이지 관련 | |||
** | |||
/*누군가 좀 풀어주세영*/ | |||
** HWPoison | |||
*** x86프로세서 + ECC가 제공하는 기능 | |||
*** 읽기 쓰기 오류가 발생할 경우, CR 레지스터를 1로 변경 | |||
*** MCA 시스템을 동작, 리커버리 알고리즘 진행을 위한 시그널 및 인터럽트 발생 | |||
*** 해당 메모리의 물리 페이지를 이용하지 못하도록 방지 | |||
*** 특정 셀을 격리 | |||
*** 시스템이 바로 죽지 않는다 | |||
*** ECC도 당한다 | |||
*** 클라우드 환경으로 변하면서 컴퓨터들이 밀집 | |||
*** 기본적으로 높은 사용량을 보인다 | |||
*** 블루진 슈퍼컴퓨터 및 구글, 아마존, 페이스북 등의 데이터 센터에서 발생한 fail 오류 중 30% 가까운 ㅇ오류가 메모리 오류에 의해 발생 | |||
*** 10%는 컴퓨트 노드 셧다운 | |||
** 셀이 망가졌어요! | |||
** 쓰기가 안됩니다 | |||
** 읽기가 안됩니다 | |||
** 근데 왜 이런 거를 몰랐지 | |||
*** 하드웨어는 오류가 안날줄 알았지! | |||
*** 유일한 변명거리 cosmic ray = 생활 방사선 | |||
*** 하지만 메모리 셀을 cosmic ray 외엔 당할리 없다 | |||
*** 메모리 셀에 잦은 읽기, 쓰기가 발생하면서 열화가 진행 | |||
*** 셀 하드웨어적으로 무너지면서 망가짐 | |||
*** 이를 위한 기술들이 연구가 도입되지 않음 | |||
*** 장담을 못함 | |||
**** 잘 못 건들면 운영체제가 동작을 안함 | |||
*** 그냥 새걸로 갈아 | |||
** 그냥 일반 메모리는요? | |||
** 걍 죽는다 | |||
** 일반적인 PC가 메모리 오류를 아는 방법 | |||
** Memtest86 | |||
*** 운영체제 시작 전에 메모리 모듈을 검사할 수 있는 변종 운영체제 | |||
** 모바일은요? | |||
** 더더욱 모른다 | |||
** Mac, I OS는 체크하는 기능이 있다 | |||
== 메모리는 응답이 없다 == | |||
* 진짜 없다 | |||
* 그래서 정말 아는 것 같으면서도 모른다 | |||
* ~~결론의 상태가??~~ | |||
Latest revision as of 00:44, 27 March 2026
우리가 배우는(아는) 것
- 운영체제가 올라간다
- 프로그램이 올라간다
- 운영체제의 입장
- 어플리케이션의 입장
- 다다익램!
- 서버 입장
- 다다익램!
- 프로그래머 입장
- 할당 해지나 잘해라
우리가 아는지 모르는지 모르는 지식
색마다 듀얼 채널 구성할때 같은 사이즈와 같은 속도?
- 더 이상 그렇지 않다
- Intel flex memory로 (AMD도)
- 가능한 구성
- 2+4, 4+2, 2+2+2, 2+4+2+4, ...
- 실제로는 같은 메모리를 사용하는 것보다 조금은 못하지만
- 그래도 걍 쓰는게 낫다
- 아무거나 막 꼽아봅시다
DDR4 vs DDR3
- 셀 클럭 수가 제자리
- 따라서 성능 차이가 크지 않다
- 용량 큰 거를 삽시다
쓰레기 값은 의미 없는 값이다?
- 실제로는 의미가 있는 값이다.
- 제대로 메모리가 동작하기 때문에 만들어지는 값
- 프로세서, 운영체제, 컴파일러가 만든다
- 모든 셀에서 random한 voltage를 읽어들이므로, 전부 랜덤한 값
- 즉, 셀이 살아있다는 증거
- 프로그램 개발에서 확인 가능한 쓰레기값
- 예약된 값들
- 0xCCCCCCCC 초기화되지않은 스택 변수
- 0xCDCDCDCD 초기화되지않은 힙 변수
- 0xDDDDDDDD release된 힙 메모리
- 등등
- Magic Debug Values, Magic Number
- 특정 상황에서 만들어내는 값
- 이를 통해 메모리 덤프 오류를 찾아 낼 수 있다
ECC 있으면 오케이?
- 우리가 알지 못하는 오류가 있다
- 메모리 오류
- 어플리케이션 구현시 발생하는 오류는 논리적인 이유가 주
- 운영체제에서의 메모리 오류
- 운영체제도 모르는 할당이 발생 - 세그멘테이션 폴트
- 운영체제가 모른는 메모리 읽기 오류
- ..OOPS
- 가상페이지 관련
- 그래도 무슨 오류인지 알려준다
- 물리페이지 관련
/*누군가 좀 풀어주세영*/
- HWPoison
- x86프로세서 + ECC가 제공하는 기능
- 읽기 쓰기 오류가 발생할 경우, CR 레지스터를 1로 변경
- MCA 시스템을 동작, 리커버리 알고리즘 진행을 위한 시그널 및 인터럽트 발생
- 해당 메모리의 물리 페이지를 이용하지 못하도록 방지
- 특정 셀을 격리
- 시스템이 바로 죽지 않는다
- ECC도 당한다
- 클라우드 환경으로 변하면서 컴퓨터들이 밀집
- 기본적으로 높은 사용량을 보인다
- 블루진 슈퍼컴퓨터 및 구글, 아마존, 페이스북 등의 데이터 센터에서 발생한 fail 오류 중 30% 가까운 ㅇ오류가 메모리 오류에 의해 발생
- 10%는 컴퓨트 노드 셧다운
- 셀이 망가졌어요!
- 쓰기가 안됩니다
- 읽기가 안됩니다
- 근데 왜 이런 거를 몰랐지
- 하드웨어는 오류가 안날줄 알았지!
- 유일한 변명거리 cosmic ray = 생활 방사선
- 하지만 메모리 셀을 cosmic ray 외엔 당할리 없다
- 메모리 셀에 잦은 읽기, 쓰기가 발생하면서 열화가 진행
- 셀 하드웨어적으로 무너지면서 망가짐
- 이를 위한 기술들이 연구가 도입되지 않음
- 장담을 못함
- 잘 못 건들면 운영체제가 동작을 안함
- 그냥 새걸로 갈아
- 그냥 일반 메모리는요?
- 걍 죽는다
- 일반적인 PC가 메모리 오류를 아는 방법
- Memtest86
- 운영체제 시작 전에 메모리 모듈을 검사할 수 있는 변종 운영체제
- 모바일은요?
- 더더욱 모른다
- Mac, I OS는 체크하는 기능이 있다
- HWPoison
메모리는 응답이 없다
- 진짜 없다
- 그래서 정말 아는 것 같으면서도 모른다
- ~~결론의 상태가??~~