분류 전체보기
페도라 리눅스 Chapter 07 파일 시스템, 디스크 관리
리눅스 파일 시스템의 종류 파일 시스템 운영체제의 주요한 기능 중 하나 파일과 디렉터리의 집합을 구조적으로 관리하는 체계 리눅스 고유의 디스크 기반 파일 시스템 ext4 (Fourth Extended File System) 리눅스에서 지원하는 기타 디스크 기반 파일 시스템 리눅스는 표준 파일 시스템이라고 할 수 있는 ext2~4 외에 유닉스나 윈도 시스템 등 타 시스템과 호환되도록, 또한 DVD, USB 같은 외부 저장 장치를 사용하도록 다양한 파일 시스템을 지원 리눅스에서 지원하는 주요 파일 시스템 iso9660 | CD-ROM, DVD의 표준 파일 시스템으로 읽기 전용으로 사용 vfat(file allocation table) | 윈도 96, 98, NT를 지원하기 위한 파일 시스템 현재 방식 ntf..
페도라 리눅스 Chapter 06 프로세스 관리
프로세스 개념 프로세스의 부모-자식 관계 리눅스에서 모든 프로세스는 부모-자식 관계를 가짐 리눅스 시스템을 부팅할 때 스케줄러가 실행한 프로세스인 systemd와 kthreadd 프로세스를 제외하고, 모든 프로세스는 부모 프로세스를 가짐 프로세스 종류 데몬 프로세스 데몬은 평소에는 대기 상태 - 서비스 요청이 들어오면 서비스 제공 -- 다시 대기모드 강제로 종료시키기 전에는 계속 살아있음 죽지 않음 ( systemd , kthreadd ) 고아 프로세스 자식 프로세스는 종료 시 부모 프로세스로 회귀, 그러나 자식 프로세스가 아직 실행 중에 부모 프로세스가 먼저 종료되면 자식 => 고아 프로세스 이 경우 1번 프로세스(systemd) 가 새로운 부모 프로세스가 되어 고아 프로세스의 작업을 종료 좀비 프로세..
[CodeUp] 1097 : [기초-2차원배열] 바둑알 십자 뒤집기
문제 : https://codeup.kr/problem.php?id=1097 #include int main(void) { int n, i, j, x, y; int a[20][20] = {}; for (i = 1; i 0 } } for (i = 1; i
[CodeUp] 1096 : [기초-2차원배열] 바둑판에 흰 돌 놓기
문제 : https://codeup.kr/problem.php?id=1096 #include int main(void) { int locate[20][20] = {}; int n, x, y; scanf_s("%d", &n); for (int i = 0; i < n; i++) { scanf_s("%d %d", &x, &y); locate[x][y] = 1; } for (int i = 1; i < 20; i++) // y축 { for (int j = 1; j < 20; j++) // x축 { printf("%d ", locate[j][i]); // j = x축 , i = y축 } printf("\n"); // x축이 끝날 대 마다 줄바꿈 } return 0; }
[CodeUp] 1095 : [기초-1차원배열] 이상한 출석 번호 부르기3
문제 : https://codeup.kr/problem.php?id=1095 #include int main(void) { int num, arr[30] = {}; scanf_s("%d", &num); for (int i = 0; i arr[j + 1]) { temp = arr[j]; arr[j] = arr[j + 1]; arr[j + 1] = temp; } }..
[CodeUp] 1094 : [기초-1차원배열] 이상한 출석 번호 부르기2
문제 : https://codeup.kr/problem.php?id=1094 #include int main(void) { int num, arr[100]; scanf_s("%d", &num); // 출석을 몇 회에 걸쳐 부를 것인지 for (int i = 0; i = 0; i--) // 입력한 배열 원소값을 거꾸로 출력 { printf("%d ", arr[i]); } return 0; }
[CodeUp] 1093 : [기초-1차원배열] 이상한 출석 번호 부르기1
문제 : https://codeup.kr/problem.php?id=1093 #include int main(void) { int arr[24] = {}; // = {} 으로 각 배열값을 0 으로 초기화 int num, num2; scanf_s("%d", &num); // 선생님이 몇 번이나 출석을 부르는지 for (int i = 0; i < num; i++) { scanf_s("%d", &num2); // 무작위로 번호 입력 ( num의 수 만큼 ) arr[num2] += 1; // 무작위로 부른 출석번호를 배열에 넣어, // 아래 for 문에서 각 번호가 몇 번씩 불렸는지 도출 } for (int j = 1; j < 24; j++) // j 의 초기값이 0 이 아닌 1 로 시작해야 배열값에도 1이 들..
[CodeUp] 1092 : [기초-종합] 함께 문제 푸는 날
문제 : https://codeup.kr/problem.php?id=1092 #include int main(void) { int day, a = 3, b = 7, c = 9; day = 1; while (day % a != 0 || day % b != 0 || day % c != 0) day++; printf("%d ", day); return 0; }
[CodeUp] 1087 : [기초-종합] 여기까지! 이제 그만~
문제 : https://codeup.kr/problem.php?id=1087 #include int main(void) { int num; int sum = 0; scanf_s("%d", &num); for (int i = 0;; i++) // for 문에서 범위를 배제하면 무한루프 동작 { sum += i; if (sum >= num) { printf("%d", sum); break; } } // break; 동작 시 이곳으로 탈출 return 0; }
[알고리즘] 버블 정렬(bubble sort)
버블 정렬은 가장 기초적인 소팅 형식으로, 단순하게 구현이 가능하기 때문에 소팅의 개념을 이해하기 위한 교육용으로 적합합니다. 위 처럼 정렬되는 모습이 마치 거품이 일어나는 것과 유사하다고 하여 버블 정렬이라고 합니다. 어떤 원리로 동작하나요 ? 서로 인접한 두 원소를 검사하여 정렬하는 알고리즘입니다. 인접한 2개의 원소를 비교하여 크기가 순서대로 되어 있지 않으면 서로 교환한다. 이 순서는 코드의 조건을 구성하는 방식에 따라 오름차순과 내림차순 두 가지 형태로 출력됩니다. 버블 정렬은 첫 번째 자료와 두 번째 자료를, 두 번째 자료와 세 번째 자료를, 세 번째와 네 번째를, … 이런 식으로 (마지막 - 1)번째 자료와 마지막 자료를 비교하여 교환하면서 자료를 정렬합니다. 1회전을 수행하고 나면 가장 큰..