일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 31 |
- sampling theory
- MLFQ
- 게임 개발
- frequency-domain spectrum analysis
- Race condition
- Rr
- RBAC
- Security
- 운영체제
- 유스케이스
- MAC
- stride
- AINCAA
- DSP
- 메카님
- DP
- pdlc
- CTF
- dtft
- ret2libc
- dirty cow
- TSet
- Double free
- 배경 그림
- Unity #Indie Game
- 게임개발
- 언리얼엔진
- linear difference equation
- STCF
- 유니티
- Today
- Total
목록2024/05 (16)
다양한 기록
UFS (유닉스 파일 시스템)- 레이아웃부트 섹터슈퍼블록비트맵Inode유저 데이터심플하고 사용하기 쉬움보기에는 괜찮으나, Seek distance 같은 걸 고려하면 성능에 문제가 있고,데이터 하나를 write하는데에 상당히 많은 I/O가 발생-> 성능 문제-> 일관성 문제 성능적으로 굉장히 나쁨UFS의 구조대로면 디스크 바깥쪽에 inode가 쭉 쌓이고 안쪽에 유저 데이터가 존재inode와 데이터 접근을 번갈아하면서 디스크 시크가 많이 발생하게 됨=> FFS .. inode와 유저 데이터를 가까운 곳에 놓겠다. 같은 실린더 그룹에 있는 데이터는 시크 디스턴스가 필요 없음혹은 가까운 실린더에서는 시크 디스턴스가 적게 필요* Ext2/3/4에서 사용되는 개념.. 블록 그룹이라 부름** 실린더 그룹: 중심으로부..
패링 소드의 최적화 작업을 시작했습니다.유니티의 프로파일러 기능을 사용하면 어떤 작업 때문에 처리가 느려지는지 알 수 있습니다. 맵이 크면 프레임 드랍이 좀 심해서 최적화가 필요하다고 느꼈는데,일단 유니티 엔진의 버전을 올리니 최대 6배 가량 프레임이 빨라지는 등프레임에 문제가 없어져서 플레이 환경에서 별로 문제는 없는데, 일단 프로파일러로 어디서 문제가 발생하는지 확인을 해보았습니다. 사실 이대로면 분석을 하는 의미가 없기에 맵을 과하게 확장시켰습니다. (21 * 21 크기, 기본 맵 크기는 훨씬 )맵의 규모가 커지면 그냥 단순히 오브젝트가 많아서 부하가 걸리는 건지,렌더링하느라 시간이 걸리는 건지, 물리 엔진 문제인지 그냥은 알기가 힘들기 때문에 테스트가 필요했습니다. 프로파일링을 보면 물리엔진..
DHCP (Dynamic Host Configuration Protocol)서버가 네트워크에 조인하려는 호스트에게 자동으로 IP를 할당해주는 응용 계층의 프로토콜 정해진 개수의 IP를 들고 있고, 호스트가 요청하면 IP를 할당해줌예를 들어 학교의 와이파이 같은 경우가 해당모든 학생마다 각각을 위한 IP를 주기보다는 적당한 수의 IP를 준비해두고 달라고 하면 주는게 효율적 작동 원리1. DHCP discover:- 호스트가 브로드 캐스트 요청 (src, dest, 등 아는 거 없고 그냥 보냄)- 누가 DHCP 서버인지 모르니까 일단 네트워크에 브로드캐스트- 있는 건 트랜잭션 ID 2. DHCP offer:- DHCP 서버만 요청을 인식하고 응답 (소스만 있고, 목적지는 모름, 서버도 브로드 캐스팅)- yi..
IP address32비트 identifier 인터페이스IP 주소는 각 장치의 인터페이스와 연결됨- 호스트/라우터와 물리적 링크와의 연결- 호스트는 일반적으로 하나나 두개의 인터페이스를 가짐(랜, 와이파이)계층적 주소 체계IP 주소: 네트워크 ID + 호스트 ID IP 주소 등급ICANN에서 IP 주소를 관리함 Range for first byte시작 비트Network IDClass A0~12707비트 (8비트까지)Class B128~1911014비트 (16비트까지)Class C192~22311021비트 (24비트까지)Class D224~2391110 Class E240~2551111클래스 A- 네트워크 개수 2의 7승- 24비트 호스트에 할당그만큼 호스트의 개수가 많음 클래스 B- 네트워크 개수 2의 ..
다양한 종류의 파일 시스템UFS, FFS, EXT2/3/4,JFS(저널링), LFS(로그 스트럭처드), NTFS(윈도우), F2FS(플래시-프렌들리.. 삼성 꺼),FUSE(유저 레벨 커널 시스템), RAMFS(램), NFS(네트워크), AFS(앤드류),ZFS(제타바이트, 솔라리스에서 만듦), GFS(구글), FATFS, BtrFs..VSFS(베리 심플 파일 시스템)유닉스 파일 시스템 심플 버전을 구상해보자 디스크파일 시스템 입장에서는 디스크는 그냥 4k 블록 집합으로 봄 파티션디스크 블록들의 집합디스크 블록의 크기는 보통 메모리의 페이지 크기와 같음 = 4 KB VSFS에서는 디스크 블록이 64개 있다고 가정 슈퍼 블록 - 0번에 할당파일 시스템을 관리하기 위한 메타 데이터 비트맵 - 1~2번 블록빈 공..
APIs 시스템 콜- open (파일 디스크립터 리턴)- I/O(read, write)- attribute(stat, chown, chmod 등 속성 관련)- create (inode 할당)- name resolution (디렉토리 계층 트래버스)- 파일 시스템 관리- 디렉토리 관리.... OS 내부- 블록 할당, 반납- inode 할당, 반납- namei (name resolution을 하기 위한 내부 인터페이스)- 버퍼 관련 // open with create flagint fd = open("foo", O_CREAT | O_WRONLY | O_TRUNC, S_IRUSR | S_IWUSR);// creat() ,, 잘 안씀int fd = creat("foo");open()인자- name- flags(..
컴퓨터 시스템4개의 추상화- 프로세스(스레드)- 버츄얼 메모리- lock- 파일 파일은 스토리지(하드디스크 , SSD)에 저장됨휘발성 / 비휘발성Non-volatility -> 전원이 공급되지 않아도 데이터를 유지 가능=> 영속성 제공 가능 - 정보를 영구적으로 유지 가능 이슈1: 무결성데이터에 결함이 있으면 안됨 (비트 에러 등) 이슈2: Space-efficiency껐다 켜도 데이터가 그대로 -> 비효율적으로 쓰면 그대로 비효율적으로 저장됨처음부터 잘 관리해야 함 이슈3: 일관성슈퍼블록, 비트맵, inode, 데이터블록 등등 -- 이슈4: Crash consideration (fault-tolerance)고장이 나도 복구가 되어야 함 이슈 5: Access Control이슈 6: 보안 이러한 이슈들을..
하드 디스크는 기본적으로 섹터(512 바이트)의 집합임플래터의 표면 서피스에 데이터를 저장하고, 트랙이 몇천개가 있고, 하나하나 섹터가 있음 섹터 번호를 주고 읽어달라고 하면 읽어주게 될 것물리적은 읽는 건 서피스마다 존재하는 헤드가 해 줄 것그리고 암(arm)이 가야하는 섹터로 헤드를 이동시킴 (Seek)회전은 Rotation 데이터 액세스: Seek time + Rotaion latancy + Transfer time ** 실린더는 여러 원판에서 같은 위치에 있는 트랙들의 집합을 의미파일 시스템에서 데이터들을 찾을 때 시크 타임이 필요가 없어짐 디스크 액세스 예시10000 rpm (rotation per minute)10000 rotation/ms / 60000 ms -> 6ms한바퀴 도는데 6ms ..