728x90 분류 전체보기279 [OS] 스레드 프로세스와 스레드 프로세스 스레드 운영체제 입장에서 작업 단위 CPU 입장에서 작업 단위 서로 독립적 프로세스A가 비정상 종료되어도 프로세스B는 정상 작동 서로 강하게 연결 프로세스가 종료되면 프로세스 내의 스레드도 강제종료 데이터를 주고 받을 때, 프로세스 간 통신(IPC) 이용 변수, 파일을 공유하고 전역 변수나 함수 호출을 통해 통신 스레드 CPU 스케줄러가 CPU에 전달하는 일 하나 하나의 프로세스에는 여러 개의 스래드가 존재할 수 있음 - 관련 용어 멀티 스레드 : 프로세스 내 작업을 여러 개의 스레드로 분할함으로써 작업의 부담을 줄이는 프로세스 운영 기법 멀티 태스킹 : 운영체제가 CPU에 작업을 줄 때 시간을 잘게 나누어 배분하는 기법 (시분할 시스템) 멀티 프로세싱 : CPU를 여러 개 사.. 2021. 11. 2. [OS] 프로세스 프로그램 vs 프로세스 - 프로그램 저장장치에 저장되어 있는 정적인 상태 - 프로세스 실행을 위해 메모리에 올라온 동적인 상태 프로그램으로 작성된 작업 절차를 실행에 옮김 하나의 작업 단위 (=태스크, task) - 프로그램에서 프로세스로 전환 프로그램이 운영체제로부터 프로세스 제어 블록 (PCB, Process Control Block)을 받으면 프로세스가 됨 프로세스 = 프로그램 + 프로세스 제어 블록 프로세스 상태 - 생성 상태 (create status) 프로그램이 메모리에 올라오고 운영체제로부터 프로세스 제어 블록 할당받은 상태 메모리 할당, 프로세스 제어 블록 생성 - 준비 상태 (ready status) 프로세스가 CPU를 얻을 때까지 기다리는 상태 프로세스 제어 블록은 준비 큐 (ready.. 2021. 11. 2. [OS] 운영체제 개요 운영체제 (Operating System) 일반 컴퓨터나 노트북의 전원을 켜면 가장 먼저 만나게 되는 소프트웨어 사용자에게 편리한 인터페이스 환경을 제공하고 컴퓨터 시스템의 자원을 효율적으로 관리하는 소프트웨어 하드웨어 전체를 관리하는 소프트웨어 - 운영체제 종류 컴퓨터용 운영체제 개인용 : 윈도우, Mac OS 대형 컴퓨터 : 유닉스, 리눅스 모바일 운영체제 : iOS, 안드로이드 임베디드 운영체제 : CPU의 성능이 낮고 메모리 크기도 작은 시스템에 내장하도록 만든 운영체제 운영체제의 역할 - 자원관리 컴퓨터 자원 (computer resource) : 컴퓨터에 부착된 모든 장치 운영체제는 자원을 적절히 응용 프로그램에게 배분/회수하여 사용자가 원활히 작업할 수 있도록 도움 - 자원 보호 비정상적인 .. 2021. 11. 2. [BOJ/Python] 5052. 전화번호 목록 📌 문제 https://www.acmicpc.net/problem/5052 5052번: 전화번호 목록 첫째 줄에 테스트 케이스의 개수 t가 주어진다. (1 ≤ t ≤ 50) 각 테스트 케이스의 첫째 줄에는 전화번호의 수 n이 주어진다. (1 ≤ n ≤ 10000) 다음 n개의 줄에는 목록에 포함되어 있는 전화번호가 www.acmicpc.net 📌 문제 접근 방법 처음에는 입력 받은 번호를 정렬시키고 하나씩 비교하면서 다른 숫자를 찾았다. 될 줄 알았는데 n이 10000까지 입력가능하니까 최악의 경우엔 1초를 넘긴다. 그래서 코드를 갈아엎었다! 인덱스를 초기에 0으로 설정해놓고 모든 문자열을 순회하면서 해당 인덱스의 값을 key로, 해당 문자열을 value로 해서 temp에 넣는다. temp의 value중.. 2021. 10. 30. 이전 1 ··· 18 19 20 21 22 23 24 ··· 70 다음 728x90