본문 바로가기

분류 전체보기

(416)
[티스토리 tistory] 소스코드 삽입 방법 (Color Scripter) [tistory- 티스토리]네이버 블로그에는 소스코드 삽입 기능 자체가 있는데 티스토리는 정말 전형적인 웹 에디터 형식이라 소스코드를 첨부하는 기능이 없어요 ㅠㅠ사진도 클립보드 복사나 드래그앤 드롭기능도 안되고 ㅠ (개편되었으면 하는 부문) 그래서 이번에는 티스토리 소스코드 삽입 방법입니다.티스토리에 소스코드 삽입하기 외부 사이트를 이용해줄거예요 URL : https://colorscripter.com/ 해당 사이트에 가서 언어는 해당 언어 (C언어든 JAVA등 기타 등등 )를 클릭해주고스타일패키지에가서 서브라임 블랙으로 클릭해줍시다 (구냥 이게 이쁘니까!)그리고 클립보드 복사 후 편집기에 붙여넣기만 해주면 완성입니다. 12345void test(){ //그럼 이와 같이 //삽입이 된답니다}cs 별거 없..
[운영체제]임계영역 해결조건 & Peterson's solution(피터슨 알고리즘) [운영체제(OS) 목차 &책 추천] 쭉 이어서 동기화 내용 포스팅 하는 중입니다~~ 피터슨 알고리즘 또한 동기화문제에서 발생하는 상호배제를 위한 병렬 프로그래밍 알고리즘 중 하나입니다 지금은 사용되지 않는 소프트웨어적이면서도 고전적인 방법이지만 항상 운영체제의 흐름이 어떻게 변화되었고 역사를 아는 것은 매우 중요하니까요 ㅎㅎ 이러한 알고리즘의 배경을 알고싶다면 임계영역의 문제와 lock방법에 대해서.. Peterson's solution은 이름에서 알 수 있듯이 1981년에 수학자 개리 피터슨이라는 사람이 고안한 알고리즘이예요 처음에 피터슨이 이 알고리즘을 발표했을 때는 오직 두 개의 프로세스에 대해서만 적용이 가능했다고해요 하지만 지금은 일반화되어서 2개 이상의 프로세스들 사이에서도 이 방법이 통용된다..
[운영체제]critical section(임계영역) & lock 락 & busy-waits [운영체제(OS) 목차 &책 추천] 저번시간에 동기화에 대해서 살펴봤고~ (이어서 진행하는 거라 이전 포스팅을 보고 오지 않으면 이해가 불가능합니다) 이번에는 동기화를 우리가 어떻게 풀어왔느냐~ 의 서두를 열 LOCK에 대해서 살펴볼게요 critical section 임계영역이란 용어 또한 전에 동기화 포스팅에서 배워서 다 알고 있는거예요! (헷갈리시는 분은 보고오기) 여기서 공유되는 자원, 즉 동시접근하려고 하는 그 포커싱된 자원!에서 문제가 발생하지 않게 독점을 보장해줘야 하는 영역을 임계영역이라고 해요. 이거 제어를 잘해야 동기화 문제가 안생기겠죠? 그래서 critical 중요한~ section 영역! 임계영역이라고 합니다. 저번 시간의 예시를 빌려오자면 남자친구와 여자친구 쪽에서 동시에 접근하려고..
[운영체제]동기화 Synchronization 문제, Race Condition 운영체제에서 Synchronization 동기화란? 동기화는 저번 포스트 IPC의 shared memory 얘기하면서 잠깐 언급했었는데 기억하시나요? 다시 한 번 정리하자면 두 개의 프로세스 A, B가 shared memory를 이용을 해가지고 데이터를 주고 받는데 A가 쓰면 B가 읽어가야 하는데 A가 여기다가 쓰고 난 뒤인지 쓰기 전인지 알 수 있는 방법이 없잖아요 그래서 A가 나 다 썼어! 라고 알려줘야 B가 shared memory에서 읽어간다고 했었죠! "즉 이와 같이 프로세스 또는 스레드들이 수행되는 시점을 조절하는 것을 Synchronization이라고 합니다." 좀 더 확실하고 상세한 이해를 위해 동기화 문제의 예시를 하나 들면서 설명해볼게요 자 남자친구하고 여자친구하고 은행의 계좌를 공유한..
[운영체제]FIFO/FCFS (피포/first come first served)정의와 문제 & Convey Effect 운영체제 목차 오늘 수업부터 스케줄링 알고리즘을 하나하나 살펴보려고 합니다.이 FIFO 자료구조 stack에서 많이 보았던 문구죠? 하지만 지금 얘기하는 것은 CPU 스케줄링이에요 FIFO(first in first out) = FCFS(first come first served)제일 첫 번째 나오는 알고리즘이 FCFS 또는 FIFO라고 불리는 알고리즘입니다. 말 그대로 들어오는 순서대로 처리하는 알고리즘이예요. A프로세스가 들어오고, B프로세스가 들어오고 하면 A먼저 처리하고 그 다음 B먼저 처리하고 하는거죠. 이게 왜 모든 스케줄링의 알고리즘에 제일 첫 번째로 나올까요? 이 알고리즘이 제일 FAIR한 시스템이기 때문이예요. 먼저온 사람이 먼저 할당받는거니 공평하죠! 그렇기 때문에 첫 번째로 나옵니다...
[운영체제]PCB (Process Control Block)란? PCB 정보 & Context Switching 문맥교환 & Overhead 오버헤드 운영체제 목차 프로세스의 정의와 프로세스 상태에 대한 이해를 기반으로 하고 있습니다. 헷갈리시는 분은 이전 포스팅 보고 오기 프로세스를 조금 어렵게(?) 이렇게 표현하기도 해요 프로세스는 프로세서에 의해 수행되는 프로그램 단위로 현재 실행 중이거나 곧 실행 가능한 PCB(Process Control Block)을 가진 프로그램이다. 음.. PCB가 프로세스와 관련된 건 알겠는데 PCB는 무엇을 의미할까요? PCB (Process Control Block)란? ♣ 운영체제가 프로세스를 제어하기 위해 정보를 저장해 놓는 곳으로, 프로세스의 상태 정보를 저장하는 구조체이다. ♣ 프로세스 상태 관리와 문맥교환(Context Switching)을 위해 필요하다. ♣ PCB는 프로세스 생성 시 만들어지며 주기억장치..
[운영체제]Process Address Space 메모리내 프로세스 구조 (Code segment, static data 등) 운영체제 목차 이전 포스팅에서 프로세스와 프로그램의 차이를 알아봤어요! 프로세스와 프로그램 차이 요약 다시 정리하면 프로그램은 실행 파일로, 파일 시스템으로 존재하는 것이 실행파일이고,실행을 해서 실행되고 있는 주체를 프로세스라고 했습니다.즉 실행중인 프로그램의 하나의 인스턴스라고 생각하면 된다고 했습니다.결국 수행과 스케줄링의 가장 기본적인 단위인 것이죠! Process ID를 PID라고 줄여서 이야기를 하고, Windows에서도 ctrl+alt+delete를 누르면 작업관리자가 뜨면서 실행중인 프로세스들을 확인할 수 있고 세부정보에 들어가면 PID를 볼 수 있습니다. 작업관리자 PID는 다 숫자로 나옵니다@ Process Address Space 프로세스 메모리 구조 프로그램이 실행이 되어야 프로세스..
운영체제_컴퓨터구조, device controller(장치 제어기) [운영체제(OS) 목차 &책 추천]운영체제를 시작하기 전에, 컴퓨터 구조 또는 컴퓨터 시스템 구조 과목을 먼저 학습하고 시작하는 것을 권장합니다. 다 했다는 가정하에(?)오늘은 간단한 리프레쉬(refresh)를 통해 컴퓨터 구조를 살짝만 짚고 넘어가는 시간이 될거예요 운영체제가1. 하드웨어를 몰라도 쉽게 사용할 수 있도록 하드웨어를 이용해서 프로그램 할 수 있도록 2. 하드웨어가 효율적으로 동작할 수 있도록 놀지 않게 1000프로의 성능을 발휘할 수 있게 해는 역할을 한다고 저번 포스팅에서 말했었어요~ 그래서 운영체제와 하드웨어는 뗄레야 뗄 수 없는 관계입니다.그래서 컴퓨터 구조는 당연히 알고 있어야 해요.운영체제의 일은 하드웨어를 관리하는 일이니까요 컴퓨터 구조 자아ㅏㅏ컴퓨터를 이루고 있는 구조를 보여..