| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 1 | ||||||
| 2 | 3 | 4 | 5 | 6 | 7 | 8 |
| 9 | 10 | 11 | 12 | 13 | 14 | 15 |
| 16 | 17 | 18 | 19 | 20 | 21 | 22 |
| 23 | 24 | 25 | 26 | 27 | 28 | 29 |
| 30 |
- SWIFT
- 개발자 회고
- Apple Developer Academy @ POSTECH
- 숭실대
- Swift 디자인패턴
- 앱 비교 프로젝트
- apple developer academy 후기
- 제앱소
- 애플 아카데미 후기
- global soop
- 운영체제
- 데이터베이스
- Swift 기능
- sqoop
- Swift 문법
- OS
- 애플 디벨로퍼 아카데미 21주차 회고
- ios개발자
- react
- swift문법
- 애플 디벨로퍼 아카데미 후기
- 애플 디벨로퍼 아카데미
- iOS 개발 오류
- 소프트웨어분석및설계
- 네이버 부스트캠프
- 네이버 치지직
- 신입 개발자
- 신입 ios 개발자
- 개발회고
- 신입ios개발자회고
- Today
- Total
| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 1 | ||||||
| 2 | 3 | 4 | 5 | 6 | 7 | 8 |
| 9 | 10 | 11 | 12 | 13 | 14 | 15 |
| 16 | 17 | 18 | 19 | 20 | 21 | 22 |
| 23 | 24 | 25 | 26 | 27 | 28 | 29 |
| 30 |
- SWIFT
- 개발자 회고
- Apple Developer Academy @ POSTECH
- 숭실대
- Swift 디자인패턴
- 앱 비교 프로젝트
- apple developer academy 후기
- 제앱소
- 애플 아카데미 후기
- global soop
- 운영체제
- 데이터베이스
- Swift 기능
- sqoop
- Swift 문법
- OS
- 애플 디벨로퍼 아카데미 21주차 회고
- ios개발자
- react
- swift문법
- 애플 디벨로퍼 아카데미 후기
- 애플 디벨로퍼 아카데미
- iOS 개발 오류
- 소프트웨어분석및설계
- 네이버 부스트캠프
- 네이버 치지직
- 신입 개발자
- 신입 ios 개발자
- 개발회고
- 신입ios개발자회고
- Today
- Total
목록분류 전체보기 (297)
사과하는 제라스
DBMS는 데이터를 저장 및 관리를 하기에 이를 저장해둘 데이터 저장 장치에 대한 지식을 갖춰야 함. 4.1. 물리적 저장 매체 - 물리적 저장 매체는 1) 데이터 접근 속도, 2) 데이터 저장 비용, 3) 신뢰성 4)휘발성(volatile) 여부 등으로 분류함. 캐시 메모리 VS 메인 메모리 캐시 메모리 - 가장 빠른 형태의 메모리이고 가장 비쌈. - CPU 안에 위치함. - volatile 메인 메모리 - volatile - 전체의 DB를 저장하기엔 아직도 비싸기에 용량이 작고 모든 DB가 올라가지는 않음. - 데이터 접근 속도는 나노초 단위이고 10-100 나노초 정도의 빠른 속도로 접근함. 플래시 메모리 - non-volatile - Read하는 건 메인 메모리만큼 속도가 빠르지만, Write하는..
3.1. 장애 및 복구 DBMS가 처리하는 장애는 3가지가 있음. 1) Transaction Failure : 트랜잭션 자체의 내부 논리 오류, 사용자의 명시적인 요구, 시스템 내부 결정에 의하여 발생 가능. ex) deadlock -> victim이 abort됨. 2) System Failure(=Crash) : 휘발성 기억 장치인 메인 메모리에 문제가 발생하여 내용이 사라지는 것. ex) 정전, OS 오류, HW 결함 3) Disk Failure : HW 및 SW 결함으로 인해 디스크 내용이 사라지는 현상. 장애는 언제 어디서든 다양한 형태로 발생할 수 있기에 시스템은 트랜잭션의 ACID성질 지원을 위해 복구 기법이 필요함. Recovery Algorithms : 복구 알고리즘은 DB의 일치성(C)과..
현재까지 나와있는 동시성 제어 방법 중 Locking이 가장 효율적인 방법이기에 현재 가장 많은 DBMS에서 쓰인다. ∴ Locking 방법만 찾아볼 거임. 2.1. 록 기반 규약(Lock-based Protocols) Lock: 데이터 아이템에 대한 동시성 접근을 다루기 위한 메커니즘. Locking Protocol: 모든 트랜잭션이 Lock을 Requesting, releasing 을 할 때 따르는 규약들. -> 이 프로토콜을 씀으로서 가능한 스케쥴 세트를 제한함. 데이터 아이템은 두가지 방식으로 Lock 될 수 있음. 1) Exclusive mode(=Write Lock): 데이터 아이템은 Read/Write 가능(Write가 필수는 아님), 주로 lock-X instruction 사용, 다른 Lo..
Activity Diagram이란...? : 일련의 활동(Activity)들로 workflow(i.e.Runtime-control flow)를 표현하는 다이어그램으로 Behavior Modeling을 위한 UML Diagram 4가지 중 하나이다. - Sequence Diagram(순서 다이어그램) Activity Diagram은 시스템 전체, sub 시스템의 흐름을 표현하지만, Sequence Diagram은 주로 Use Case Set을 다룬다. 추가 정보... - State Diagram(상태 다이어그램)과의 차이: State Diagram은 하나의 객체의 흐름을 표현함. 그렇다면 이제 Activity Diagram의 구성을 알아보자! Activity Diagram의 구성요소 1. Action/Ac..
단일 Bus 구조 Bus: CPU, RAM, I/O 장치 간 데이터가 전송되는 통로 ex) Data Bus, Address Bus 그렇다면... 단일 Bus 구조란...? - 하나의 시스템 버스에 여러가지 모듈이 연결되어 있는 형태. - CPU, Memory, I/O 속도가 비슷했던 초창기에 발생 but 속도 격차가 증가하면서 '병목 현상'이 발생하는 문제가 생기기 시작함. 병목 현상 : 같은 버스에 연결된 디바이스들 사이의 속도 차이로 발생하는 현상으로, 빠른 디바이스가 처리하는 양 만큼을 느린 디바이스가 처리하지 못하여 전체 시스템 속도가 느린 디바이스의 속도로 제한되는 현상. - 주로 CPU> Memory >> I/O로 속도의 격차가 커짐. 속도: CPU > 메모리 > Disk > Network >..
OS가 하는 일 - Process 관리 - 여러가지 프로그램들을 실행하기 위해서 프로세스를 만들고 그 안에 유저가 원하는 응용 프로그램을 실행 - Memory 관리 - 각 프로세스가 사용하는 메모리 관리 - File 관리 - 각 프로세스가 사용하는 파일 관리 - I/O System 관리 - 각 프로세스가 사용하는 I/O 시스템 관리 - Networking - 네트워크를 사용하는 프로그램이 많아지면서 이를 관리해야 하는 부분도 커짐. - Security - 더 안전한 실행환경을 위한 연구 증가. 컴파일러(Compiler) : 사람이 이해 가능한 PL로 작성된 Source Code -> CPU가 이해할 수 있는 기계어인 Object 파일로 변환 (정확히는 Source Code를 Compiler를 통해 ass..
System Structure 운영체제는 규모가 매우 크고 복잡한 SW이다. ∴ 설계 시 'SW 구조'를 신중히 고려 필요. 좋은 설계 시... 1. 개발 시 편리함.(Develop) 2. 수정 및 디버깅 easy.(Modify&Debug) 3. 유지 보수가 쉬움.(Maintain) 4. 확장성이 좋아짐.(Extend) OS의 Design Priciple(디자인 원칙) 1. Policy : OS가 무엇이 되게 할 것인가. 2. Mechanism: 어떻게 그것을 제공할 것인가. -> 이렇게 Policy와 Mechanism을 분리함으로서 OS 설계를 보다 모듈화할 수 있음. OS 설계를 위한 방법 1. Layering : OS 설계의 복잡도를 낮추기 위한 방안 - 각 Layer는 Well-defined 함수..
1.1 트랜잭션 개념 트랜잭션(Transaction): 하나의 논리적 작업을 수행하는 DB 연산의 순서로, 여러개의 작업을 하나로 묶은 실행 유닛. 트랜잭션 관리 1) HW, SW, Transaction 등 다양한 시스템의 장애를 극복하는 회복 기능(Recoverability) 2) 다수개의 트랜잭션을 동시에 수행 시 발생하는 문제점을 해결하는 동시성 제어 기능(Concurrent Execution) -> 이 두가지 이슈의 관점에서 접근한다. 트랜잭션의 ACID 성질 Atomicity(원자성) : all-or-nothing으로, 트랜잭션을 구성하는 연산은 모두 수행되거나 어느 연산도 수행되지 않아야 한다.(연산의 일부만 수행되는 것은 불가능) 예시) 계좌이체를 할 때 1. A 계좌에서 10만원을 출금을 ..