Pesquisar este blog

terça-feira, 20 de abril de 2010

O CUSTO DE CAPITAL 
DISCIPLINA: AFO - TURMA: 1ºSAA e 1º SAB

     O Que é o Custo de Capital?

    Tecnicamente, o Custo de Capital, é a taxa de retorno que uma empresa precisa ganhar sobre seus invetimentos- sobre o capital investido, de forma a manter o valor de "mercado da Empresa." Podemos imaginar uma taxa de retorno que é exigida pelos investidores de mercado, de forma a atrair o financiamento necessário a um preço compativel. É a forma como os proprietários ou terceiros, exigem que o seu capital investido, tenha um retorno minimo necessário na linha de tempo do investimento. Podemos também visualizar que o custo do capital seja representado pela taxa de juros que as empresas usam para calcular, descontar ou compor, o valor do dinheiro no tempo.
   Desta forma, os recursos empregados na empresa, sob a denominação de investimento dos proprietários,ou dos recursos captados no mercado financeiro através de títulos emitidos pela empresa, que podem ser ações ou debentures, ou ainda, empréstimos tomados a terceiros, todos eles trazem um custo sobre o capital repassado à empresa. O Capital da Empresa é composto pelo valor do seu Patrimônio Liquido(PL), acrescido dos custos das sua dividas, conhecidas como: Obrigações ou Passivo.
     A importância de se estudar o "Custo do Capital,"  é o seu impacto sobre as operações da Empresa e sobre a sua lucratividade.
 Veja abaixo um Exemplo de Balanço:
 No segundo quadro, você encontrará a Conta: Passivo  e o Patrimônio Liquido - PL. Visualize, e observe as contas e os seus respectivos nomes. Não nos esqueçamos, que o conhecimento do Custo do Capital,é fundamental para a Empresa como um todo, e extremamente importante nas tomadas de decisões que afetarão a vida da empresa, com repercussão imediata interna e externamente.
10.1 Balanço Patrimonial Resumido

Tabela 109.
Balanço Patrimonial Ativo - Série


Tabela 110. Balanço Patrimonial Passivo - Série


 

 



segunda-feira, 19 de abril de 2010

SISTEMAS OPERACIONAIS - Aula 01 - Prof. Dr. Jean M. Laine

                      Sistemas Operacionais
Prof. Dr Jean M. Laine
AULA 01 - Introdução aos Sistemas Operacionais

1. Definições:

         1.1. O sistema operacional é uma camada de software colocada sobre o hardware para gerenciar todos os componentes do sistema (processadores, memória, discos, interface de rede, entre outros) e maneira otimizada. O sistema operacional busca oferecer uma interface mais amigável aos usuários em relação às operações associadas a cada componente da máquina.
  
      1.2. O sistema operacional é um programa qua atua como intermediário entre o usuário e o hardware de um computador. O propósito de um sistema operacional é oferecer um ambiente na qual os usuários possam executar programas. O principal objetivo de um sistema operacional é, portanto, tornar o uso do sistema de computação conveniente. Umameta secundária é usar o hardware de forma eficiente.
        Sempre que o usuário necessita realizar alguma operação sobre qualquer componente do sistema computacional ele recorre ao sistema operacional. Assim, não precisamos conhecer os detalhes associados a cada componente do hardware. A organização de um Sistema computacional pode ser vista na figura abaixo:

 

      Os serviços oferecidos pelo sistema operacional Irão depender do sistema operacional considerado. Entretanto, existe um conjunto básico de serviços oferecidos por quase todos os sistemas operacionais. Assim, um sistema operacional deve oferecer:

a. meios para que um programa seja carregado em memória e executado;
b. sistema de arquivos, permitindo criar, ler, escrever e destruir arquivos;
c. interface de acesso aos periféricos (impressoras, fitas, discos, etc);
d. mecanismos de monitoração de recursos, capazes de identificar possíveis gargalos no sistema;
e. meios para armazenar/manter o estado do sistema;
f. mecanismos de compartilhamento de hardware por usuários => necessidade de algum tipo de proteção;

2. Sistemas Operacionais

      2.1. Sistema Operacional na Visão do Usuário

      Corresponde a imagem que o usuário tem do sistema operacional, definida pela interface através do qual o usuário acessa os serviços do sistema. Todo computador pode ser visto como uma máquina composta por níveis ou camadas. Nesta abordagem podemos visualizar o hardware como sendo a camada de mais baixo nível (nivel 0), logo acima o sistema operacional (nível 1) e, posteriormente, a camada de aplicação (nível 2); conforme ilustrado abaixo:

 
        2.2 Chamadas de Sistema

        É a forma como os programas solicitam serviços ao SO e, por isso, é conhecida como a interface entre os programas que estão rodando na camada de aplicação e o sistema operacional. Toda chamada de sistema transfere a execução para o sistema operacional mudando o modo de execução de usuário para modo núcleo, por meio de uma instrução de trap. Com isso, o programa, através de um conjunto de parâmetros, informa o que ele realmente quer do SO. Após finalizada a execução da chamada de sistema, o controle é devolvido para o programa do usuário (muda-se do modo núcleo para usuário) na instrução seguinte à da chamada ao sistema. Com isso, o programa continua normalmente a execução de suas instruções. Existem vários tipos de chamadas ao sistema, cada uma com um propósito diferente. Por exemplo, uma divisão por zero no programapode levar a uma situação de erro e, neste caso, se o problema não for tratado no próprio código da aplicação, o sistema operacional assume o controle e decide o que fazer.
          Existem diferentes tipos de chamadas de sistemas e cada sistema operacional implementa um conjunto distinto relacionado as seguintes atividades:

a. chamadas de sistema para gerenciamento de processos: fork, waitpid, execve, exit, etc.
b. chamadas de sistema para gerenciamento de arquivos: open, close, read, write, seek, etc.
c. chamadas de sistema para gerenciamento do sistema de diretórios: mkdir, rmdir, link, mount,  mount, etc.
d. chamadas de sistema diversas: chmod, kill, time, etc.

         2.2.1. Kernel

         O kernel ou núcleo é a parte do SO que implementa as chamadas ao sistema. As atividades normalmente atribuídas ao kernel são:
a. criação, agendamento e finalização de processos;
b. alocação e liberação de memória;
c. controle do sistema de arquivos;
d. operações de entrada e saída com dispositivos periféricos, acesso à memória, entre outros. A  implementação do kernel pode ser organizada de diferentes maneiras, tais como:
  • Monolítica: BSD, Linux, Solaris, MS-DOS e derivados, incluindo Windows 95, Windows 98 e Windows ME.
  • Híbrida: BeOS, Windows NT, XNU.
  • Microkernel: Minix;
  • Exokernel.
  • Camadas.

         2.3. Programas de Sistema

         São programas normais, também chamado de utilitários, executados fora do kernel do SO que utilizam as chamadas de sistema para realizarem suas funções. Exemplos: Windows Explorer, Interpretador de Comandos (DOS ou UNIX) ou Interface Gráfica de Usuário (Windows).

         2.4. Sistema Operacional na Visão de Projeto

        Na visão de projeto a preocupação é com a organização interna do SO, ou seja, como os serviços são implementados. Na solicitação de algum serviço corresponde a uma chamada de sistema que deverá ser tratada pelo SO quais serão as atividades envolvidas no processo e como serão implementadas. Exemplo: na leitura de um registro de arquivo em disco o SO envia comandos à controladora do disco e o programa espera a resposta. Concluída a leitura o SO é informado pelacontroladora e o programa pode retornar sua execução normal.

        Exercicios:

1. Como seria utilizar um computador sem um sistema operacional? Quais são suas duas principais funções?
2. Muitos sistemas operacionais atuais são projetados para operar em redes de computadores. Cite algumas vantagens e desvantagens dessa operação em rede, quando comparada com a operação clássica (stand-alone)?
3. Por quê a organização do sistema computacional em camadas é fundamental para o desenvolvimento e evolução dos elementos de hardware e também de software?
4. Pesquise e explique as formas como o kernel pode ser organizado.
5. Explique o que é uma chamada de sistema e pesquise exemplos que não foram citados no texto.

Bibliografia:

[1] OLIVEIRA, R. S.; CARISSIMI, A. S. e TOSCANI, S. S. Sistemas Operacionais. Sagra uzzatto, Porto Alegre, 2001. (Cap. 1)
[2] TANENBAUM, A. S. Sistemas Operacionais Modernos. Prentice Hall, 2a Edição, 2003.

domingo, 18 de abril de 2010

Informática Instrumental - 1º Técnico

A VÁRIAS PARTES DE UM SISTEMA OPERACIONAL

Sabe-se que um Sistema Operacional de um Computador é usado ao mesmo tempo, por várias pessoas, o que demonstra a sua versatilidade e ao mesmo tempo, sua complexidade.São milhões de linhas de instruções, elaboradas por profissionais da programação. Com o objetivo de tornar os Sistema Operacionais mais fáceis de serem escritos e compreendidos, são construidos como módulos, tendo cada módulo a responsábilidade por uma função. Os módulos típicos em um grande SO multiusuário geralmente são:

• Núcleo (Kernel em inglês - também conhecido como "executivo")
• Gerenciador de processo
• Escalonador (Scheduler, em inglês)
• Gerenciador de arquivo

O NÚCLEO - UM EXECUTIVO EM TEMPO-REAL

O núcleo de um "SO" é também conhecido como EXECUTIVO em tempo real. As funções por ele executadas são:

Chaveamento entre programas;
Controle e programação de dispositivos de Hardware;
Gerenciamento de memória;
Gerenciamento de processos;
Escalonamento de tarefas;
Comunicação entre processos;
Processamento de exceções e de interrupção.

No inicio do presente Tema, falamos sobre o Sistema de Monitoramento, e agora retornaremos a ele, dizendo as suas funções não exigem tanta complexidade como acima relacionada, pelo fato de ser um Sistema "Mono-tarefa", ou seja, executa apenas um programa. Assim sendo, não precisaria "processar permutas" entre mais de um programa ou autorizar a comunicação entre outros "programas" - Comunicação entre processos. Sua própria gerência de memória seria desnecessária, tendo em vista "que o programa já reside permanentemente em ROM ou EPROM - uma forma especial de programa de memória ROM.

Agora, um Sistema Operacional criado para manejar um grande número de usuários, necessitaria de um núcleo para executar todas as funções necessárias, conforme descritas acima. Normalmente esse Programas são armazenados em disco, e precisam ser carregados na memória antes de serem executados. Assim, surge a necessidade de gerência de memória, "já que a memória do computador precisaria ser pesquisada para localizar uma área livre para carregar um programa na mesma. Ao ser encerrada a execução do programa, a memória consumida deverá ser liberada, tornar-se disponível para outro usuário quando solicitado.

GERENCIAMENTO E ESCALONAMENTO(Scheduling) de processos também se fazem necessários, para que todos os programas possam ser executados satisfatóriamente. Não existe possibilidade de um programa ser "executado numa área de extensão," negando o funcionamento de um outro programa, criando uma espera impossível para outros usuários. Adicionalmente, alguns programas poderiam precisar ser executados mais frequentemente que outros, que é o caso das checagens de comunicações de rede - Internet, ou imprimindo. Algumas vezes, alguns programas precisam ser suspensos temporariamente, e serem posteriormente reiniciados, assim introduzindo a necessidade da comunicação "inter-programas."

EXERCICÍOS PROPOSTOS:

1.Qual o outro nome conhecido do Núcleo?
2.Como você classificaria o SISTEMA OPERACIONAL?
3.Qual a diferença entre um sistema "mono-tarefa e outro multi-processo?
4.Qual a diferença entre Memória ROM e ou EPROM?
5.No o seu entendimento, o que é um "PROCESSO" dentro "SO?"

Informática Instrumental - 1º Técnico

PROGRAMANDO UM COMPUTADOR - 1º Técnico em Informática

Sabemos que programar, é elaborar uma sequência de instruções a um computaor. Ao desenvolvermos um "Software" - um programa que será executado em um "PC", estamos efetivamente, desenvolvendo um Programa convertido em uma sequência de instruções que serão executadas pelo sistema do Computador. Quando falamos "em sistemas operacionais," estamos no referindon mais de uma sucessão de passos a serem executados do que propriamente de um Programa. Modernamente,só uma parte de um programa é carregado em cada instante. A parte complementar do programa, espera numa unidade de disco até que seja necessário. Assim, economiza-se espaço de memória.
Os processadores, são os Executores dos Programas no Computador. Sintetizando, diríamos que um Chip é um Processador que executa as instruções de um programa. Esses processadores executam milhões de instruções por segundo conforme estudamos no Bimestre passado.

UM PROCESSO
Processo ou tarefa, é parte de um programa em execução. Todo programa se compõe de várias tarefas, cada uma com um funcionamento especifico, como uma unidade autônoma - talvez se comunicando entre si periodicamente.

FILEIRA,LINHA - A Thread:
Thread é uma parte separada de um processo; logicamente um Processo compõem-se de várias "Threads", todas sendo executadas separadamente. Exemplificando: uma trataria de gráficos na tela, outra da impressão, outra thread trataria do mouse e o teclado. Esse processo tem um bom tempo de resposta em programas de certas complexidades. No momento citaremos o Windows NT com um exemplo de um Sistema Operacional que suporta multi-thread.

SISTEMAS OPERACIONAIS DE MULTI-PROCESSO
Existem Sistemas que executam sómente um único processo, e outros executam múltiplo processos de cada vez. Grande parte dos Computadores estão baseados em um único processador, que só pode executar uma única instrução por vez. Se assim é, como se torna possivel um único processador executar múltiplos processos? Devemos observar, que o processador do Computador, executa um processo por um período curto de tempo, e na sequência muda para o próximo processo, e assim vai contínuamente;lembrem-se que o processo é executado por milhões de instruções por segundo, dando-nos a impressão de execução ao mesmo tempo.
Havendo um sistema de computador que executa mais de um processo de cada vez, algum mecanismo deve ser utilizado para intercalar o tempo de uma tarefa para a outra. Atualmente existem dois métodos principais sendo usados para fazer a troca:

1. Escalonamento por Cooperação - indica que uma tarefa que está sendo executada atualmente deixará voluntáriamente em algum momento o processador e permitirá que outros processos sejam executados;

2. Escalonamento Preemptivo significa que uma tarefa concorrente será interrompida e o processador se dedicará a outro processo em estado de espera.

Obs>: Somente o programa de 32Bits em Windows 95, utiliza escalonamento preemptivo. Os programas de 16 Bits ainda são escalonados cooperativamente, significando que ainda é fácil para um programa de 16bits travar um Computador Windows.

CONTEXTO DE TROCA

Ocorrendo a mudança de um processo para outro (efetuado pelo processador), o seu estado deve ser salvo, pois algum tempo depois, será reiniciado o processo e continuará como se nunca fora interrompido. O próximo processo em espera será ativado. Essa é uma ação que envolve carga nos registradores do processador e na memória, com todos os dados previamente salvos, reiniciando na instrução que seria excutada quando houvesse a última interrupção. A esse processo de mudança é dado o nome de "Troca de Contexto". Ao período de tempo que um processo execute antes de ser trocado é chamado de "Time Slice ou período de quantum."