O que acontece quando você abre um arquivo para leitura?
P>Posto que você está trabalhando em Linux/Unix/MaxOS?
Quando iniciamos um programa que se torna como um processo estará recebendo por padrão três streams, stream(stdin) de entrada, stream(stdout) de saída, error(stderr)(pode estar em alguns sistemas syslog também está disponível por padrão i guess). Na verdade, os detalhes desses fluxos por tabela de processos por SO, conhecidos como tabela de arquivos abertos. Você sabe que os índices de linha começam a partir de 0 na família c. Assim, eles são 0,1 e 2 que também são referidos na terminologia Unix/Linux como descritores de arquivo (no caso do windows ou outros oses eles podem ser chamados como manipuladores de arquivos). Agora, no seu programa, se você abrir um arquivo, uma nova linha vazia é selecionada nessa linha a informação dinâmica dos arquivos é mantida e esse número de linha torna-se descritor de arquivo para esse arquivo durante esse processo. Lembre-se de que esses descritores de arquivo são números dinâmicos, com exceção de 0, 1 e 2. Na verdade, também podemos jogar com 0, 1 e 2. Em uma linha da tabela de arquivos aberta, nós mantemos silenciosamente quantos bytes lemos. Isto é, do ponto de vista do programa do usuário, nós estaremos referindo quantos bytes nós lemos desse arquivo. No entanto, você sabe que os arquivos estão em dispositivos de memória secundários, como discos rígidos. Quando dizemos 102002th byte que queremos do arquivo aberto, precisamos encontrar qual bloco de disco esse byte está disponível. Então, precisamos fazer um pedido para o controlador DMA, que lê e armazena em buffers de SO. A partir daí, precisamos pegar o byte necessário. Todas estas coisas não são visíveis para o programador. Ponto de vista do programador, que byte em termos do arquivo aberto. Ou seja, ele. OK. No Windows também, as coisas funcionam quase da mesma maneira, com a excepção do file handle.
Artigos semelhantes
- Desde o momento em que você abre um arquivo executável, até o momento em que você termina, como funciona uma instalação?
- Quais são os caracteres estranhos na tela quando se abre um arquivo exe usando um editor de texto?
- A leitura de artigos da Aeon, etc. é realmente tão importante para um candidato a EAC que gosta de livros de histórias e de leitura de jornais?
- Sem baixar um arquivo torrent, como faço para transferir diretamente o arquivo para qualquer serviço na nuvem?