본문 바로가기
  • 시 쓰는 개발자

os10

컴퓨터보안 Intro ~ Network1 요약 >> key 개수 - 대칭암호                   : N명일 때 N*(N-1) / 2 개의 key 필요 - 비대칭 암호 (공개키) : N명일 때 2N개 키가 필요 (공개키-개인키 쌍으로 N개 pairs) >> Access Control 3개 - ACM (표) - ACL - RBAC (계층화 됨) >> HASH의 특징 2개 - One way : pw를 함수에 넣어 해쉬값 생성은 쉽지만, 반대로 해쉬값 보고 pw 알아내긴 어렵다 - Collision-resistant : 같은 해쉬값을 가지는 PW1, PW2가 나올 수도 있긴 한데 매우 매우 어려움. >> HASH 보안 강화기법 2개 - 해시 해서 나온 값을 다시 해시함수로 돌린다. - salt : 임의의 문자열을 덧붙인다. ㄴ Salt 비트 수.. 2024. 4. 26.
컴퓨터 보안 (3) - OS Security 1 시험공부하며 러프하게 정리한 내용이니, 가볍게 참고만 하시길 OS Concepts * Computer Model : I/O - CPU - RAM - HDD * OS Conceps : 멀티 유저, 멀티 프로그램 * MultiTasking : CPU 시간 조금씩 쪼개서 여러 유저에게 보여주는 형식 * Kernel- OS의 핵심, HW(CPU, Memory, I/O)를 관리함.- Hardward - Kernel & 커널 외 OS기능 - Application 이렇게 사이에서 인터페이스 역할 함 * I/O- 키보드, 마우스, 스캐너, 와이파이 인터페이스, 비디오 카메라, USB 포트 등- OS가 device driver 사용해서 저러한 API(application program interface) 제공함. * S.. 2024. 4. 25.
운영체제 수업 (8) 03/28 학교 수업을 정리한 내용입니다. 참고만 해주세요. 0328 목요일 Input Output 구분하기 CPU, MM(내부) → HDD(외부) : Output (write) HDD(외부) → CPU, MM(내부) : Input (read) I/O 시나리오 선요약 CPU가 직접 I/O 실행 I/O를 위한 컨트롤러가 있지만, Controller가 일을 끝날 때 까지 기다림 (Busy Waiting) 컨트롤러에게 I/O를 시키고, CPU는 다른 프로세스를 실행 (최적의 방법) I/O 시나리오 (1) - Memory Mapped I/O CPU가 직접 I/O를 실행하는 방식이다. 사용되지 않는 비효율적인 방법이지만 아두이노처럼 OS를 쓰지 않는 곳에서는 사용될 수도 있다. 위 코드는 키보드 I/O를 실행하는 과정인데,.. 2024. 4. 3.
운영체제 수업 (7) 03/26 학교 수업을 정리한 내용입니다. 참고만 해주세요. 0326 화요일 Program : HDD에 있는 코드나 컴파일한 file을 의미 Process : 메모리에 올라와 현재 실행중인 프로그램 Function : return 있음 Procedure : return 없음 스케줄러와 프로세스 개요 이것을 이야기할 때 I/O Device가 빠질 수 없다. C언어에서도 배열을 초기화 할때 만약 100번 scanf를 받으면 매우 오래걸리는 일이지만, read()를 쓰면 N바이트를 한번에 읽어올 수 있어서 초기화를 빠르게 할 수 있다. 즉, printf, scanf를 할때마다 CPU가 계속 기다릴 수 없는 노릇이다. IO 과정에서 만약 어떤 값이 필요할 때 3가지 방법이 있다. CPU가 직접 값을 가지고 온다. → 매우.. 2024. 3. 28.
운영체제 수업 (6) 03/21 학교 수업을 정리한 내용입니다. 참고만 해주세요. 0321 목요일 Q. 전원을 켰을 때 CPU가 가장 먼저 하는 일은 Fetch, 그중에서도 AR ← PC 이다. 근데 전원 끄면 레지스터의 값도 모두 날아가서 PC값도 0일텐데 값을 어떻게 넘겨줄까 ?? A. ROM , Boot loader에 대해 배워보자. RAM (Random Access Memory, DRAM) 램의 어떤 곳에 있는 데이터를 찾든 시간이 똑같이 걸린다는 의미에서 RAM이라고 불린다. 보통 DRAM이고, 휘발성이라 전원이 끄면 데이터가 날아간다. ROM (Read Only Memory) 수정불가능하고, 읽기만 가능하다 하여 ROM이라 불린다. 방전이 안되고, 한번 저장하면 데이터가 계속 살아있다. 시작 주소를 0번지로 하고 그곳에 부트.. 2024. 3. 28.
운영체제 수업 (5) 03/19 학교 수업을 정리한 내용입니다. 참고만 해주세요. 0319 화요일 CPU Instruction Cycle : Fetch - Decode - Execute - Store CPU는 Instruction Cycle만 반복적으로 수행한다. 다른 일은 안한다. 전기가 꺼지면 아무 일도 못한다. 1. Fetch - 명령어를 가져온다. 메모리에서 IR로 instruction을 가져온다. 정확히는 다음과 같은 과정을 거친다. AR ← PC PC++ IR ← M[AR] 2. Decode - 명령어를 해석한다. IR안에있는 명령어의 opcode를 해석해 연산의 종류, 데이터의 위치 등을 파악한다. ( Data Fetch if MRI instruction ) 3. Execute - 명령어를 실행한다. 4. Store Ins.. 2024. 3. 25.
운영체제 수업 (4) 03/14 학교 수업을 정리한 내용입니다. 참고만 해주세요. 0314 목요일 CPU - Data Unit(=Data Path) CPU 구조 대략적으로 설명 ALU Operand1. AC Operand2. DR ALU의 출력은 AC로 레지스터의 기능 (TR, INPR, OUTR는 다루지 않음) 데이터 받고 load 데이터 값 증가 (inc) 데이터 삭제 (clear) Special Purpose Register AR (Address Register) 명령어의 주소를 PC로부터 전달받아 저장한다. 데이터 주소 가능 , 명령어 주소 가능 PC (Program Counter) "다음 실행할" 명령어의 메모리상 주소를 저장한다. 데이터 주소는 불가능 , 명령어 주소만 가능 IR (Instruction Register) 실행.. 2024. 3. 22.
운영체제 수업 (3) 03/12 학교 수업을 정리한 내용입니다. 참고만 해주세요. 0312 화요일 OS 14개 기본 규칙 (믿고 가기) 8. 모든 내부 활동들은 메인 메모리를 사용한 CPU에 의해 실행되는 프로그램들이다. 즉, 컴퓨터에서 어떤 일이 일어나고 있다 = CPU가 메인 메모리를 이용해 프로그램을 실행중이다. 9. 프로그램은 User Program(System Program) / OS Program 이렇게 2개의 종류만 있다. Application들은 다 User Program 이다. 브라우저, 컴파일러, 에디터같은 것들은 System Program이라고도 하는데, 여기서는 User Program으로 합쳐서 간주한다. 10. 모든 프로그램은 User Program / OS Program으로 나뉜다. 11. OS가 하는 일은 프.. 2024. 3. 19.
운영체제 수업 (2) 03/07 학교 수업을 정리한 내용입니다. 참고만 해주세요. 0307 목요일 컴퓨터 시스템의 4개 컴포넌트 하드웨어 → 운영체제 → 애플리케이션 (시스템프로그램/애플리케이션 프로그램) → 사용자 [2] 디바이스 내에서는 구분을 굳이 하지 않는다. CPU와 메모리가 있고, 그 외는 디바이스이다. [3] 커널은 OS의 핵심기능을 담당하고, 그 위에 Application, 그 아래에는 하드웨어가 있다. OS 오버뷰 운영체제는 하드웨어를 관리해준다. OS가 UserProgram과 HardWare를 분리한다. 이를 통해 유저가 편리하게 쓸 수 있게 도와주고, 자원 관리를 효율적으로 할 수 있다.(User Convenience & Resource efficiency) 우리는 CPU, Memory, HDD를 메인으로 배운다. .. 2024. 3. 17.