noriwiki에서 사용할 수 있는 모든 기록이 표시됩니다. 기록 종류나 사용자 이름(대소문자 구별) 또는 영향을 받는 문서(대소문자 구별)를 선택하여 범위를 좁혀서 살펴볼 수 있습니다.
- 2023년 2월 11일 (토) 02:58 Ahn9807 토론 기여님이 Copy on write 문서를 만들었습니다 (새 문서: 분류: 메모리 관리 == 개요 == Copy On Write란 말 그대로 작성시 이전의 내용을 Copy한다는 뜻이다. 부모나 자식 프로세스가 copy on write 메모리 영역에 접근하게 되면 그 영역을 먼저 복사하고 작성하게 된다. Linux(Unix)에서는 자식 프로세스(child process)를 생성(fork)하면 같은 메모리 공간을 공유하게 된다. 그런데 부모 프로세스가 데이터를 새로 넣거나, 수정하거나,...)
- 2023년 2월 11일 (토) 02:58 Ahn9807 토론 기여님이 Convolution layer 문서를 만들었습니다 (새 문서: 분류: 딥러닝 == 개요 == Convolution layer은 이미지의 공간적인 구조를 계산하고 싶은 것이다. 이미지의 feature들은 자유변형에 따라서 위치가 크게 변화하지만 서로 상대적인 값은 크게 변화하지 않는 특징이 있다. 따라서 이러한 구조에 대한 정보를 보존하기 위해서 filter와의 convolution연산을 통해서 이미지를 계산하게 된다. 이를 Convoluton layer이라고 한다. 필터는...)
- 2023년 2월 11일 (토) 02:57 Ahn9807 토론 기여님이 Flynn's taxonomy 문서를 플린 분류 문서로 이동했습니다
- 2023년 2월 11일 (토) 02:57 Ahn9807 토론 기여님이 Flynn's taxonomy 문서를 만들었습니다 (새 문서: 분류: 동시성 프로그래밍 400픽셀|섬네일|가운데 == 개요 == 플린 분류(영어: Flynn's taxonomy)는 마이클 플린이 1966년에 제안한 컴퓨터 아키텍처 분류이다. * SISD(Single Instruction, Single Data streams) * SIMD(Single Instruction, Multiple Data streams) * MISD(Multiple Instruction, Single Data streams) * MIMD (Multiple Instruction, Multiple Data streams) == 종류 == === SISD === 하나의 명령어...)
- 2023년 2월 11일 (토) 02:56 Ahn9807 토론 기여님이 Database addressing 문서를 만들었습니다 (새 문서: 분류: 데이터베이스 == 개요 == 데이터베이스 혹은 파일시스템에 파일을 저장하는 방법을 기술한다. Physical Address 혹은 Logical Address를 통해서 접근하며, 전자는 레코드의 진짜 위치에 대한 정보를 나타내고, 후자는 임의의 주소에 해당하는 숫자값을 나타낸다. 이 두개는 Map table을 통해서 서로 교환 가능하다. 이중 Physical Address는 Database address와 Memory Address로 구...)
- 2023년 2월 11일 (토) 02:55 Ahn9807 토론 기여님이 Race condition 문서를 만들었습니다 (새 문서: 분류: 동시성 프로그래밍 == 개요 == 공학 분야에서 경쟁 상태(race condition)란 둘 이상의 입력 또는 조작의 타이밍이나 순서 등이 결과값에 영향을 줄 수 있는 상태를 말한다. 입력 변화의 타이밍이나 순서가 예상과 다르게 작동하면 정상적인 결과가 나오지 않게 될 위험이 있는데 이를 경쟁 위험이라고 한다. 스레드에서도 어떤 스레드가 먼저 실행될지 모르기 때...)
- 2023년 2월 11일 (토) 02:55 Ahn9807 토론 기여님이 Loop unrolling 문서를 만들었습니다 (새 문서: 분류: 컴파일러 분류: 시스템 최적화 == 개요 == Loop unrolling이란 loop를 풀어서 바이너리 코드의 크기는 증가하지만, 하드웨어 가속을 추구하는 기법이다. 루프 언롤링을 통해서 루프에서 다음 루프로 이동하는 동안 일어나는 동기화, 인덱스 증가, 비교문과 같은 불필요한 계산 시간을 줄여서 프로그램이 수행하는 시간을 줄일 수 있다.)
- 2023년 2월 11일 (토) 02:54 Ahn9807 토론 기여님이 Virtual memory 문서를 만들었습니다 (새 문서: 분류: 메모리 관리 == 개요 == 가상 메모리란 용어 그대로 메모리를 가상화하는 방법이다. 가상 메모리가 등장한 가장 큰 배경은 물리 메모리Physical Memory가 너무 작았기 때문이었으므로, 마치 메모리가 더 많은 것처럼 보여주려고 사용했다. CPU가 내보내는 메모리 주소, 즉 운영체제나 애플리케이션이 사용하는 주소는 실제 메모리의 물리 주소Physical Address가 아닌...)
- 2023년 2월 11일 (토) 02:54 Ahn9807 토론 기여님이 Memory segmentation 문서를 만들었습니다 (새 문서: 분류: 메모리 관리 섬네일|가운데 == 개요 == Memory segmentation이란 메모리 보호를 수행하는 가장 일반적인 방법 가운데 하나이다. 다른 방법으로는 페이징 이 있다. 메모리를 여러 세그먼트로 나누어서 한 세그먼트에서 다른 세그먼트로의 접근을 막는 것을 말한다. 이러한 이용은 인텔 8086, 인텔 8088과 같은 초기 x86 프로세서에 쓰인 메모리...)
- 2023년 2월 11일 (토) 02:54 Ahn9807 토론 기여님이 메모리 단편화 문서를 만들었습니다 (새 문서: 분류: 메모리 관리 == 개요 == 가용 메모리에 사용할 수 없는 불필요한 공간이 생기는 현상을 말한다. # 내부 단편화 (Internal Fragmentation): 세그멘테이션이나 페이징과 같이 메모리를 여러개로 쪼갤경우 외부적으로 보기에는 단편화가 없어 보이지만, 각각의 영역안에서는 내부 단편화가 발생하게 된다. 각각의 세그멘테이션 혹은 페이지 안에서 사용되지 않는 공간...)
- 2023년 2월 11일 (토) 02:53 Ahn9807 토론 기여님이 Demanding paging 문서를 만들었습니다 (새 문서: 분류: 메모리 관리 == 개요 == Demanding Paging은 프로그램이 필요한 파일의 모든 내용을 메모리에 적재하는 것이 아니라, Virtual Memory를 사용하여 필요한 순간에만 필요한 페이지를 Storage에서 읽어들여서 메모리에 올리는 기술이다. == 과정 == # TLB 미스 # 페이지 테이블 Walk # 페이지 폴트 # Trap to Kernel # Virtual Address를 File + Offset으로 변환 # Page frame할당 # Disk block을...)
- 2023년 2월 11일 (토) 02:52 Ahn9807 토론 기여님이 Bit Fusion: Bit-Level Dynamically Composable Architecture for Accelerating Deep Neural Network 문서를 만들었습니다 (새 문서: 분류: 시스템 논문 ISCA 2018 == Introduction && Empirical study == DNN에서 대다수의 명령을 차지하는 실수 곱하기 더하기 연산은 그다지 큰 정확도의 부동소수점 연산을 필요로 하지 않는다. 일례로 Cifar과 같은 데이터의 경우, 부동 소수점 연산의 많은 부분은 Binary operation으로 구성되어 있다. 부동 소수점 연산의 정확도가 올라갈 수로 이를 처리하기 위해서 필요한 반도...)
- 2023년 2월 11일 (토) 02:52 Ahn9807 토론 기여님이 페이지 폴트 문서를 Page fault 문서로 이동했습니다
- 2023년 2월 11일 (토) 02:52 Ahn9807 토론 기여님이 페이지 폴트 문서를 만들었습니다 (새 문서: 분류: 메모리 관리 == 개요 == 페이지 부재 또는 페이지 폴트(page fault, #PF, PF, hard fault)는 메모리에 적재된 페이지중에 사용 페이지가 없을 때를 가리킨다. 시스템의 종류에 따라 약간 다를 수 있으나, 대체로는 빈 페이지가 하나도 없거나, 미리 정한 수보다 적을 때 발생한다. == 처리 과정 == Page Fault -> (인터럽트) Page fault Handler (Allocate page) -> (인터럽트 핸들...)
- 2023년 2월 11일 (토) 02:51 Ahn9807 토론 기여님이 Recursive Page Table 문서를 만들었습니다 (페이지 테이블 문서로 넘겨주기) 태그: 새 넘겨주기
- 2023년 2월 11일 (토) 02:51 Ahn9807 토론 기여님이 Page table entry 문서를 만들었습니다 (페이지 테이블 문서로 넘겨주기) 태그: 새 넘겨주기
- 2023년 2월 11일 (토) 02:49 Ahn9807 토론 기여님이 익명 메모리 영역 문서를 Anonymous memory 문서로 이동했습니다
- 2023년 2월 11일 (토) 02:49 Ahn9807 토론 기여님이 익명 메모리 영역 문서를 만들었습니다 (새 문서: 분류: 메모리 관리 == 개요 == 익명 메모리란, File-backed memory의 반대가 되는 용어로, 특정한 파일에 종속된 것이 아니라 메모리 그 자체로 존재하는 메모리 영역을 말한다. 힙과 스택이 여기에 포함된다.)
- 2023년 2월 11일 (토) 02:49 Ahn9807 토론 기여님이 파일 의존 메모리 영역 문서를 File-backed memory 문서로 이동했습니다
- 2023년 2월 11일 (토) 02:48 Ahn9807 토론 기여님이 파일 의존 메모리 영역 문서를 만들었습니다 (새 문서: 분류: 메모리 관리 == 개요 == 파일 의존 메모리 영역이란, 파일에 의거한 메모리 영역을 말한다. Code, Data, Shared LLibraries, MMAPed- files와 같은 것이 여기에 포함된다.)
- 2023년 2월 11일 (토) 02:48 Ahn9807 토론 기여님이 CUDA 문서를 만들었습니다 (새 문서: 분류: 시스템 프로그래밍 == 개요 == * Host: CPU * Device: GPU * device code: code run in GPU (written in c (API), Compile to execute in GPU) * host code: code run in CPU (written in c) 우선 CPU메모리에서 GPU메모리로 복사가 일어난뒤, (PCI Bus를 통해서) GPU 코드를 로드하고 실행시키게 된다. 코드가 실행되고 결과는 다시 GPU메모리에서 CPU메모리로 Copy되게 된다. 메모리와 디바이스는 서로 메모리...)
- 2023년 2월 11일 (토) 02:47 Ahn9807 토론 기여님이 2nd Algorithm 문서를 만들었습니다 (새 문서: 분류: 메모리 관리 분류: 리눅스 커널 == 개요 == 어느 한 공간에 대한 접근이 있다는 것을 카운팅 하였을때, 1번 일어난다는 것은 2번 일어난 다는 것과 비교하여 많은 차이점이 있다. 1번 일어난다는 것은 메모리에 scan이라는 과정이 일어났다는 것을 의미하며, 2번 점근한다는 것은 메모리에 Access하였다는 것을 나타낸다는 가정을 할 수 있다. 따라서 1번 접근...)
- 2023년 2월 11일 (토) 02:45 Ahn9807 토론 기여님이 Clock Eviction Algorithm 문서를 만들었습니다 (새 문서: 분류: 메모리 관리 == 개요 == 주기적으로 0으로 재설정하지 않는 시스템을 가정하며, 주기억장치에 적재된 페이지들을 환형리스트로 보고 각 페이지를 시계 방향으로 움직이는 포인터를 사용하여 교체될 페이지를 선정한다. 원칙은 다음과 같다. # 현재 포인터가 가리키는 페이지의 참조 비트 검사 # 해당 페이지가 리스트에 있고 참조 비트가 0이라면 1로 재설...)
- 2023년 2월 11일 (토) 02:45 Ahn9807 토론 기여님이 Page eviction 문서를 만들었습니다 (새 문서: 분류: 메모리 관리 == 개요 == 페이지 Eviction이란 시스템에 1. 더이상 메모리를 할당 할 수 없거나, 2. swap out policy에 따라서 적당한 양의 메모리를 확보하고자 할때, 현재 메모리에 있는 page중에서 disk로 swap-out될 페이지를 결정하는 과정이다. Page Eviction의 방식은 LRU, LRF, 2nd Algorithm, Clock Eviction Algorithm과 같은 방식을 이용하여 작동하게 된다. == Type == #...)
- 2023년 2월 11일 (토) 02:45 Ahn9807 토론 기여님이 Working set 문서를 만들었습니다 (새 문서: 분류: 메모리 관리 == 개요 == Working set이란 메모리에서 유의미하게 cache hit들이 일어나기 때문에, cached되는 것이 합당한 영역을 말한다. Wroking set size는 Working set중에서 unique한 페이지들의 개수를 말한다. 즉 이는 특정한 time window에서 reference된 페이지들의 개수를 의미한다. 지역성이 안 좋다는 것은 이러한 reference된 페이지들이 많다는 것으로, working set size가 크...)
- 2023년 2월 11일 (토) 02:44 Ahn9807 토론 기여님이 Scale-Out Acceleration for Machine Learning 문서를 만들었습니다 (새 문서: 분류: 시스템 논문 Micro 2017 === Introduction && Empirical study === 이 논문은 CoSMIC이라는 language, compiler, system software, template architecture 그리고 circuit generator의 역활을 distributed system에서 수행하는 과정의 개발을 어떻게 하였는가에 대한 논문이다. 현재 존재하는 Hadoop이나 Spark와 같은 시스템은 distributed computing에 특화된 것은 맏지만, 목표가 general-purpose platform이라는 공...)
- 2023년 2월 11일 (토) 02:42 Ahn9807 토론 기여님이 Directory 문서를 디렉토리 문서로 이동했습니다
- 2023년 2월 11일 (토) 02:42 Ahn9807 토론 기여님이 Directory 문서를 만들었습니다 (새 문서: 분류: 파일 시스템 == 개요 == 디렉토리는 컴퓨팅에서 파일과 다른 디렉토리들의 그룹을 갖고 있는 파일 시스템 안의 존재물이다. 컴퓨터의 파일 시스템은 파일 캐비넷으로 표현될 수 있다. 여기서 높은 수준의 디렉토리들을 서랍이라고 부르고 낮은 수준의 하위 디렉토리들을 서랍 안에 있는 파일 폴더라고 부를 수 있다. 사실 디렉토리도 하나의 파일로써 존재...)
- 2023년 2월 11일 (토) 02:41 Ahn9807 토론 기여님이 File 문서를 파일 문서로 이동했습니다
- 2023년 2월 11일 (토) 02:41 Ahn9807 토론 기여님이 File 문서를 만들었습니다 (새 문서: 분류: 파일 시스템 == 개요 == 컴퓨터 파일은 컴퓨터 등의 기기에서 의미 있는 정보를 담는 논리적인 단위이다. 하드디스크, CD, DVD 등 저장매체에 대하여 추상화된 정보 단위이다. 운영체제는 파일 조작에 관련된 기능을 API로 제공한다. 일반적으로 파일의 이름과 확장자로 식별하며, 운영 체제에 따라 대소문자를 구별하거나 구별하지 않는다.)
- 2023년 2월 11일 (토) 02:40 Ahn9807 토론 기여님이 풀링 문서를 만들었습니다 (새 문서: 분류: 제어흐름 분류: 동시성 프로그래밍 == 개요 == 폴링은 CPU가 주기적으로 데이터가 도착했는지 확인하는 것을 말한다. 인터럽트가 CPU에게 외부의 신호를 주는 것이라면 폴링은 CPU가 주기적으로 확인한다는 것을 말한다. 대부분의 경우에서 CPU의 성능저하를 초래하지만, Network와 같이 대량의 정보가 주기적으로 오는 경우, 폴링은 정보를 배치단위로 처...)
- 2023년 2월 11일 (토) 02:40 Ahn9807 토론 기여님이 블락 문서를 만들었습니다 (Block device 문서로 넘겨주기) 태그: 새 넘겨주기
- 2023년 2월 11일 (토) 02:39 Ahn9807 토론 기여님이 File system 문서를 만들었습니다 (파일 시스템 문서로 넘겨주기) 태그: 새 넘겨주기
- 2023년 2월 11일 (토) 02:39 Ahn9807 토론 기여님이 파일 시스템 문서를 만들었습니다 (새 문서: 분류: 파일 시스템 == 개요 == 파일 시스템은 컴퓨터에서 파일이나 자료를 쉽게 발견 및 접근할 수 있도록 보관 또는 조직하는 체제를 가리키는 말이다. 디스크는 여러개의 논리적인 파티션으로 구별되며 이러한 파티션은 다시 논리적인 파일 시스템으로 구성되게 된다. 파일시스템은 boot block + super block + files로 구성되어 있다. 유닉스에서는 각각의 파일을 inode를...)
- 2023년 2월 11일 (토) 02:39 Ahn9807 토론 기여님이 파일 인덱싱 문서를 만들었습니다 (새 문서: 분류: 파일 시스템 == 개요 == 파일 인덱싱이란, 파일 시스템에서 원하는 파일의 블럭들을 저장하고 가져오는 방법을 말한다. == Linked List == 간다하며, 쉽게 구현할 수 있다. File metadata에 파일의 첫번째 블럭의 pointer을 저장하는 방법이다. 각각의 블럭에 다음 블럭으로 향하는 linker list pointer을 저장하여, 다음 파일 블럭을 가르키게 된다. 한 예는 마이크로 소...)
- 2023년 2월 11일 (토) 02:38 Ahn9807 토론 기여님이 분류:데이터베이스 문서를 만들었습니다 (새 문서: 분류: 전산과학)
- 2023년 2월 11일 (토) 02:38 Ahn9807 토론 기여님이 System failure 문서를 만들었습니다 (새 문서: 분류: 데이터베이스 == 개요 == 시스템 Failure은 여러 원인으로 인하여, 시스템이 강제적으로 종료되는 경우를 말한다. 이때 진행되고 있던 Data write과 같은 정보는 보존되거나 Checkpoint로 안전히 돌아가야 한다. 또한 시스템 실패가 불과 같은 외부적 요인으로 데이터 베이스 센터가 망가지더라도 적절한 Backup system으로 인해서 보존됨을 확신하여야 한다.)
- 2023년 2월 11일 (토) 02:38 Ahn9807 토론 기여님이 Bit Fusion: Bit-Level Dynamically Composable Architecture for Accelerating Deep Neural Networks 문서를 만들었습니다 (새 문서: 분류: 시스템 논문 ISCA 2018 == Introduction && Empirical study == 대다수의 ML Accleration하드웨어에 관한 연구는 single node에서 일어나는 일들을 다루었다. 또한 이러한 노드에서 어떻게 통신을 할 것인지는 연구되지 않고 있었다. 또한 부동 소수점 정밀도를 다룬 기존의 연구들은 gradient와 weight이 서로 다른 정도로 floating point에 대한 중요성을 가지는지 파악하지 않고 이러...)
- 2023년 2월 11일 (토) 02:36 Ahn9807 토론 기여님이 FFS 문서를 만들었습니다 (새 문서: 분류: 파일 시스템 == 개요 == FFS는 기존의 Simple File System의 한계를 극복하기 위해서 Berkely에서 개발한 파일 시스템이다. FFS는 SFS (Simple FS)와 다르게 디스크에 대한 구조적인 정보를 이용하여 SFS에서 발생하는 파티션된 데이터 구조로 인한 Random Access과정에서 발생하는 디스크 Overhead를 극복하고자 하였다. (하드 디스크에는 잘 작동하지만 Modern SSD나 Ramdisk와 같은...)
- 2023년 2월 11일 (토) 02:36 Ahn9807 토론 기여님이 Rendering equation 문서를 만들었습니다 (렌더링 방정식 문서로 넘겨주기) 태그: 새 넘겨주기
- 2023년 2월 11일 (토) 02:36 Ahn9807 토론 기여님이 렌더링 방정식 문서를 만들었습니다 (새 문서: 분류:레이 트레이싱 == 개요 == 렌더링 방정식 (Rendering equation)은 카지야(Kajiya 1986)가 개발한 방정식이다. 컴퓨터 그래픽에서 렌더링 방정식은 방출되는 빛의 에너지가 반사와 emitted(광원일 경우)을 광학적인 근사의 적분을 통해서 구하는 공식이다. 이 공식은 에너지 보존 법칙에 의해서 도출된다. == 공식의 형태 == 500px|섬네일|가운데 :...)
- 2023년 2월 11일 (토) 02:35 Ahn9807 토론 기여님이 Convoy effect 문서를 만들었습니다 (새 문서: 분류: 동시성 프로그래밍 == 개요 == convoy effect란 여러 스레드가 서로 스케쥴링되는 환경에서, FCFS (First come first serviced)일 경우, 매우 올래 걸리는 프로세스기 할당될 경우, 다른 스레드들이 이러한 프로세스에 영향을 받아서 전체적인 시스템 utilization이 떨어지는 현상을 말한다.)
- 2023년 2월 11일 (토) 02:34 Ahn9807 토론 기여님이 Fsck 문서를 만들었습니다 (새 문서: 분류: 파일 시스템 분류: 유닉스 == 개요 == 시스템 유틸리티 fsck(file system consistency check의 준말)는 유닉스, 유닉스 계열 운영 체제(예: 리눅스, macOS, FreeBSD)의 파일 시스템의 무결성을 검사하기 위한 도구이다. fsck를 파일 시스템의 무결성을 보장하기 위해서 많은 연산을 수행하기 때문에 매우 느리다. 디스크 볼륨의 크기가 커질수록 이러한 체킹은 수분에서 수...)
- 2023년 2월 11일 (토) 02:33 Ahn9807 토론 기여님이 Local logging 문서를 삭제했습니다 (내용: "#넘겨주기 Logical logging". 유일한 편집자는 "Ahn9807" (토론))
- 2023년 2월 11일 (토) 02:33 Ahn9807 토론 기여님이 Local logging 문서를 Logical logging 문서로 이동했습니다
- 2023년 2월 11일 (토) 02:32 Ahn9807 토론 기여님이 Physical logging 문서를 만들었습니다 (새 문서: 분류: 파일 시스템 == 개요 == physical loggin이란 저널링에서 저널에 원래 데이터의 위치에 기록하고자 하였던 원본 데이터를 그대로 작성하는 것을 말한다. 다른 방식으로는 Logical logging이 있다.)
- 2023년 2월 11일 (토) 02:32 Ahn9807 토론 기여님이 Local logging 문서를 만들었습니다 (새 문서: 분류: 파일 시스템 == 개요 == Logical logging이란 저널에 트랜젝션을 기록할때 원래 작성하려고 하였던 데이터의 요약본 (예를 들어서 데이터 블록 A에 파일을 기록하고자 함) 과 같은 것을 적어두는 것을 말한다. 다른 방식으로는 Physical logging이 있다.)
- 2023년 2월 11일 (토) 02:31 Ahn9807 토론 기여님이 Binary Compatibility 문서를 만들었습니다 (새 문서: 분류: 프로그램 실행 == 개요 == Binary Compatibiltiy란, 컴파일된 프로그램이 그 프로그램을 컴파일 하지 않은 이기종 하드웨어에서도 돌아가는 것을 말한다. 예를 들어서 ARM과 X-86은 서로 Binary Compatiable하지 않다. 머신 코드가 다르기 때문이다. 또한 Linux kernel과 Windows는 서로 Binary Compatiable하지 않다. 왜냐하면 서로 ABI가 다르기 때문에 Call stack이 일치하지 않기 때...)
- 2023년 2월 11일 (토) 02:31 Ahn9807 토론 기여님이 Gapbs 문서를 만들었습니다 (새 문서: 분류: 시스템 벤치마크 == 개요 == https://github.com/sbeamer/gapbs 그래프 알고리즘은 점점 여러 분야에 사용되면서 중요성을 보이고 있다. 이러한 그래프 알고리즘의 처리에 대한 standard한 벤치마크를 제공하기 위해서 Graph500과 같은 유수의 그래프 탐색 경진대회에서 사용한 알고리즘을 이용한 벤치마크이다. == 종류 == 모두 6가지의 그래프들이 사용되었으며, 각각의...)
- 2023년 2월 11일 (토) 02:30 Ahn9807 토론 기여님이 P-state 문서를 만들었습니다 (새 문서: 분류: CPU == 개요 == C-state는 CPU의 기능을 하나씩 종료시켜서 전력 소모를 줄이지만, P-state는 시스템이 동작하는 동안, CPU의 클럭 주파수를 조절하여서 어느정도의 Performance로 CPU를 작동시킬 것인지를 결정한다. 이를 Performance-state, P-state라고 한다. Intel의 X86 프로세서에서는 이 기능을 SpeedStep이라는 이름으로 사용하고 있으며, 리눅스는 이를 /sys/devices/system/cpu/c...)