INSTITUTO
TECNOLÓGICO SUPERIOR “JOSÉ OCHOA LEÓN” ESTRUCTURA DE DATOS
PORTAFOLIO ESTUDIANTE: CEVALLOS OROZCO SAMANTHA LILIBETH DOCENTE: TECNOLOGO. SILVIO QUEZADA CURSO: SEGUNDO “A” CARRERA: ANÁLISIS EN SISTEMAS
encuadre
O DE
SUPERIOR TECNOLÓGICO JOSÉ OCHOA ANÁLISIS DE SISTEMAS 1.- DATOS GENERALES Asignatura: Estructura de Datos Eje Curricular de la Asignatura: Profesional Horas presenciales teoría: Horas Semanales. 1 Horas Totales. Horas presenciales práctica: Horas Semanales. 1 Horas Totales. 32
Código de la Asignatura: 2022_AS1P205 Año: 2016 – 2017 Ciclo/Nivel: II Número de créditos: 2
LEÓN
Horas trabajo autónomo: 32
Horas atención a estudiantes: Horas asignadas según distributivo Prerrequisitos: Fundamentos de Programación. Correquisitos: Ninguno
2.- JUSTIFICACION DE LA ASIGNATURA Estructura de Datos es una asignatura profesional, contribuye a que el estudiante conozca las diferentes estructuras de datos y los tipos de dato abstractos, sus representaciones en memoria y almacenamiento, también su implementación estática y dinámica de la estructura, así como las operaciones y algoritmos aplicables para el manejo de información en cada tipo de dato visto durante la asignatura, mediante el reconocimiento conceptual de cada definición revisada, la identificación de cada implementación de algoritmos y operaciones de los tipos de dato revisados, se desarrollará las soluciones en la plataforma Visual Basic 6.0. 3.- OPERACIONALIZACION DE LA ASIGNATURA CON RESPECTO A LAS COMPETENCIAS DEL PERFIL PROFESIONAL 3.1 Objeto de estudio de la asignatura Formalizar al estudiante en el desarrollo de estructuras vectoriales y estructuras de almacenamientos secuenciales y directos para mejorar el rendimiento de sistemas informáticos.
3.2 Competencia de la asignatura El alumno desarrolle aplicaciones informáticas con alto rendimiento. 3.3 Relación de la asignatura con los resultados de aprendizaje RESULTADOS DEL APRENDIZAJE
a)
Habilidad para resolver problemas mediante el desarrollo de aplicaciones informáticas.
b)
CONTRIBUCIÓN (alta, media, baja) ALTA
Saber aplicar las técnicas y metodologías para desarrollar el problema planteado.
MEDIA
Desarrollar aplicaciones implementando las diferentes estructuras básicas y complejas con utilización y manipulación de archivos secuenciales y directos para dar la solución al problema planteado. Utilizar la metodología expuesta para analizar y desarrollar problemas empresariales o cotidianos.
Capacidad para formular, ejecutar y evaluar proyectos estructurales.
c)
d)
Destreza para la implementación de aplicaciones informáticas en una empresa u organizaciones. Trabajo multidisciplinario. Capacidad para plantear
EL ESTUDIANTE DEBE:
MEDIA
soluciones a problemas vinculados al desarrollo de Sistemas. e)
f)
g)
Resuelve problemas de la profesión Compromiso ético de sus responsabilidades profesionales.
MEDIA
Relacionar estructuras de datos con los diferentes lenguajes de programación.
MEDIA
Analizar y dar soluciones estratégicas en las diferentes áreas de Sistemas. Aplicar la ética profesional en el desarrollo de Sistemas.
MEDIA
MEDIA
Dar a conocer los resultados estratégicos enmarcados en la Estructura de Datos con un lenguaje claro y pertinente.
MEDIA
Aplicar los conocimientos de desarrollo de las diferentes estructuras en las diferentes áreas de Sistemas. Presentar disposición en la actualización permanente de los conocimientos.
Comunicación efectiva
h) Impacto en la profesión y en contexto social
MEDIA i) j)
Aprendizaje de por vida.
Utilización de técnicas e instrumentos modernos
MEDIA
MEDIA k)
Asuntos contemporáneos
l)
Capacidad de liderar, gestionar o emprender proyectos.
MEDIA
Utilizar las herramientas tecnológicas y modernas en Sistemas. Actualizar información de acuerdo a las nuevas Tecnologías en el Área de Sistemas. Liderar grupos estratégicos para el desarrollar Aplicaciones en las diferentes áreas de sistemas.
3.4 Proyecto o producto de la asignatura: Realizar ejercicios propuestos de acuerdo a los temas tratados dentro del proceso de enseñanza, durante el M Semestre, lo cual permitirá al estudiante aplicar los conocimientos adquiridos.
4.- PROGRAMA DE ACTIVIDADES: 4.1 Estructura de la asignatura por unidades: UNIDAD
I. ESTRUCTURA DE DATOS BÁSICAS.
COMPETENCIAS
RESULTADOS DE APRENDIZAJE Gestionar estructuras Reconocer e identificar la de datos básicas dentro estructura de datos simples de un sistema de y estructurados información
II. ADMINISTRACIÓN DE MEMORIA Y ALMACENAMIENTO MASIVO
III. ARCHIVOS SECUENCIALES, INDEXADOS, RELATIVOS Y CRIPTOGRAFÍA
Gestionar la memoria de los diferentes equipos informáticos utilizados en un sistema de automatización de información Conocer y gestionar de manera adecuada los tipos de archivos informáticos dentro del proceso de automatización de información
Conocer los tipos de memoria y dispositivos de almacenamiento masivo, ventajas y desventajas.
Identificar correctamente los archivos que se manipulan en un sistema informático.
4.2 Estructura detallada por temas:
UNIDAD I: ESTRUCTURA DE DATOS BÁSICAS. Sema na #
SEMANAS DE ESTUDIO
01
Semana #1 Del 23 al 28 de mayo del 2016
02
03
04
Semana #2 Del 30 de mayo al 04 de junio del 2016 Semana #3 Del 06 al 11 de junio del 2016 Semana #4 Del 13 al 18 de junio del 2016
TEMAS
INTRODUCCIÓN
Estructura de datos Simple y estructurados
Estructura de datos estructurado
Estructura de datos estructurado
CONTENIDOS - Encuadre de asignatura - Prueba de Diagnóstico Introducción a estructura de datos.
Tipo de datos simples: Boolean Char Integer Real Arreglo unidimensional
ESTRATEGIAS DE APRENDIZAJE
HORAS
2 horas Conferencia
Conferencia
2 horas
Conferencia
2 horas
Conferencia
2 horas
Arreglos unidimensional Arreglos bidimensional
Arreglos bidimensional
05
06
07
08
09
Semana #5 Del 20 Estructura de al 25 de datos dinámicas junio del 2016 Semana # 6 Del 27 de Estructura de junio al 02 datos dinámicas julio de del 2016 Semana # 7 Del 04 al 09 de Julio del 2016 Semana # 8 Del 11 al 16 de julio del 2016 Semana #9 Del 18 al 23 de Julio del 2016
Pilas Colas
Conferencia
2 horas
Listas Simples Listas Circulares
Conferencia
2 horas
Estructura de datos dinámicas
Listas Dobles Listas Dobles circulares
Conferencia
2 horas
Estructura de datos estáticas y dinámicas
Ejercicios propuestos
Trabajo grupal
2 horas
Semana de estudio
2 horas
10
Semana #10 Del 25 al 30 de Evaluación Primer Parcial 2 horas Julio del 2016 UNIDAD II: A DMINISTRACIÓN DE MEMORIA Y ALMACENAMIENTO MASIVO
11
Semana #11 Del 01 al 06 de agosto del 2016
Administración de memoria
Objetivo Protección Compartimiento Reubicación
Conferencia 2 horas
12
13
14
Semana #12 Del 08 al 13 de agosto del 2016
Semana #13 Del 15 al 20 de agosto del 2016 Semana #14 Del 22 al 27 de agosto del 2016
UNI DAD III : Sema na # 15
16
17
18
Administración de memoria
Almacenamiento Masivo
Almacenamiento Masivo
Organización de memoria Gestión de memoria sin intercambio Mono programación Multiprogramación con peticiones fijas. Planificación Tamaño de las particiones Clasificación de los Dispositivos de Almacenamiento. Tipos de Dispositivos de Almacenamiento
Conferencia
Medidas de Almacenamiento de la Información Ventajas y Desventajas de algunos Dispositivos de Almacenamiento
Conferencia
2 horas
Conferencia 2 horas
2 horas
AR CHIVOS SECUENCIALES, INDEXADOS, RELATIVOS Y CRIPTOG RAFÍA
SEMANAS DE ESTUDIO Semana #15 Del 29 de agosto al 03 septiembre del 2016 Semana #16 Del 05 al 10 septiembre del 2016 Semana #17 Del 12 al 17 septiembre del 2016 Semana #18 Del 19 al 24 septiembre del 2016
TEMAS
ARCHIVOS SECUENCIALES
CONTENIDOS
Organización y acceso a archivos Estructura de la organización secuencial. Archivos secuenciales indexados
ESTRATEGIAS DE APRENDIZAJE Conferencia
HORA S
2 horas
Conferencia ARCHIVOS INDEXADOS Y DIRECTOS
CRIPTOGRAFÍA
Archivos indexados Ventajas y desventajas Archivos directos Introducción Objetivos Llaves Limitaciones
2 horas
Conferencia 2 horas
Taller Grupal CRIPTOGRAFÍA
Sondeo de conocimientos adquiridos
2 horas
19
Semana #19 Del 26 al 01 octubre del 2016
20
Semana #20
Semana de estudio
2 horas
Evaluación Segundo Parcial
Del 03 al 07 octubre del 2016
2 horas
5.- METODOLOGIA: (ENFOQUE METODOLÓGICO) 5.1. Métodos de enseñanza De acuerdo a la temática propuesta, las clases y las actividades serán:
a. CONFERENCIA Es la forma de enseñanza que permite exponer ideas fundamentales relacionadas a un conocimiento, creando un diálogo con los estudiantes Preguntas y respuestas. (Permite el diálogo).
b. LABORATORIO Forma de enseñanza (forma clase) relacionada a aspectos prácticos donde se resolverán los problemas con instrumentos propios de la carrera (laboratorio de cómputo) c. Medios tecnológicos que se utilizaran para la enseñanza: • • •
Pizarrón para tiza líquida y marcadoresde varios colores.. Material Webs. Equipo de proyección multimedia y material académico en Power Point y Word
6.- COMPONENTE INVESTIGATIVO DE LA ASIGNATURA: El tipo de investigación a utilizar es la Descriptiva. Los medios para realizarla serán mediante el estudio de casos, investigación bibliográfica.
7. PORTAFOLIO DE LA ASIGNATURA Los alumnos llevarán una evidencia del avance académico que se denominará Portafolio de la Asignatura. Este comprende la producción realizada en el desarrollo de la asignatura.
PORTAFOLIO
o ENCUADRE o SYLLABUS o MALLA CURRICULAR o RESUMEN DEL PROCESO DE CLASE (A MANO) o TAREAS CALIFICADAS o DESEMPEÑOS O PRODUCTO o RESULTADO DEL APRENDIZAJE o SUGERENCIAS PARA EL DOCENTE Y AUTORIDADES. o CONCLUSIONES ( EN QUE APORTO LA MATERIA PARA MI
FORMACIÓN Y PROFESIÓN) o ANEXOS: FOTOS, RECORTES DE PERIÓDICOS, ENTRE OTROS. El mejor portafolio será seleccionado por el docente para que quede como evidencia.
8. EVALUACIÓN La evaluación será diagnóstica, formativa y sumativa, considerándolas necesarias y complementarias para una valoración por crédito y objetiva de lo que ocurre en la situación de enseñanza y aprendizaje. Los alumnos serán evaluados con los siguientes parámetros, considerando que la calificación de los exámenes de cada crédito corresponderán al 20% de la valoración total, el restante 50% se lo debe distribuir de acuerdo a los demás parámetros, el 30% de la Valoración es del proyecto de la asignatura, esta valoración se calificará con avances en cada crédito hasta que se complete el proyecto en la fecha de exposición final que desde luego será calificación para el último crédito.
8.1
Evaluaciones Parciales: Pruebas parciales dentro del proceso, determinadas con antelación en las clases. Presentación de informes escritos como producto de investigaciones bibliográficas.
Participación en clases a partir del trabajo autónomo del estudiante; y, Participación en prácticas de laboratorio y de campo de acuerdo a la pertinencia en la asignatura. Trabajo Individual de cada estudiante
8.2
Exámenes: Exámenes, del parcial de crédito y del II parcial o final (18va semana), establecidos en el calendario académico del ciclo o nivel.
8.3
Parámetros de Evaluación por créditos:
PARÁMETROS DE EVALUACIÓN
PORCENTAJES 1er. PARCIAL
2 do. PARCIAL
Pruebas parciales escritas dentro del proceso Exposición oral
1
1
2
2
Investigaciones bibliográficas o de campo
1
1
Participación en clase
2
2
Trabajos y Deberes
1
1
3
3
10
10
Prácticas de laboratorio Prácticas de campo Exámenes Finales y Proyecto Total
9. BIBLIOGRAFÍA 9.1
Páginas WEB (webgrafía)
https://msdn.microsoft.com/es-es/library/4ft0z102.aspx http://sistemas.itlp.edu.mx/tutoriales/estru1/index.htm http://osiris.ucb.edu.bo/~inf104/index_html/ListasSimples.htm http://es.slideshare.net/guestc906c2/clase-i-estructura-de-datos?qid=dbe5a6c4-a82a-4ba59071-dab1d214c32c&v=&b=&from_search=6 http://exa.unne.edu.ar/informatica/programacion1/public_html/archivos/estructuras_arreglo s.pdf
10. DATOS DE LOS DOCENTES: Tlgo. Johnnatan Chacha Tecnólogo en Sistemas Teléfono: 0996667363 Correo Electrónico: johnnatanchacha@hotmail.com
Ing. Sist. Yolanda Polo Ingeniero en Sistemas Teléfono: 0987082703 Correo Electrónico: yolisaid@hotmail.com
Tlgo. Silvio Quezada. Tecnólogo en Análisis de Sistema Teléfono 0939278001 Correo Electrónico: sss_silq@hotmail.com
11. FIRMA DEL O LOS DOCENTES RESPONSABLES DE LA ELABORACIÓN DEL SYLLABUS __________ ________________ Tlgo. Johnnatan Chacha
__________________________ Tlgo. Silvio Quezada
__________________ Ing. Sist. Yolanda Polo
RESUMEN DE CLASES
CLASE # 1 Fecha: Jueves 26 de Mayo
Tema: Introducción digital Objetivo: comprender la importancia y la relación que tiene la estructura de datos con la programación
Definición.- Las estructuras de datos son una representación de la relación lógica existente entre los elementos individuales de datos, determinan: la organización, métodos de acceso, grado de asociatividad y el procesamiento de la información. Desde un punto de vista estricto la información también está compuesta de datos, un dato es la cantidad mínima de información no elaborada, sin sentido por sí misma, pero que convenientemente tratada se puede utilizar en la realización de cálculos o toma de decisiones. Definición de Bit y Byte Bit.- es la unidad básica de información, cuyo valor confirma dos posibilidades o verdadera o falsa pero no ambas, su lenguaje que comprende de 0 y 1 Byte.- es una unidad más grande que el bit es decir está compuesto por 8 bits. ESTRUCTURA DE DATOS SO N
UNA REPRESENTACION DE
LA
RELACION LOGICA QUE EXISTENTES ENTRE ELEMENTOS INDIVIDUALES DE DATOS DETERMI NA
-ORGANIZACION -METODO DE ACCESO PROCEDIMIENTO
INFORMACION
ES
UN CONJUNTO ORGANIZADO DE DATOS
DEFINICION DE BIT Y BYTES
BIT.UNIDAD BASICA DE INFORMACI ON CONFIRMAN DE 0Y1
BYTE.UNIDAD MAS GRANDE COMPUEST A POR 8 BITS
CLASE #2 Fecha: Jueves 26 de Mayo Tema: Estructura de datos simples y estructurados Objetivo: conocer los tipos de datos y aplicar arreglos unidimensionales
DATOS SIMPLES.-declara variables es decir almacena un solo valor, también se puede almacenar una operación aritmética. EJEMPLOS a=inputbox(‘’Ingrese un numero’’)
c=a+5 booleam= almecena datos verdaderos o falsos EJEMPLOS
ESTRCUTURA DE DATO SIMPLES
ALMACENA UN SOLO VALOR
PUEDE SER
*ENTERO *LOGICO *DECIMAL *CARACTER
ESTRCUTURA DE DATOS COMPUESTAS A diferencia de los datos de tipo simple que sรณlo pueden almacenar un valor, los datos estructurados o estructuras de datos pueden recolectar varios valores simultรกneamente
ESTRCUTURA DE DATO ESTRUCTURADOS
PERM ITE
ALMECENAR MAS VALORES CON UNA SOLA VARIABLE PUEDE SER
*ARRAYS *PILAS *COLAS *TDV
CLASE #3 Fecha: Jueves 09 de junio Tema: Estructura de datos
Objetivo: Aplicar arreglos unidimensionales y bidimensionales
ARRAYS BIDIMENSIONAL ES
UN ARREGLO DE DOS DIMENSIONES DENO MINA DA
MATRIZ SITAXI S
ARREGLO(FILA,COLU MNA)
DIM a(3,3) AS INTEGER 0 Fila, registr o
0 1 2 3
1
2
3 a(2,1)=5 0 100
50
EJERCICIOS DE ARREGLO BIDIMENSIONAL
ALMACENAR 6 REGISTROS (CEDULA, APELLIDO, NOMBRE, TELÉFONO) Y REGISTRO 4
PRESENTAR EL
ALMACENAR 6 REGISTROS (CEDULA, APELLIDO, NOMBRE, EDAD) Y PRESENTAR LA LISTA DE MENORES DE EDAD Y MAYORES DE EDAD
CLASE # 4 Fecha: Jueves 16 de junio Tema: Estructura de Datos Estructurados Objetivo Aplicar arreglo bidimensional en la programación Elabore una aplicación que permita ingresar 7 números, presentar los números contrariamente a los que se ingresó: ejemplo si se ingresa 5,10,11,3,2,7,8 presentar 8,7,2,3,11,10,5.
Hacer un programa que ingrese 10 registros de obreros con su salario (Cedula, Apellido, Nombre, Horas Trabajadas, Horas Extras), presentar en una lista los obreros calculando el pago de cada uno de ellos sí: Cada hora trabajada tiene un valor de $5 Cada hora extra tiene el valor de $10
CLASE # 5 Fecha: Jueves 23 de Junio Tema: Estructura de datos numéricos Objetivo: Aplicar arreglos dinámicos, pilas y colas en programación
PILAS SO N
ESTRUCTURA DE DATOS DINAMICOS, ES DECIR QUE NO TIENEN UN NUMERO DE ELEMENTOS FIJOS SE
REPRESENTA UNA PILA DE MANERA VERTICAL, SE DENOMINA TAMBIEN LIFO(ULTIMO EN ENTRAR, PRIMERO EN SALIR)
COLAS SO N
ESTRUCTURA QUE SE REPRESENTA DE MANERA HORIZONTAL LOGICAMENTE, SE DENOMINA ESTRUCTURA FIFO(PRIMERO EN ENTRA, PRIMERO EN SALIR)
USO DE ESTRUCTURA DE DATOS DINAMICOS EN VISUAL BASIC 6.0. ESTRUCTURA PILA
ESTRUCTURA COLA
CLASE #6 Fecha: Jueves 30 de Junio Tema: Estructura de datos dinรกmicos Objetivo: Aplicar listas simples y listas circulares en programaciรณn
LISTAS SIMPLES
SON SON
ESTRCUTURA DINAMICA QUE PERIMITE , EL ALMACENAMIENTO DE INFORMACION. CONSTA DE UN PUNTERO QUE PERMITE LA UBICACION DE UN VALOR VAN VAN
DE LISTA DE FORMA DINAMICA EN EN LOS LOS
LENGUAJES DE PROGRAMACION SE LOS CONOCE COMO ESTRUCTURA TYPE
LISTAS CIRCULARES
PARECIDA S
A LAS LISTAS SIMPLES LA DIFERENCIA QUE ESTAS AL BUSCAR ELEMENTOS VAN RECORRIENDO TODAS LAS LISTAS HASTA LLEGAR AL FINAL, Y NUEVAMENTE INICIA. Primeramente hay que conocer como trabajar con las Listas en Visual Basic 6.0. Sintaxis
Type(nombre_estrcutura) esto representa una lista conocido como estructura TDU Variable_Tipos_Datos End type AL ALMACENAR INFORMACION EN ESTA ESTRCUTURA NO SE TIENE UN ORDEN, VA DE LISTA EN LISTA En código tenemos que darle el orden sea enlazado o circular
PRACTICA DE LISTAS PRACTICA_1
PRACTICA_2
ACTIVIDAD_1: CREAR UNA LISTA EN DONDE ALMACENE (COD_PRODUCTO, NOMBRE_PRODUCTO, PRECIO_VENTA, PRECIO_COMPRA), PARA ALMACENAR LOS DATOS UTILICE EL INPUTBOX Y PRESENTE LOS DATOS INGRESADOS
ACTIVIDAD_2: EN UNA EMPRESA DESEA UN PROGRAMA QUE ALMACENE LOS REGISTROS DE N EMPLEADOS LOS DATOS DEBE ALMACENAR SON (CEDULA, APELLIDO, NOMBRE, TELÉFONO, SUELDO, CARGO), PRESENTAR LAS NÓMINAS (MSGBOX) DE LOS EMPLEADOS INGRESADOS. UTILIZAR LISTAS TYPE
Creamos un nuevo proyecto y agregamos un modulo Hacemos la estructura de nuestra lista Type empleados varcedula as string varapellido as string varnombre as string vartelefono as integer varsueldo as integer varcargo as string end type
Dentro del sub main declaramos arreglo dinámico Dim a() as empleado empleados de tipo de nuestra lista El usuario va a ingresar n empleados para eso hacemos que ingrese Dim valor as integer Valor = val(inputbox(“Ingrese la cantidad de empleados”) Redim a(valor) ubicamos la cantidad máxima que va a almacenar el arreglo Ahora vamos hacer que almacene Dim c as integer For c=0 to val(ubound(a)) a(c). varcedula = inputbox(“ingrese la cedula”) a(c). varapellido = inputbox(“ingrese apellido”) a(c). varnombre = inputbox(“ingrese nombre”) a(c). vartelefono = inputbox(“ingrese telefono”) a(c). varsueldo = inputbox(“ingrese sueldo”) a(c). varcargo = inputbox(“ingrese cargo”) next c
CLASE #7 Fecha: Jueves 07 de Julio Tema: Estructura de datos dinámicos Objetivo: Aplicar arreglos dinámicos, utilizando la lógica de las listas dobles y listas dobles circulares
REPRESENTACIÓN LÓGICA DEL EJERCICIO LISTA PERSONAS CEDULA APELLIDO NOMBRE
Declaración del arreglo a(1 to 5) 1 07955 55 AYALA DAVIS 11111
2 3 4 0795555 87654 ESPINOZ 0766666 CARRILL A MARTINEZ O MAYRA ANA DEISY 11111 11111 11111
5 0987 66 LOPEZ SARA 11111
PRACTICA 1
PRACTICA 2
PROYECTO 3
CLASE #8 Fecha: Jueves 15 de Julio Tema: Estructura de datos estรกtica y dinรกmica Objetivo: evoluciรณn escrita
CLASE #9
Fecha: Jueves 21 de Julio Tema: semana de estudio Objetivo: semana de estudio
SEGUNDO HEMISEMESTRE CLASE #1 Fecha: Jueves 08 de Agosto Tema: Administración de memorias Objetivo: Conocer la administración de memorias en una computadora GESTIÓN DE MEMORIA Éste debe encontrarse en memoria principal. Para mejorar el aprovechamiento de la CPU, ésta se reparte entre varios procesos, también habrá que repartir la memoria principal. Sistema operativo que se ocupa de gestionar la memoria se le denomina Gestor de Memoria. Consiste en llevar la cuenta de las partes de memoria que se están utilizando y las que están libres, gestionar la información entre la memoria principal y la secundaria cuando la memoria RAM no sea suficientemente grande para acoger a todos los procesos. OBJETIVOS El tamaño de los programas crece aún más rápido que la memoria disponible. Resolver el problema de la limitación de memoria fue la utilización de una técnica denominada (overlays) (solapamientos). Un programa con solapamientos se dividía en varias partes. Una de estas partes siempre estaba presente en memoria principal y controlaba la carga sucesiva de las demás partes Así tenemos que en la gestión de memoria se deben perseguir los siguientes objetivos: PROTECCIÓN Se debe asegurar que ninguno de ellos pueda modificar posiciones de memoria de otro proceso. Aunque la escritura de memoria tiene efectos más desastrosos, muchos lenguajes de programación disponen de punteros dinámicos e indexación de vectores o matrices, Debe disponerse de un sistema de permisos de acceso que especifique los derechos que tiene cada proceso en el acceso a zonas de memoria de otros procesos. COMPARTIMIENTO Pero a menudo también es necesario que varios procesos puedan compartir y actualizar estructuras de datos comunes, por ejemplo, en un sistema de bases de datos. En otras ocasiones, lo que se requiere es compartir zonas de código, por ejemplo, en rutinas de biblioteca, para no tener en memoria distintas copias de la misma rutina. En este caso, se hace necesaria alguna protección para que un proceso no modifique inadvertidamente el código de las rutinas.
REUBICACIÓN Requiere que varios procesos residan simultáneamente en memoria. Antes de llevarlo a memoria es la dirección absoluta en la que se va a cargar el proceso. ORGANIZACIÓN DE LA MEMORIA La memoria se debe organizar tanto física como lógicamente. Debido al coste de la rápida memoria RAM, normalmente se necesita ampliarla con memoria secundaria más barata (y más lenta), utilizando para ello dispositivos tales como discos o cintas magnéticas
GESTION DE MEMORIA
PARA EJECUTAR UN PROCESO DEBE ENCONTRARSE EN MEMORIA PRINCIPAL
OBJETIVO: EL TAMAÑO DE LOS PROGRAMAS CRECE MAS RAPIDO QUE ALMECENAMIENTO DISPONIBLE
SE DIVIDE EN: PROTECCION,COMPORTAMIE NTO, REUBICACION Y ORGANIZACION DE MEMORIA
CLASE #2 Fecha: Jueves 18 de Agosto Tema: administración de memoria Objetivo: conocer la administración de memoria de un computador
UNIDAD 2 Administrador de tareas: ctrl+alt+supr
LOS OBJETIVOS
Objetivo de protección.- Si varios procesos comparten la memoria principal, se debe asegurar que ninguno de ellos pueda modificar posiciones de memoria de otro proceso. Objetivo de comportamiento.- El compartimiento de la memoria parece estar en contradicción con la protección, pero es que a menudo también es necesario que varios procesos puedan compartir y actualizar estructuras de datos comunes, por ejemplo, en un sistema de bases de datos. Objetivo de reubicación.- es preferible realizar direccionamientos relativos para permitir que un programa pueda ser cargado y ejecutado en cualquier parte de la memoria.
ORGANIZACIÓN DE LA MEMORIA.- La organización de la memoria puede ser físicamente como lógicamente en ella encontramos la memoria cache que es la almacena dos datos más frecuentes como, por ejemplo: cuando abrimos el navegador y buscamos las páginas y hay nos aparece las páginas que hemos utilizado frecuentemente. El programador no siempre sabe la cantidad y lugar de la memoria que se va a necesitar. Por esto, parece conveniente que sea el gestor de memoria el que se ocupe de esta labor. GESTIÓN DE MEMORIA.- es que esta permite cargar un programa a ejecutar en alguna parte de la memoria RAM. En un proceso que ocupe la memoria a la vez, el esquema de la administración de la memoria es el más sencillo. Sin embargo, éste método ya no tiene aplicación en la actualidad, ya que era visto en las computadoras con operativos de un solo usuario y una sola tarea. El usuario introducía su disco a la computadora por lo general, la máquina no contaba con disco duro y ejecutaba su aplicación, la cual acaparaba toda la máquina MULTIPROGRAMACIÓN.- Con la multiprogramación, la ejecución de los procesos (o hilos) se va solapando en el tiempo a tal velocidad, que causa la impresión de realizarse en paralelo (simultáneamente). Se trata de un paralelismo simulado, dado que la CPU sólo puede trabajar con un proceso cada vez (el proceso activo). De ahí que, en rigor, se diga que la CPU ejecuta «concurrentemente» (no simultáneamente) varios procesos; en un lapso de tiempo determinado, se ejecutarán alternativamente partes de múltiples procesos cargados en la memoria principal PLANIFICACIÓN.- Es un esquema posible para un proceso de planificación a largo plazo, o sea, para los procesos que van a cargarse de la memoria que va hacer ejecutados. Pueden constituir e las particiones de una cola asociada o una pila de tal manera que en cada una de ellas se van encolando los trabajos o procesos dependiendo del espacio de la memoria requerida. La desventaja de meter en colas los trabajos según su tamaño se hace patente cuando la cola de una partición grande está vacía, pero la cola de una partición pequeña tiene muchos trabajos. Una solución sería tener una única cola. Cuando una partición se queda libre, el primer trabajo de la cola que quepa en esa partición se encarga en ella y se ejecuta. Ya que no se puede malgastar una partición grande con un trabajo pequeño, una alternativa puede ser el recorrer la cola entera y elegir el trabajo más grande que se puede cargar en la partición que acaba de quedar libre.
TAMAÑO DE LAS PARTICIONES.- El tamaño de cada una de las particiones lo puede establecer el operador en el momento de arranque del sistema o figurar en algún fichero de configuración del sistema. Y Si dividimos la memoria del sistema en muchas particiones pequeñas, puede dar lugar a que algunos programas grandes no puedan cargarse en memoria aunque haya suficiente memoria disponible, si ésta no se encuentra adyacente en una única partición, dando lugar, en este caso, a una fragmentación externa de la memoria. Si por el contrario, se dispone de unas pocas particiones grandes, los programas pequeños desaprovecharán la memoria sobrante de la partición que ocupen, lo que da lugar a una fragmentación interna
CLASE #3
Fecha: Jueves 25 de Agosto Tema: Almacenamiento masivo Objetivo: Conocer aspectos relevantes del almacenamiento Masivo en un computador Definición. Actúan como un medio de soporte para la grabación de los programas de usuario y de los datos que son manejados por las aplicaciones que se ejecutan en estos sistemas; en otras palabras nos sirven para guardar la información en nuestro computador Clasificación. Acceso secuencial.- significa que un grupo de elementos es accedido en un predeterminado orden secuencial (un registro a la vez). Acceso aleatorio.- se refiere a la forma de acceso a la memoria de manera aleatoria o directa, que tiene connotaciones algo distintas de acuerdo a las disciplinas de estudio. También suele denominarse acceso "al azar", en vez de acceso aleatorio. Tipos de dispositivos. Disco duro.- Los discos duros están clasificados como dispositivos de almacenamiento de datos no volátiles, de acceso aleatorio, digital y magnético, Un disco duro esclavo es aquel que se utiliza simplemente para guardar archivos y no se instala en él un sistema operativo y por tanto no se puede arrancar el ordenador desde él. Disco de estado sólido.- son dispositivos de almacenamiento que usan memoria de estado sólido (tipo flash o SDRAM) en lugar de platos giratorios magnéticos como los discos duros tradicionales. Memoria ROM: Esta memoria es sólo de lectura, y sirve para almacenar el programa básico de iniciación, instalado desde fábrica. Este programa entra en función en cuanto es encendida la computadora y su primer función es la de reconocer los dispositivos, (incluyendo memoria de trabajo), dispositivos. Memoria RAM: Esta es la denominada memoria de acceso aleatorio o sea, como puede leerse también puede escribirse en ella, tiene la característica de ser volátil, esto es, que sólo opera mientras esté encendida la computadora. Memorias Auxiliares: Por las características propias del uso de la memoria ROM y el manejo de la RAM, existen varios medios de almacenamiento de información, entre los más comunes se encuentran: El disco duro, El Disquete o Disco Flexible, etc. Medidas de almacenamiento de información.
1 bit 1 Byte = 8 bits 1 KiloByte (KB) = 1,024 Bytes 1 MegaByte (MB) = 1,024 KB 1 GigaByte (GB) = 1,024 MB 1 TeraByte (TB) = 1,024 GB 1 PetaByte (PB) = 1,024 TB 1 ExaByte (EB) = 1,024 PB 1 ZettaByte (ZB) = 1,024 EB 1 YottaByte (YB) = 1,024 ZB VENTAJAS Y DESVENTAJAS DE LOS DISPOSITIVOS DE ALMACENAMIENTO MASIVO Dispositivo Disquete
Ventajas Su capacidad es suficiente para las necesidades actuales
Memoria USB
Grana capacidad de almacenamiento
CD-ROM
Gran capacidad de almacenamiento de información.
Fácil de transportar Memoria SD Lápiz de memoria
Solo requiere un puerto USB para poder conectarse y mostrarnos por medio del ordenador su contenido.
Smartmedia
Son muy utilizadas en dispositivos mp3. Dentro de un Archivo que custodie documentación variada, específicamente audio y sonido, este tipo de memoria es de gran utilidad Sus tasas de transferencia de información son superiores que las tarjetas flash y con ello se demora menos en pasar información de un punto a otro.
Minidiscos duros (Micro drivers)
Desventajas Su almacenajes a largo plazo es poco confiable, es decir todo los daña, desde el calor, frio, cintas magnéticas, humedad, etc El riesgo de que un virus entre en el dispositivo en demasiado. La información que posee depende de un medio físico que fácilmente puede extraviarse al portador Su entrada aun no es muy común y su velocidad es menor. Su capacidad para contener la información en soporte electrónico de un Archivo es muy reducido Por ser tan pequeñas puede perderse de forma simple.
En el mercado casi ningún minidisco se vende por separado sino que vienen incorporados en un aparato que lo emplea.
CLASE #4 Fecha: Jueves 01 de Septiembre Tema: Almacenamiento Masivo Objetivo: conocer aspectos relevantes del almacenamiento masivo en un computador Realizamos una exposición sobre el tema propuesto DEFINICIÓN.-Se trata de cualquier dispositivo electromagnético o electrónico, capaz de guardar a largo plazo información generada por los usuarios, sin importar su origen u objetos de tales datos. Actualmente existe una gran gama de productos destinados a este fin, clasificados de acuerdo a sus principios de almacenamiento, tales como mecánico CLASIFICACIÓN DE LOS DISPOSITIVOS DE ALMACENAMIENTO Acceso secuencial: En el acceso secuencial, el elemento de lectura del dispositivo debe pasar por el espacio ocupado por la totalidad de los datos almacenados previamente al espacio ocupado físicamente por los datos almacenados que componen el conjunto de información a la que se desea acceder. El método de acceso secuencial es utilizado en los siguientes dispositivos Tocadiscos: para reproducir la melodía específica del disco de vinilo, la aguja recorre por lo menos parte de la anterior canción para que se reproduzca la elegida por el usuario. Lectora de cintas de respaldo: tanto para leer como para escribir un dato, es necesario que la cabeza magnética recorra parte de la cinta. Grabador de discos ópticos (CD, DVD, HD-DVD ó Blu-ray): el proceso de grabado se hace de manera espiral por medio de un rayo láser, el cuál escribe sobre tal espiral un dato a continuación del otro. Casetera: tanto para leer como para escribir un dato, es necesario que la cabeza magnética recorra parte del casete.
Acceso aleatorio: En el modo de acceso aleatorio, el elemento de lectura accede directamente a la dirección donde se encuentra almacenada físicamente la información que se desea localizar sin tener que pasar previamente por la almacenada entre el principio de la superficie de grabación y el punto donde se almacena la información buscada.
El método de acceso aleatorio es utilizado en los siguientes dispositivos y en las situaciones que se mencionan a continuación: Disco duro: la cabeza electromagnética se dirige inmediatamente en la superficie de disco dónde se encuentra el dato a leer ó el espacio sobre el que va a escribir. Memoria USB: de manera electrónica y sin movimientos mecánicos, se accede a la celda de memoria flash dónde se encuentra el dato que se va a leer ó escribir. Disquete: la cabeza electromagnética se dirige inmediatamente en la superficie del disco dónde se encuentra el dato a leer ó el espacio sobre el que va a escribir. Memoria RAM: de manera electrónica y sin movimientos mecánicos, se accede a la celda de memoria dinámica dónde se encuentra el datoque se va a leer ó escribir. Unidad SSD: de manera electrónica y sin movimientos mecánicos, se accede a la celda de memoria flash dónde se encuentra el dato que se va a leer o escribir. Memoria Caché: de manera electrónica y sin movimientos mecánicos, se accede a la celda de memoria estática dónde se encuentra el datoque se va a leer o escribir. Lector de disco óptico (CD/DVD/HD-DVD ó Blu-ray): un láser se dirige al lugar exacto del disco dónde
se encuentra el dato a leer. Unidad LS-120: con un láser se dirige a la cabeza magnética al lugar específico del disco dónde se encuentra el dato a leer o el espacio sobre el cual escribir.
TIPOS DE DISPOSITIVO DE ALMACENAMIENTO Memoria ROM: Esta memoria es sólo de lectura, y sirve para almacenar el programa básico de iniciación, instalado desde fábrica. Este programa entra en función en cuanto es encendida la computadora y su primer función es la de reconocer los dispositivos, (incluyendo memoria de trabajo), dispositivos Memoria RAM: Esta es la denominada memoria de acceso aleatorio o sea, como puede leerse también puede escribirse en ella, tiene la característica de ser volátil, esto es, que sólo opera mientras esté encendida la computadora. En ella son almacenadas tanto las instrucciones que necesita ejecutar el microprocesador como los datos que introducimos y deseamos procesar, así como los resultados obtenidos de esto.
Memorias Auxiliares: Por las características propias del uso de la memoria ROM y el manejo de la RAM, existen varios medios de almacenamiento de información, entre los más comunes se encuentran: El disco duro, El Disquete o Disco Flexible, etc.
MEDIDAS DE ALMACENAMIENTO DE INFORMACIÓN Concepto.- Las medidas de almacenamiento son aquellas unidades de medición que permiten determinar cuánto espacio hay disponible en una unidad de memoria. Se le llama medida de almacenamiento al registro del espacio que hay en un dispositivo dado para grabar datos e información de manera permanente o temporal. También se puede decir que una medida de almacenamiento es aquella práctica que se realiza con el interés de optimizar el rendimiento y aprovechar todo el espacio que existe dentro de una unidad.
VENTAJAS Y DESVENTAJAS DE DISPOSITIVOS DE ALMACENAMIENTO DISPOSITIVOS DE ALMACENAMIENTO
VENTAJAS
DESVENTAJAS
Disco duro
Mucha capacidad de almacenamiento a bajísimo costo en comparación con otras formas de almacenamiento (memorias RAM, memorias flash, etc.)
En ciertas condiciones anormales como exceso de calor, movimiento o golpes, la información almacenada en un disco duro puede alterarse o perderse.
Micro memorias
Mayor velocidad de transmisión de datos, gran espacio para almacenamiento y la capacidad de usarla tanto en smartphones como en otro tipo de dispositivos gracias al adaptador a SD.
Tarjetas Micro SD son muy complicadas debido a que son muy pequeñas. También son típicamente más caros que las tarjetas SD, debido a su pequeño tamaño.
Unidades zip
Portabilidad, reducido formato, precio Capacidad reducida, global, muy extendido incompatible con disquetes de 3,5"
Cintas magnéticas
Precios asequibles, muy extendidas, Extrema lentitud, útiles sólo enormes capacidades para backups
Disco compacto
Puede almacenar cualquier tipo de Existen usuarios que no tienen información con mayor rapidez. un dispositivo para "quemar" discos, no se está tratando de mencionar piratería, y guardar así sus datos en los discos.
Memoria USB
Gran capacidad de almacenamiento
El riesgo de que un virus entre en el dispositivo en demasiado.
CLASE #5 Fecha: Jueves 08 de Septiembre Tema: Archivos secuenciales Objetivo: Conocer aspectos relevantes de los Archivos Secuenciales y su manejo en Visual Basic 6.0.
ARCHIVO
LOS ARCHIVOS TAMBIEN DENOMINADOS FICHEROS SON UNA COLECCION DE INFROMACION
ARCHIVOS SECUENCIALES
ES LA FROMA BASICA DE ORGANIZAR UN CONJUNTO DE REGISTROS, QUE FORMAN UN ARCHIVO, UTILIZANDO UNA ORGANIZACION SECUENCIAL
EJEMPLO DE SECUENCIAL REGISTRO 1 REGISTRO 2 REGISTRO 1-1 REGISTRO 1-2 REGISTRO N-1 REGISTRO N
ESTRUCTURA DE LA ORGANIZACIÓN SECUENCIAL Es la forma más simple de almacenar y recuperar registros de un archivo La organización es secuencial. Se almacena por posición: de primer registro, segundo...etc. VENTAJAS Proveen la mejor utilización de espacio y son rápidos cuando los registros son accesados
secuencialmente Los archivos con poca volatilidad, gran actividad y tamaño variable son altamente susceptibles de ser organizado secuencialmente DESVENTAJAS El acceso de un registro es pobre, la localización de un determinado registro no se puede hacer individualmente En los archivos secuenciales la dirección de los registros está implícita y esta vulnerable a fallas del sistema EJEMPLOS DE ARCHIVOS SECUENCIALES
BLOC DE NOTAS
MICROSOFT WORD
MANEJO DE ARCHIVOS SECUENCIALES CON VISUAL BASIC 6.0. Crear archivo:
Para abrir un archivo: necesitas utilizar la palabra reservada open para especificar la ruta En caso que no lo encuentre al archivo lo creamos usando la palabra clave append, Sintaxis Open <Ruta_string> for Append As # <Numero_archivo_manejar>
PRACTICA_1 CREAR UNA RUTA
Para crear un archivo utiliza la palabra reservada close# <numero de archivo_manejar> Para leer el contenido de un archivo usas la palabra clave Input y su sintaxis es: Open<ruta_String> for Input As Input(LOF(1),#<numero_archivo_manejar>)
#<numero_archivo_maneja>
<Variable_contenido>
=
CLASE #6 Fecha: Jueves 15 de Septiembre Tema: Archivos Indexados y Directos
Objetivo: Conocer aspectos relevantes de los Archivos Indexados y manejo de archivos directo en visual Basic 6.0. PRACTICA_1(retroalimentación clase anterior)
ARCHIVOS SECUENCIALES INDEXADOS Un método para superar las desventajas de los archivos secuenciales es el del archivo secuencial indexado. La indexación es una técnica que se ha utilizado desde hace mucho tiempo para optimizarlo acceso a los registros ficheros Trabaja como un archivo secuencial y un archivo directo o aleatorio. Secuencial almacena el índice Aleatorio almacena datos
ARCHIVO INDEXADOS Archivo en el que acceden a los registros de acuerdo con el valor de un campo clave VENTAJAS
Búsqueda más rápida gracias a la utilización de un índice Se puede actualizar los registros en los mismos ficheros, no hay que crear un fichero nuevo para el progreso de actualización
DESVENTAJAS
Aumenta el tiempo de acceso a registros Solo se puede grabar en soporte direccionales Inversión económico mayor debido a su mantenimiento Los registros deben ser de longitud fija
ARCHIVO DIRECTOS O DE DISPERSIÓN Son usados a menudo donde se necesita un acceso rápido, donde se da por ejemplos son guías telefónicas, tabla de precio, horarios y lista de nombres. Almacena datos parecidos a una tabla
Ejemplos
TAREAS Y CONSULTAS
TAREA Nยบ1 HACER UNA APLICACIร N QUE PERMITE INGRESAR 5 NOMBRE DE PERSONAS Y QUE PRESENTE TODOS LOS NOMBRES INGRESADOS
TAREA Nº2 Ejercicio 1: Ingresar 15 números, presentar la lista de los números que estén entre el 10 y el 20.
Ejercicio 2: Hacer una aplicación que permita ingresar 15 registros de estudiantes (Apellidos, Nombres, Nota 1, Nota 2, Nota 3), presentar la lista de los estudiantes aprobados y la lista de los estudiantes reprobados, teniendo en cuenta que para aprobar debe de tener como mínimo 7 en promedio.
TAREA Nº3 INVESTIGAR SOBRE LAS ESTRUCTURAS DINÁMICAS PILAS Y COLAS EN PROGRAMACIÓN. PILAS Pilas son estructura de datos la cual se pude acceder solo por un extremo de la misma, las operaciones que se realizan en las inserción y extracción se realiza por medio de un tope por tal motivo no podemos ingresar cualquier elemento en una pila, la pila también es conocida como L.I.F.O. su significado es último en entrar primero en salir, se las utiliza mucho es lo que es el desarrollo de los sistemas informáticos y software en general, un ejemplo del uso de pila es en la ejecución de pascal que utiliza una pila para llevar la cuenta de los parámetros de procedimiento de las funciones entre otras cosas, este tipo de estructuras también son utilizadas para traducir expresiones aritméticas o cuando se quiere recordar una secuencia de acciones u objetos en el orden inverso del ocurrido ESTRUCTURA DE UNA PILA
Crear pila Insertar elemento Retirar elemento Pila vacía Vaciar pila COLA Es una colección de elementos homogéneos es decir almacenados en una sola estructura en la misma cola se pueden insertar elementos por unos de los extremos denominados frente y sale por el otro extremo denominado final, es muy importante recordar que tanto el frente y el final de una cola son los únicos lugares donde se puede insertar o retirar los elementos ingresados, una cola es denominada como F.I.F.O su significado es primera en entrar primera en salir Estructura de una cola Crear cola Insertar elementos Retirar elemento Cola vacía Vaciar cola TAREA Nº4 Investigar sobre las estructuras dinámicas: Listas simples y circulares para que pueda responder las siguientes preguntas. ¿QUÉ ES? LISTAS SIMPLES.- Una lista es un conjunto de elementos con un orden concreto, son estructuras de datos semejantes a los array salvo que el acceso a un elemento no se hace mediante un índice sino mediante un puntero. CIRCULARES.-Es una lista lineal en la que el último nodo a punta al primero. Las listas circulares evitan excepciones en las operaciones que se realicen sobre ellas. Cada nodo siempre tiene uno anterior y uno siguiente. ¿CUÁLES SON SUS CARACTERÍSTICAS? LISTAS SIMPLES Puede tener una longitud arbitraria. Ofrece la posibilidad de insertar o eliminar un elemento en cualquier ubicación. Ofrece la posibilidad de recorrer la lista de forma ordenada, de elemento en elemento.
CIRCULARES No existe algún elemento que apunte a NULL Se integra una estructura tipo anillo Solo hay una cabeza La cabeza siempre será el siguiente enlace para algún nodo Se pueden llegar a crear recorridos en bucles infinitos PARA QUE ME SIRVE APLICAR LAS LISTAS SIMPLES Sirve para guardar información que almacena dentro puede ser de cualquier tipo de dato un sucesor único excepto el ultimo nodo de la lista.
TAREA Nº5
DEL MISMO EJERCICIO DE LA CLASE ANTERIOR, AÑADIR UN MENSAJE PARA PRESENTAR LA CANTIDAD DE NOMBRES IGUALES ENCONTRADOS
SUGERENCIAS CONCLUSIÃ&#x201C;N ANEXOS