Manejo de archivos en UNIX
Enviado por Tjomen Wallace • 12 de Febrero de 2019 • Práctica o problema • 579 Palabras (3 Páginas) • 181 Visitas
INSTITUTO POLITECNICO [pic 1][pic 2]
NACIONAL
ESCUELA SUPERIOR DE CÓMPUTO
ALUMNO:
Lima Ramírez Carlos Augusto Palacios Rivas Priscila Ivonne
ASIGNATURA:
SISTEMAS OPERATIVOS
PROFESOR:
DAVID ARAUJO
GRUPO: 2CV9
“PRACTICA 10”
MANEJO DE ARCHIVOS EN UNIX
OBJETIVO: Aplicar la forma como se manejan archivos en los sistemas UNIX. Programar la técnica de mapeo de archivos.
DESCRIPCION:
Se programó una técnica para poder acceder archivos mediante un programa y asi realizar un manejo de archivos más rápido.
CODIGO FUENTE:
#define MYNAME "sem1.c"
#include
#include
#include
#include
#include
#include
#include
#include
int main(int argc, char **argv)
{ int fd, tam; char *org, *p,
*q; struct stat bstat;
if (argc!=3) { fprintf(stderr, "Uso: %s archivo_origen archivo_destino\n", MYNAME);
return(1);
}
if ((fd=open(argv[1], O_RDONLY))<0) { perror(MYNAME": No puede abrirse el archivo");
return(1);
}
if (fstat(fd, &bstat)<0) {
perror(MYNAME": Error en fstat del
archivo"); close(fd); return(1);
}
if ((org=mmap((caddr_t) 0, bstat.st_size, PROT_READ|PROT_WRITE, MAP_PRIVATE, fd,
0)) == MAP_FAILED) { perror(MYNAME": Error en la proyeccion del archivo");
close(fd); return(1); }
close(fd);
p=org;
for ( ; p
(*p)=toupper(*p);
if ((fd=open(argv[2], O_CREAT|O_TRUNC|O_RDWR, 0640))<0) { perror(MYNAME": No puede crearse el archivo destino"); exit(1);
...