728x90
반응형

cpp 5

[C++] 컨텍스트 스위치란

컨텍스트 스위치(Context Switch)CPU가 현재 실행 중인 프로세스 또는 스레드에서 다른 프로세스 또는 스레드로 전환하는 과정 이 과정에는 현재 실행 중인 프로세스의 상태(컨텍스트)를 저장하고, 새로운 프로세스의 상태를 불러와서 CPU가 이어서 작업을 수행할 수 있도록 하는 작업이 포함 컨텍스트 스위치는 다음과 같은 상황에서 발생- Time Slice가 끝났을 때: 운영체제가 각 프로세스에 할당한 시간이 끝나면 다음 프로세스로 전환 - I/O 요청이 있을 때: 프로세스가 I/O 작업을 요청하면, 그 작업이 완료될 때까지 CPU는 다른 프로세스로 전환 - 우선순위가 높은 프로세스가 등장했을 때: 더 높은 우선순위를 가진 프로세스가 실행 준비가 되면, 현재 프로세스를 중단하고 우선순위가 높은 프로세..

C++ 2024.03.17

[CPP] 분할 구현

- .h(헤더) 파일에는 함수나 클래스의 선언 - .cpp 파일에는 함수나 클래스의 구현(구현하는 부분에서는 선언한 .h파일을 #include "~~.h"식으로 전처리 해주어야 한다) - 이후 함수를 참조하려면 .h파일 전처리(#include) 하면 해당 함수 사용 가능 test.hclass TestClass{ private: int m_testValue; public: void Output(); void Set(int _value); int Get(); }test.cpp #include #include "test.h" void Test::Output(){ std::cout

C++ 2024.03.15

[C++] Quick Sort 퀵 정렬

[퀵 정렬의 이점]- 무작위로 분포되어 있고, 많은 양의 데이터를 정렬할 때도 효율적이고 빠르다 - 메모리 요구량이 작음 - 보통의 경우의 정렬 효율은 Log N이지만 이미 정렬된 배열을 정렬하면 O(n^2) 효율이 되므로 주의해야 한다.#include void swap(int &a, int &b); void QuickSort(int *arr, int start, int end); int main() { int qs[] = {7, 8, 5, 4, 3, 9, 1, 2, 6}; QuickSort(qs, 0, 8); for (int i = 0; i < (int)(sizeof(qs) / sizeof(*qs)); i++) { std::cout

C++ 2024.03.15
728x90
반응형