dma

    1

    1답변

    Java 7에서 NIO2를 사용 해본 적이 있는데 AsynchronousFileChannel은 동기 FileChannel 형제와 같은 transferTo 메서드를 사용한다고 가정합니다. 로컬 파일과 열린 TCP 소켓간에 제로 사본 전송을 수행하려고합니다. 나는 단지 FileChannel을 만들고, AsynchronousSocketChannel을 마지막 ar

    1

    2답변

    DMA 전송 속도에 대해 배우려고하는데이 질문을 이해할 수 없습니다. 나는 해답을 얻었지만 거기에 도착하는 법을 모른다. 이 질문은 입력 인터페이스에 도착하는 데이터의 메모리에 입력 및 저장을 처리하는 DMA 사용,이 메커니즘을 사용하여 달성 할 수있는 달성 가능한 데이터 전송률 및 특정 데이터 전송률에 사용되는 버스 대역폭 (용량) . 각 DMA 전송에

    1

    1답변

    DMA을 구현해야하는 Linux에 장치 드라이버를 쓰고 있습니다. pci_alloc_consistent()을 호출하여 DMA 개의 버퍼를 할당 할 수 있습니다. 그런데 어떻게 사용자 수준에서 버퍼에 명령을 쓸 수 있습니까? 작업에는 특정 레지스터에 값을 쓰는 작업이 포함되어 있는데이 작업은 DMA 명령을 사용하여 어떻게 구현됩니까?

    6

    1답변

    리눅스 커널 용 FPGA 드라이버에서 일하고 있습니다. 코드는 x86에서 잘 작동하는 것처럼 보이지만 x86_64에서는 몇 가지 문제가 있습니다. 스트리밍 DMA를 구현했습니다. get_user_pages(...); for (...) { sg_set_page(); } pci_map_sg(); 그러나 pci_map_sg가 PAGE_SIZE으

    1

    2답변

    8 비트 병렬 데이터를 IO에서 메모리로 전송하려는 경우 데이터가 약 5Mhz의 속도로 매우 빠르게 전송됩니다. S3C2440 (400Mhz) 프로세서를 사용하는 ARM9 기반 키트에 ARM9 기반 키트가 포함되어 있습니다. 어떤 신체적 인 애원이라도 어디서부터 시작해야할지 알려줄 수 있습니다. 내 데이터는 ADC에서 오는 비디오 신호입니다. 할 수있는 인

    4

    2답변

    "나는 Fedora 14와 저는 PCI 스위치 용 드라이버를 만들고 있습니다. 해당 스위치에 대해 8MB의 DMA 메모리 (2 * 4MB를 처리 할 수 ​​있음)를 할당해야하지만 기본 주소의 처음 23 비트가 0이어야 8MB가되는 경우 예를 들어 메모리 크기에 맞춰야합니다. 어떻게해야합니까?

    3

    1답변

    DMA를 사용하여 네트워크 I/O를 가속화합니다 (인터넷을 통한 집중 디스크 읽기 및 출력). 각 스레드가 DMA 전송을 발행하는 다중 스레드 응용 프로그램이 있는지 궁금합니다. 디스크 I/O 및 DMA 전송이 OS에 의해 어떻게 예약됩니까? 필자가 이해하는 한, 커널은 사용자 프로그램없이 디스크에서 필요한 부분의 데이터를 RAM에로드하고 DMA 전송을 실

    1

    1답변

    사용자 프로그램이 스레드 1을 고려 buf = malloc(9000); memset(buf, 0xee, 9000); read(buf, 9000); //for example gives pages [part of 7, 8, 9, part of 10] 스레드 2 사용자 프로그램 : buf = malloc(9000); //for example gives p

    1

    3답변

    아마 DMA와 캐시를 아는 대부분의 어리석은 질문 ... 캐시에 저장되어있는 캐시는 내가 액세스 할 수있는 곳 가까이에 저장되어 있으므로 I/영형. 하지만 DMA는 무엇입니까? 지연이 적은 메인 메모리에 접근 할 수 있습니까? 누군가가 차이점을 설명 할 수 있습니까? 아니면 왜 혼란 스러울까요?

    1

    1답변

    DMA로 VBO를 시도합니다. 하지만 작동하지 않습니다. Svertex = new GLdouble**[nSlice+1]; Snormal = new GLdouble**[nSlice+1]; Scolor = new GLdouble**[nSlice+1]; Sindicesup = new GLbyte[3]; for(int i=0; i < nSlice+1; i