반응형 전체보기260 [혼공스터디 9기] 혼.공.컴.운. - 11. CPU 스케줄링(선택 미션 포함) 11-1 CPU 스케줄링 개요 운영체제는 CPU를 어떻게 프로세스에 배분할까? CPU 스케줄링: 운영체제가 프로세스들에게 공정하고 합리적으로 CPU 자원을 배분하는 것. 이는 컴퓨터 성능과도 직결되는 중요한 문제다. 프로세스 우선순위 입출력 집중 프로세스: 비디오 재생 등 입출력 작업이 많은 프로세스. 실행 상태보다는 대기 상태에 많이 머무른다. CPU 집중 프로세스: 복잡한 수학 연산, 컴파일 등 CPU 작업이 많은 프로세스. 대기 상태보다는 실행 상태에 더 많이 머무른다. CPU 버스트: CPU를 이용하는 작업 입출력 버스트: 입출력장치를 기다리는 작업 운영체제는 각 프로세스의 PCB에 우선순위를 명시하고, PCB에 적힌 우선순위를 기준으로 먼저 처리할 프로세스를 결정한다. 그렇게 자연스레 우선순위가.. Programming/Computer Science 2023. 2. 5. [혼공학습단 9기] 혼.공.컴.운. - 10. 프로세스와 스레드 (미션 포함) 운영체제의 핵심 개념인 프로세스와 스레드에 대해 공부해보자 기본 미션 1. 다음은 프로세스 상태를 보여주는 프로세스 상태 다이어그램입니다. 1부터 5까지 올바른 상태를 적어 보세요. 생성 상태 준비 상태 실행 상태 종료 상태 대기 상태 10-1. 프로세스 개요 프로세스: 보조기억 장치에 저장된 프로그램을 메모리에 적재하고 실행한 것 프로세스 직접 확인하기 포그라운드 프로세스: 사용자가 보는 앞에서 실행되는 프로세스 백그라운드 프로세스: 사용자가 볼 수 없는 공간에서 실행되는 프로세스(유닉스에서는 데몬, 윈도우에서는 서비스) 프로세스 제어 블록 프로세스 제어 블록(PCB): 빠르게 번갈아 수행되는 프로세스의 실행 순서를 관리하고, 프로세스에 CPU를 비롯한 자원을 배분하는 도구. 프로세스를 식별하기 위한 .. Programming/Computer Science 2023. 2. 4. [혼공학습단 9기] 혼.공.컴.운. - 9. 운영체제 시작하기 운영체제는 01~08장에 걸쳐 배운 컴퓨터 부품들을 관리하고 프로그램을 작동시키는 특별한 프로그램 09-1. 운영체제를 알아야 하는 이유 운영체제란 실행할 프로그램에 필요한 자원을 할당하고, 프로그램이 올바르게 실행되도록 돕는 특별한 프로그램. 운영체제 또한 프로그램이나, 특별한 프로그램이므로 항상 컴퓨터가 부팅 될 때 메모리 내 커널 영역이라는 공간에 따로 적재된다. 나머지 영역은 사용자가 사용하는 응용 프로그램이 적재되는 사용자 영역이라고 한다. 정부에 비유할 수 있다. 운영체제를 알아야 하는 이유 운영체제와의 대화로 하드웨어와 프로그램을 더 깊이 이해하고, 문제 해결의 실마리를 찾을 수 있다. 09-2. 운영체제의 큰 그림 커널, 이중모드, 시스템 호출, 운영체제가 응용 프로그램에 제공하는 서비스 .. Programming/Computer Science 2023. 2. 4. [혼공학습단 9기] 혼.공.컴.운. - 8. 입출력장치 컴퓨터의 네 가지 핵심 부품 중 마지막인 입출력장치에 대해 알아보자. 08-1. 장치 컨트롤러와 장치 드라이버 장치 컨트롤러와 장치 드라이버라는 개념을 통해 다양한 외부 장치가 컴퓨터 내부와 어떻게 연결되고 소통하는지를 알아보자. 장치 컨트롤러 입출력장치가 다루기 더 까다로운 이유 첫째, 입출력 장치에는 종류가 너무나도 많다. 키보드부터 마이크까지 다양한 입출력 장치들과 정보를 주고받는 방식을 규격화하기 어렵다. 둘째, 일반적으로 CPU와 메모리의 데이터 전송률은 높지만 입출력장치의 데이터 전송률은 낮다. 전송률: 데이터를 얼마나 빨리 교환할 수 있는지를 나타내는 지표 이런 전송률의 차이는 CPU와 메모리, 입출력장치 간의 통신을 어렵게 한다. 장치 컨트롤러(입출력 제어기, 입출력 모듈): 위와 같은 이.. Programming/Computer Science 2023. 2. 4. 인간의 유한성과 철학의 문제 https://blog.naver.com/sellars/223002952074 리 브레이버 - 비트겐슈타인과 하이데거 비트겐슈타인과 하이데거의 스승이 대단한 철학자들이다. 그들이 러셀과 후설이다. 그런데 비트겐슈타인과 ... blog.naver.com My/Riverlog 2023. 2. 2. 백도어(Back Door)란? 개발을 하다 '백도어'라는 개념을 처음 만났다. 배포할 때 배포가 잘 됐는지 직관적으로 확인하기 어려울 때, 백도어에 살짝 숫자만 바꿔서 배포가 새로 잘 이루어졌는지 확인하기 위해 사용하곤 한다. 하지만 백도어는 이렇게 단순하게만 사용되지는 않는다. 백도어란 정상적인 인증 절차를 거치지 않고, 컴퓨터와 암호 시스템 등에 접근할 수 있도록 하는 장치다. 설계자나 관리자에 의해 남겨진 시스템의 보안 허점을 말한다. 설계자가 일부러 남겨 놓은 경우는 개발 단계에서의 테스트를 위해, 유지 보수 시의 효율성을 위해 특수 게정을 허용하는 것이다. 중요한 것은 정상적인 인증 절차 없이 시스템에 접근할 수 있기 때문에, 백도어에 뭔가 악성 프로그램을 숨겨 놓는다면 해당 시스템을 사용했을 때 개인정보 유출이나 바이러스와.. Programming/ETC 2023. 2. 2. 나의 커리어 로드맵을 그려 보자 - 배휘동님의 글을 읽고 최종 수정: 2021.01.29 프론트엔드 엔지니어 커리어 로드맵: 주니어를 위한 3가지 전문성 트랙 ‘웹 개발자’는 1990년대부터 있어왔지만 ‘프론트엔드 엔지니어’가 독립적인 직업군으로 불리게 된 것은 불과 10년도 채 안 됐다. 자바스크립트 생태계가 웹에 끼치는 영향이 급격히 커지고 U steady-study.super.site 개발자라는 직업이 끊임 없이 공부하고 실력을 향상시키는 것을 필요로 한다는 사실을 많이 듣고 경험하며 느끼고 있다. 그리고 그 '실력 향상'이라는 다소 모호한 책무는 내가 그리는 커리어 로드맵에 따라 내용을 달리 하게 된다. 개발자가 되려고 마음 먹은 후부터 커리어 로드맵의 중요성에 대해서는 자주 들어 알고 있었다. 하지만 프론트엔드 개발자로 취업을 하고 나서 그동안 채우지.. My/Careerlog 2023. 1. 29. 이전 1 ··· 11 12 13 14 15 16 17 ··· 38 다음