전체 글 (247) 썸네일형 리스트형 [운영체제와 정보기술의 원리] 5. 프로세스 관리 1. 프로세스의 개념프로세스(process)란 실행 중인 프로그램(program in execution)을 뜻한다. 디스크에 실행파일 형태로 존재하던 프로그램이 메모리에 올라가서 실행되기 시작하면 비로소 생명력을 갖는 프로세스가 되며, 프로세스는 CPU를 획득해 자신의 코드를 수행하기도 하며, 때로는 CPU를 반환하고 입출력 작업을 수행하기도 하고, 그러다 임무를 다 수행하고 나면 종료되어 사라지게 된다. 프로세스의 문맥(context)이란 프로세스가 현재 어떤 상태에서 수행되고 있는지 정확히 규명하기 위해 필요한 정보를 의미한다. CPU를 사용하다 빼앗겼다가 다시 CPU를 획득해 명령의 수행을 재개하는 시점이 되면 이전의 CPU 보유 시기에 어느 부분까지 명령을 수행했는지 직전 수행 시점의 정확한 상태.. [운영체제와 정보기술의 원리] 4. 프로그램의 구조와 실행 1. 프로그램의 구조와 인터럽트프로그램이 CPU에서 명령을 수행하려면 해당 명령을 담은 프로그램의 주소 영역이 메모리에 올라가 있어야 한다. 이때, 프로그램의 주소 영역은 크게 코드, 데이터, 스택 영역으로 구분된다. 코드 영역은 우리가 작성한 프로그램 함수들의 코드가 CPU에서 수행할 수 있는 기계어 명령어 형태로 변환되어 저장되는 부분이고, 데이터 영역은 전역 변수 등 프로그램이 사용하는 데이터를 저장하는 부분이다. 스택 영역은 함수가 호출될 때 호출된 함수의 수행을 마치고 복귀할 주소 및 데이터를 임시로 저장하는 데 사용되는 공간이다. 프로그램은 처음 메인함수에서 실행을 시작해 메인함수가 다른 함수를 호출하면, CPU가 다른 함수의 코드로 수행 위치를 이동한다. 그러면 프로그램은 새로운 함수 위치로.. [Vue 3] Vue 3 프로젝트에 leaflet 라이브러리 적용하기 메인화면에 지도를 표시하기 위해서 Leaflet 라이브러리를 사용했다. Leaflet은 무료로 사용할 수 있는 오픈 소스 라이브러리이며 사용하기 편하다. 현재 프로젝트는 Vue 3 이기 때문에 이와 호환이 되는 vue-leaflet을 사용했으며 이를 사용하기 위해서는 먼저 설치를 해야한다.npm i -D @vue-leaflet/vue-leaflet leaflet 그리고 Quickstart 코드를 복사해서 사용할 수 있는데 몇가지 변경해야 할게 있다. 먼저, 기본으로 제공되는 코드를 바로 실행하면 화면 렌더링이 되지 않는데, 서버 측 렌더링과 트리 쉐이킹 기능을 제공하기 위해 vue-leaflet은 맵 구성 요소에서 useGlobalLeaflet 옵션을 비활성화해야 한다고 한다. 그래서 :useGlobal.. [운영체제와 정보기술의 원리] 3.컴퓨터 시스템의 동작 원리 1. 컴퓨터 시스템의 구조컴퓨터 시스템의 구조는 컴퓨터 내부장치인 CPU, 메모리와 컴퓨터 외부 장치인 디스크, 키보드, 마우스, 모니터, 네트워크 장치등으로 구성된다. 외부장치에서 내부장치로 데이터를 읽어와(입력) 연산을 처리후 그 결과를 외부장치로 내보내는 방식(출력)을 입출력(I/O)이라고 한다. 메모리 및 입출력장치 등의 하드웨어 장치에는 컨트롤러가 있다. 컨트롤러는 일종의 작은 CPU로써 각 하드웨어 장치에서의 제어를 담당한다. 메모리를 제어하는 메모리 컨트롤러, 디스크를 제어하는 디스크 컨트롤러 등이 있다. 운영체제 중 항상 메모리에 올라가 있는 운영체제의 핵심 부분을 커널이라고 한다.2. CPU 연산과 IO 연산입출력 장치들의 I/O 연산은 입출력 컨트롤러가 담당하고, 컴퓨터 내에서 수행되는.. [운영체제와 정보기술의 원리] 2. 운영체제 개요 1. 운영체제의 정의운영체제(operation system)는 사용자 및 다른 모든 소프트웨어와 하드웨어를 연결하는 소프트웨어이다.운영체제 자체도 하나의 소프트웨어로 컴퓨터 전원이 켜짐과 동시에 메모리에 올라간다. 하지만 운영체제와 같은 규모가 큰 프로그램이 모두 메모리에 올라간다면 메모리 공간의 낭비가 심하기 때문에 운영체제의 필요한 부분만 전원이 켜짐과 동시에 메모리에 올리고 그렇지 않은 부분은 필요할 때 메모리에 올린다. 이때, 메모리에 상주하는 운영체제의 부분을 커널(Kernel)이라고 한다.2. 운영체제의 기능컴퓨터 하드웨어와 사용자 사이에 위치한 운영체제의 특성을 빗대어, 그 역할을 두 가지로 나눌 수 있다. 두 가지 주요 기능은 컴퓨터 시스템 내의 자원(resource)을 효율적으로 관리하는.. [백준 #1790] 수 이어 쓰기 2 - Python(파이썬) 문제https://www.acmicpc.net/problem/17901부터 N까지의 수를 이어서 쓰면 다음과 같이 새로운 하나의 수를 얻을 수 있다.1234567891011121314151617181920212223...이렇게 만들어진 새로운 수에서, 앞에서 k번째 자리 숫자가 어떤 숫자인지 구하는 프로그램을 작성하시오.해설모든 수를 이어 붙여서 k번째 자리 숫자를 찾는다면 time out이 발생한다. 그래서 앞에서 생략할 수 있는 수들을 생략하면서 찾아야 한다.k번째 이전에 생략해도 되는 자릿수(digit)을 찾고 지금까지 이어붙인 숫자의 길이 합(total)을 찾아서 최대한 생략할 수 있는 수는 생략해야 한다.코드import sysinput = sys.stdin.readlinen, k = map(in.. [백준 #2056] 작업 - Python(파이썬) 문제https://www.acmicpc.net/problem/2056수행해야 할 작업 N개 (3 ≤ N ≤ 10000)가 있다. 각각의 작업마다 걸리는 시간(1 ≤ 시간 ≤ 100)이 정수로 주어진다.몇몇 작업들 사이에는 선행 관계라는 게 있어서, 어떤 작업을 수행하기 위해 반드시 먼저 완료되어야 할 작업들이 있다. 이 작업들은 번호가 아주 예쁘게 매겨져 있어서, K번 작업에 대해 선행 관계에 있는(즉, K번 작업을 시작하기 전에 반드시 먼저 완료되어야 하는) 작업들의 번호는 모두 1 이상 (K-1) 이하이다. 작업들 중에는, 그것에 대해 선행 관계에 있는 작업이 하나도 없는 작업이 반드시 하나 이상 존재한다. (1번 작업이 항상 그러하다)모든 작업을 완료하기 위해 필요한 최소 시간을 구하여라. 물론, .. [백준 #2533] 사회망 서비스 - Python(파이썬) 문제https://www.acmicpc.net/problem/2533페이스북, 트위터, 카카오톡과 같은 사회망 서비스(SNS)가 널리 사용됨에 따라, 사회망을 통하여 사람들이 어떻게 새로운 아이디어를 받아들이게 되는가를 이해하는 문제가 중요해졌다. 사회망에서 사람들의 친구 관계는 그래프로 표현할 수 있는데, 이 그래프에서 사람은 정점으로 표현되고, 두 정점을 잇는 에지는 두 정점으로 표현되는 두 사람이 서로 친구 관계임을 표현한다.예를 들어, 철수와 영희, 철수와 만수, 영희와 순희가 서로 친구 관계라면 이를 표현하는 친구 관계 그래프는 다음과 같다. 친구 관계 그래프를 이용하면 사회망 서비스에서 어떤 새로운 아이디어가 전파되는 과정을 이해하는데 도움을 줄 수 있다. 어떤 새로운 아이디어를 먼저 받아들.. 이전 1 2 3 4 ··· 31 다음