본문 바로가기

STUDY8

(시스템 프로그래밍) The Memory Hierarchy 은 저장 장치들의 계층구조이다. 위로 갈수록 용량이 작고, 비싸고, 대신 빠르게 접근 할 수 있다. 좋은 지역성(Locality)를 갖는 프로그램들은 나쁜 지역성을 가진 프로그램보다 좀 더 상위 메모리 계층에서, 더 많은 데이터에 접근하려는 경향이 있으며, 따라서 더 빨리 돌게 된다. 이 로컬리티에 따라 응용 성능이 크게 달라지기 때문에 메모리 시스템을 잘 이해하는 것이 중요하다. 1. RAM (Random Access Memory) - 램은 SRAM과 DRAM이 있다. - Volitile 성격(휘발성): Lose information if the supply voltage is turned off. 전원 공급이 되지 않으면 메모리에 들어있던 정보들이 사라진다. RAM에는 SRAM(Static RAM)과.. 2020. 5. 31.
열혈 C : 도전 프로그래밍4_1번, 2번 문제 구조체에 대해 복습할 수 있었던 좋은 예제였다.. 여기 올려두고 종종 참고해야겠다...... 1번 문제 #include typedef struct book{ char title[30]; char writer[20]; int pagenum; }Boook; int main(void) { int i, count=3; Boook bk1, bk2, bk3; Boook * arr[3]={&bk1, &bk2, &bk3}; printf("도서 정보 입력\n"); for(i=0; i 2020. 3. 21.
맥북 도커 설치 및 우분투 실행 How to install Docker on MacOS and execute ubuntu 오늘 밤에 이거하다 시간 다 간듯...중간에 터미널 설정 꾸며보겠다고 난리치다가 포기,,,,, 담에 다시한다 너.. 학교 모든 강의에서 모든 파일 linux로 실행되어야 한다고 해서 사실 맥북쓰면 맥북이 unix기반으로 되어있고 (linux는 unix기반) 간단한 것들은 비슷,,하다고 해서 그냥 설치하지 않으려 했으나, 마음 한켠 이거 작동 안 되면 어떡하지 하고 도커를 설치하게 되었다.. 사실 맥북에서 리눅스를 실행하는 방법은 정말 여러가지이지만, 별로 무겁게 쓰고싶지도 않고 도커가 좋다는 말이 많아서 (그리고 잘 사용할 수 있으면 나중에 다 도움된다는 얘기에) 도커 설치 후 도커에서 우분투를 실행해기로 했다.. .. 2020. 3. 18.
열혈 C : 문제 25-2 malloc, calloc, realloc 함수 이용하기 -1를 입력할 때까지 정수 입력받은 후 출력 초기 배열길이: 5 / 꽉 찰때마다 3씩 추가 배열의 길이 모르기때문에 malloc 혹은 calloc 함수를 이용해야함. 마지막에 출력할 때, 값을 넣지 않은 인덱스값에 쓰레기값이 들어있는게 싫어서 나는 calloc함수를 이용했다. (calloc -> 모든 비트 0으로 초기화 / malloc -> 쓰레기 값으로 초기화) #include #include int main(void) { int i=0, num; typedef unsigned int usint; usint size = 5; int * ptr = (int *)calloc(size, sizeof(int)); printf("정수입력: "); scanf("%d", &num); while(num!=-1) { .. 2020. 3. 16.