Sistemas Operacionais

Conceitos de Hardware e Software

TADS - SO – Aula 3
Prof. Charles Fortes
chalkmaster@gmail.com
Sobre seu Professor

2
Charles Fortes

Web
Desktop
Mobile
Desenvolvimento
Practices
Patterns
Modeling

Arquitetura

Git
TFS
SV
N

Versionamento

MSSQ
L
MySQ
L
NoSQL

Bancos de
Dados

MATC – Microsoft Technical Audience Contributo
Embaixador Windows
Antes de mais nada

4
Algum Aluno Começando Hoje?
Acolhida
Entrada tardia e Recuperação Paralela

5
Atualizando a Turma

6
Time

TADS-SO

0

X3

|

x 30

48015

Visão geral de SO

Course Clear!
|

x 15

47 – 9 – 6 + 0 + 15 = 47
47 * 3 * 165 = 23265

7
Estamos em dia com nosso PEA

8
Mundo 1 – Hardware e software

Hardware e software

Reposição 1

Visão Geral de SO

Conceitos Básicos de SO
9
Previously on TADS-SO...

10
Conceitos básicos de SO

O que é um sistema operacional?
É um programa ou conjunto de programas cuja função é gerenciar os recursos do
hardware

Funções básicas
Facilidade de acesso aos recursos do sistema + Compartilhar os recursos de forma
organizada e protegida

11
Conceitos básicos de SO

Hardware e Software são logicamente equivalentes

Sistemas monoprogramáveis executam apenas uma tarefa por vez

Sistemas multiprogramáveis executam várias tarefas “ao mesmo tempo”

Sistemas multiprocessadores possuem vários processadores, além disto podem ser
fortemente ou fracamente acoplados.

12
Hardware e Software

13
Hardware

14
São os componentes físicos que compõe os sistemas
computacionais.

Agrupados nas unidades funcionais: Processador, Memória
Principal e Dispositivos de Entrada e Saída.

15
A principal função é controlar e executar instruções
presentes na memória principal através de operações
básicas como somar, subtrair, comparar e movimentar
dados.

Composto por Unidade de Controle, Unidade Lógica e
Aritmética, e registradores.

Processador

16
UC - Unidade de Controle
Responsável por gerenciar as atividades de todos os componentes, como
gravar dados no HD ou buscar uma instrução na memória.

ULA – Unidade lógica e aritmética
Responsável pela lógica (testes e comparações) e aritméticas (somas e
subtrações).

17
Registradores

Principal função é armazenar os dados temporariamente. Eles podem ser de uso
geral (podem ser manipulados diretamente) ou de uso específico (informações
de controle do processador ou do SO).

18
Registradores
CI – Contador de Instruções

Endereço da próxima instrução a ser executada

AP - Apontador de pilha

Endereço de memória do topo da pilha de execução

PSW – Registrador de Status (program status word)

Informações sobre a execução da instrução. Altera de acordo com seu resulta

19
Armazena instruções e dados em células, geralmente de 8
bits.
As células podem ser acessadas por um endereço único
A especificação do endereço é feita através do registrador
MAR – Memory Address Registrer. Já o MBR (Memory Buffer
Registrer) guarda o conteúdo de uma ou mais célula.

Memória
Principal

20
Memória
1

2

3

4

Endereço da memória

5

6

7

8

9

10

Programa XYZ

Programa XYZ
3

4

5

6

7

8

Variável B

Variável A
Sub-Rotina
(Soma)

Sub-Rotina
(Enviar E-mail)
21
22
A memória principal pode ser volátil ou não volátil
A RAM (Random Access Memory) é volátil, já a ROM (ReadOnly Memory) e a
EPROM (Erasable Programmable ROM) são do tipo não volátil.
23
Memória Cache

É uma memória volátil de alta velocidade com pequena capacidade de
armazenamento. Usada para tentar minimizar a diferença do tempo de
processamento com o de acesso a memória principal.

Armazena uma pequena parte dos dados da memória principal. Antes do
processador ir na memória principal, ele verifica no cache.

24
Principio da localidade
É a tendência do processador de referenciar instruções e dados localizados em
endereços próximos.

A maioria dos processadores apresenta uma estrutura com cache em níveis.
Cache L1, L2, L3...

25
Memória secundária

É o armazenamento de dados “permanente” e não volátil.

HD, DVD, PenDrive...

HD

26
Dispositivos de Entrada e Saída

Comunicação entre o SO e o mundo externo. Podem ser
memórias secundárias ou de Interface Homem Máquina.

IHM

27
Barramento ou bus
Os barramentos fornecem a comunicação entre os diferentes componentes.
Podendo ser Barramento processador-memória, Barramento de E/S e Barramento
backplane.
Possuem linhas de controle e linhas de dados.

Pipelining
Técnica que permite ao processador executar instruções paralelamente porém em
estágios diferentes. Como numa linha de montagem.

28
Arquitetura RISC vs CISC
A linguagem de máquina é o que o processador realmente entende e está
diretamente ligado a sua arquitetura, que comumente vão ser RISC ou CISC.
RISC – Reduced Instrucion Set Computer
Poucas instruções, em geral não chegam a acessar a memória principal,
usando geralmente muitos registradores.
CISC – Complex Instruction Set Computers
Instruções complexas interpretadas por microprogramas. Poucos
registradores e dificultam a implementação do pipelinig.

29
30
Software

31
Tradutor
Após a programação, as instruções devem ser traduzidas para linguagem de
máquina. Quando o tradutor traduz, ele gera o módulo-objeto
Montadores e Compiladores
Montadores (assembler) geram módulos-objetos não executáveis específicos
para cada processador.
Compiladores (alto nível) geram programas não executáveis em linguagem
de máquina a partir da linguagem de auto nível.

32
Interpretador
Não geram módulo-objeto. Executam instruções escritas em alto nível
imediatamente.

A maior desvantagem é o tempo gasto para a
tradução, porém são muito flexíveis.

33
Linker
Gera a partir de vários módulos-objeto um único programa executável.

Resolve as referencias externas e realoca a região de memória para carga
do programa.

Alguns compiladores conseguem resolver estas referencias e isto faz com
que o linker não seja usado, passando pelo processo de link dinâmico.
Porém neste caso o overhead é muito grande.

34
Loader
Responsável por carregar na memória principal um programa para ser executado.

Absoluto ou Realocável

Absoluto quando é necessário apenas conhecer o endereço inicial e o
tamanho do módulo.
Realocável quando o programa pode ser carregado em qualquer posição da
memória.

35
Depurador
Encontrar os BUG’s do sistema. Permite acompanhar toda a execução de um
programa.

Recursos
•

Acompanhar a execução de instrução por instrução

•

Visualizar o conteúdo de uma variável

•

Implementar pontos de parada do sistema (breakpoints)

•

Especificar que quando uma variável for modificada receba uma
mensagem (watchpoint)

36
Próxima Aula

37
1º Teste de Conhecimento
Aula 1 – Conceitos Básicos de SO
Aula 2 – Visão Geral de SO
Aula 3 – Hardware e Software
Obrigatório apenas para alunos que entraram na semana do dia 17, para os
que entraram depois é opcional

38
Avaliações, trabalhos e afins

Testes e Avaliações

Objetivo: Avaliar o que o aluno absorveu do
conteúdo ministrado, identificar
necessidades de reforço do conteúdo e até
mesmo necessidades de alteração na forma
de abordagem e material.

39
Avaliações, trabalhos e afins

Passar é fácil!
Pode escolher uma questão para não responder
O “total” é baseado naquele que tirou a maior nota
na prova

Pode trazer uma folha escrita a mão (individual)
para consulta
Imagine uma prova de 10 questões que vale 10 pontos.
Se o aluno que acertou mais questões acertar 8 das 10 questões, ele
ganha 10, e os demais ganham a nota na proporção de 8 e não de 10.
Então se você acertou 4 questões, vai tirar 5.
40
Avaliações, trabalhos e afins

Avaliações – Desafios do Professor
Saber o que os alunos aprenderam certo
Saber o que entenderam errado
Saber o que eles não entenderam nada

41
Avaliações, trabalhos e afins

Avaliações – O que atrapalha

Ruídos nos dados

42
Avaliações, trabalhos e afins

Então...

A cada duas questões erradas eu elimino uma questão certa

Se preocupe em aprender
Não estou aqui pra reprovar ninguém

43
Dúvidas?

chalkmaster@gmail.com

Mais conteúdo relacionado

PPTX
Sistemas Operacionais - Aula 8 - Sincronização e Comunicação entre Processos
PPTX
Sistemas Operacionais - Aula 5 - Concorrência
PPTX
Sistemas Operacionais - Aula 7 - Processos e Threads
PPTX
Sistemas Operacionais - Aula 4 - Revisão e Exercícios
PPTX
Sistemas Operacionais - Aula 2 - Visão Geral de Sistemas Operacionais
PPTX
Sistemas Operacionais - Aula 6 - Estrutura do Sistema Operacional
PDF
Fundamentos de Sistemas Operacionais - Aula 2 - Conceitos Iniciais
PDF
Fundamentos de Sistemas Operacionais - Aula 1 - Introdução à disciplina
Sistemas Operacionais - Aula 8 - Sincronização e Comunicação entre Processos
Sistemas Operacionais - Aula 5 - Concorrência
Sistemas Operacionais - Aula 7 - Processos e Threads
Sistemas Operacionais - Aula 4 - Revisão e Exercícios
Sistemas Operacionais - Aula 2 - Visão Geral de Sistemas Operacionais
Sistemas Operacionais - Aula 6 - Estrutura do Sistema Operacional
Fundamentos de Sistemas Operacionais - Aula 2 - Conceitos Iniciais
Fundamentos de Sistemas Operacionais - Aula 1 - Introdução à disciplina

Mais procurados (20)

PDF
Fundamentos de Sistemas Operacionais - Aula 3 - Arquiteturas de Sistemas Oper...
PDF
Sistemas operacionais
PPT
SO - Aula 05 - Concorrencia
PPT
Sistemas operacionais
PPT
Gerências de Processos: Threads
PDF
Sistemas operacionais
PPTX
Componentes do Sistema operacional
PPTX
Classificação – sistemas operativos
PPT
Apostila 5 processos e threads
PDF
Sistemas operacionais lista de exercicios
PPT
Visão geral do sistema operacional
ODP
Sistemas Operacionais - 2 - Tipos de Sistemas Computacionais
PPT
Visão Geral: Estruturas do Sistema Operacional
PPTX
Sistemas Operacionais e Mercado de Trabalho
PDF
Resumo de S.O.
PPT
DOC
Sistemas operativos m5 11º ano - ficha formativa nº1
PDF
Conceitos básicos de sistemas operacionais
PPT
ApresentaçãO2 Sistema Operacional
PPT
Estruturas de Sistemas Operacionais
Fundamentos de Sistemas Operacionais - Aula 3 - Arquiteturas de Sistemas Oper...
Sistemas operacionais
SO - Aula 05 - Concorrencia
Sistemas operacionais
Gerências de Processos: Threads
Sistemas operacionais
Componentes do Sistema operacional
Classificação – sistemas operativos
Apostila 5 processos e threads
Sistemas operacionais lista de exercicios
Visão geral do sistema operacional
Sistemas Operacionais - 2 - Tipos de Sistemas Computacionais
Visão Geral: Estruturas do Sistema Operacional
Sistemas Operacionais e Mercado de Trabalho
Resumo de S.O.
Sistemas operativos m5 11º ano - ficha formativa nº1
Conceitos básicos de sistemas operacionais
ApresentaçãO2 Sistema Operacional
Estruturas de Sistemas Operacionais
Anúncio

Destaque (20)

PDF
Noções básicas de computação hardware
PPT
Lambda Expressions
PPTX
Apresentação prof e materia
PPSX
Introdução a Desenvolvimento de Jogos HTML 5 para Windows 8 com Html5Quintus
PPTX
Metodologias ageis
PPTX
Desenvolvimento de software seguro
PPT
Arquitetura e Manutenção de Computadores
PPTX
Conceitos – Do Homem à Máquina
PDF
Introdução ao TDD
PPTX
PE2 - Funções e Structs
PPTX
Programação Estruturada 2 - Revisão C
PPTX
Programação Genetica
PPTX
PE-I - Apresentação Professor
PPTX
MVC Pattern
PPTX
IA - Apresentação do Professor
PPTX
Medição de esforço - Como combrar meus freelas
PPTX
LPC - aula 1 - Introdução .NET
PPTX
Sistemas Operacionais - Aula 9 - Gerencia de Recursos
PPTX
Programação Estruturada 2 - Apresentação do Professor
PPTX
PE1 - Comandos de Decisão
Noções básicas de computação hardware
Lambda Expressions
Apresentação prof e materia
Introdução a Desenvolvimento de Jogos HTML 5 para Windows 8 com Html5Quintus
Metodologias ageis
Desenvolvimento de software seguro
Arquitetura e Manutenção de Computadores
Conceitos – Do Homem à Máquina
Introdução ao TDD
PE2 - Funções e Structs
Programação Estruturada 2 - Revisão C
Programação Genetica
PE-I - Apresentação Professor
MVC Pattern
IA - Apresentação do Professor
Medição de esforço - Como combrar meus freelas
LPC - aula 1 - Introdução .NET
Sistemas Operacionais - Aula 9 - Gerencia de Recursos
Programação Estruturada 2 - Apresentação do Professor
PE1 - Comandos de Decisão
Anúncio

Semelhante a Sistemas Operacionais - Aula 3 - Hardware e Software (20)

PDF
Sistemas Operacionais - Aula 03 (Conceitos de hardware e software)
PPT
SO - Aula 02 - Conceitos
PDF
parte2 fundamentos de arquitetura 1 e 2 pdf
PDF
Introdução a computação 04
PDF
Introdução a computação 04 (1)
PDF
Resumo sistemas operativos - joao marques
PDF
Aula 01b - Conceitos de Hardware e Software.pdf
PPTX
Aula 01 - Introducao aos Sistemas Operacionais.pptx
PPT
Aula 10 Software - sistema operacional e aplicativos
PPT
Introdução a Sistemas Operacionais
PDF
Webinar: Porque o RTOS não faz o que eu quero?
PPT
AULA1-ConceitosBasicos.ppt verificar as possíveis atualizações
PPTX
Aula 2 sistemas operacionais
PPT
Aula1 conceitos basicos
PPT
Aula de-introducao-z os
PPTX
SISTEMAS OPERACIOANIS 20.01.2023.pptx
PDF
2 organização do sistema operativo - sistemas operativos
PPT
SO-aula01diversidadeLgbtqiatbsjashjsnhjhjankjns.ppt
PDF
1 - introducao.pdf
PDF
Aula 1 - Fundamento de Hardware e Software para arquitetura de computadores.
Sistemas Operacionais - Aula 03 (Conceitos de hardware e software)
SO - Aula 02 - Conceitos
parte2 fundamentos de arquitetura 1 e 2 pdf
Introdução a computação 04
Introdução a computação 04 (1)
Resumo sistemas operativos - joao marques
Aula 01b - Conceitos de Hardware e Software.pdf
Aula 01 - Introducao aos Sistemas Operacionais.pptx
Aula 10 Software - sistema operacional e aplicativos
Introdução a Sistemas Operacionais
Webinar: Porque o RTOS não faz o que eu quero?
AULA1-ConceitosBasicos.ppt verificar as possíveis atualizações
Aula 2 sistemas operacionais
Aula1 conceitos basicos
Aula de-introducao-z os
SISTEMAS OPERACIOANIS 20.01.2023.pptx
2 organização do sistema operativo - sistemas operativos
SO-aula01diversidadeLgbtqiatbsjashjsnhjhjankjns.ppt
1 - introducao.pdf
Aula 1 - Fundamento de Hardware e Software para arquitetura de computadores.

Mais de Charles Fortes (11)

PPTX
Acesso a banco de dados com entity framework
PPTX
Pdm -final
PPTX
Pitagoras - Introdução a Programação Orientada a Objetos - Revisão Final
PPTX
Pitagoras - Introdução a Programação Orientada a Objetos - Conceitos
PPTX
Pitagoras - Introdução a Programação Orientada a Objetos - Encapsulamento, Ac...
PPTX
inteligência artificial - fuzzy - mineração
PPTX
IA - Introdução Inteligência Artificial
PPTX
PE1 - Revisão e Matéria sobre Laços (FOR, WHILE, DO-WHILE)
PPTX
LPC - Apresentação do Professor
PPTX
Economia global: França e Inglaterra
PPTX
Sistemas Operacionais - Aula 1 - História e Introdução a SO
Acesso a banco de dados com entity framework
Pdm -final
Pitagoras - Introdução a Programação Orientada a Objetos - Revisão Final
Pitagoras - Introdução a Programação Orientada a Objetos - Conceitos
Pitagoras - Introdução a Programação Orientada a Objetos - Encapsulamento, Ac...
inteligência artificial - fuzzy - mineração
IA - Introdução Inteligência Artificial
PE1 - Revisão e Matéria sobre Laços (FOR, WHILE, DO-WHILE)
LPC - Apresentação do Professor
Economia global: França e Inglaterra
Sistemas Operacionais - Aula 1 - História e Introdução a SO

Sistemas Operacionais - Aula 3 - Hardware e Software

  • 1. Sistemas Operacionais Conceitos de Hardware e Software TADS - SO – Aula 3 Prof. Charles Fortes chalkmaster@gmail.com
  • 4. Antes de mais nada 4
  • 5. Algum Aluno Começando Hoje? Acolhida Entrada tardia e Recuperação Paralela 5
  • 7. Time TADS-SO 0 X3 | x 30 48015 Visão geral de SO Course Clear! | x 15 47 – 9 – 6 + 0 + 15 = 47 47 * 3 * 165 = 23265 7
  • 8. Estamos em dia com nosso PEA 8
  • 9. Mundo 1 – Hardware e software Hardware e software Reposição 1 Visão Geral de SO Conceitos Básicos de SO 9
  • 11. Conceitos básicos de SO O que é um sistema operacional? É um programa ou conjunto de programas cuja função é gerenciar os recursos do hardware Funções básicas Facilidade de acesso aos recursos do sistema + Compartilhar os recursos de forma organizada e protegida 11
  • 12. Conceitos básicos de SO Hardware e Software são logicamente equivalentes Sistemas monoprogramáveis executam apenas uma tarefa por vez Sistemas multiprogramáveis executam várias tarefas “ao mesmo tempo” Sistemas multiprocessadores possuem vários processadores, além disto podem ser fortemente ou fracamente acoplados. 12
  • 15. São os componentes físicos que compõe os sistemas computacionais. Agrupados nas unidades funcionais: Processador, Memória Principal e Dispositivos de Entrada e Saída. 15
  • 16. A principal função é controlar e executar instruções presentes na memória principal através de operações básicas como somar, subtrair, comparar e movimentar dados. Composto por Unidade de Controle, Unidade Lógica e Aritmética, e registradores. Processador 16
  • 17. UC - Unidade de Controle Responsável por gerenciar as atividades de todos os componentes, como gravar dados no HD ou buscar uma instrução na memória. ULA – Unidade lógica e aritmética Responsável pela lógica (testes e comparações) e aritméticas (somas e subtrações). 17
  • 18. Registradores Principal função é armazenar os dados temporariamente. Eles podem ser de uso geral (podem ser manipulados diretamente) ou de uso específico (informações de controle do processador ou do SO). 18
  • 19. Registradores CI – Contador de Instruções Endereço da próxima instrução a ser executada AP - Apontador de pilha Endereço de memória do topo da pilha de execução PSW – Registrador de Status (program status word) Informações sobre a execução da instrução. Altera de acordo com seu resulta 19
  • 20. Armazena instruções e dados em células, geralmente de 8 bits. As células podem ser acessadas por um endereço único A especificação do endereço é feita através do registrador MAR – Memory Address Registrer. Já o MBR (Memory Buffer Registrer) guarda o conteúdo de uma ou mais célula. Memória Principal 20
  • 21. Memória 1 2 3 4 Endereço da memória 5 6 7 8 9 10 Programa XYZ Programa XYZ 3 4 5 6 7 8 Variável B Variável A Sub-Rotina (Soma) Sub-Rotina (Enviar E-mail) 21
  • 22. 22
  • 23. A memória principal pode ser volátil ou não volátil A RAM (Random Access Memory) é volátil, já a ROM (ReadOnly Memory) e a EPROM (Erasable Programmable ROM) são do tipo não volátil. 23
  • 24. Memória Cache É uma memória volátil de alta velocidade com pequena capacidade de armazenamento. Usada para tentar minimizar a diferença do tempo de processamento com o de acesso a memória principal. Armazena uma pequena parte dos dados da memória principal. Antes do processador ir na memória principal, ele verifica no cache. 24
  • 25. Principio da localidade É a tendência do processador de referenciar instruções e dados localizados em endereços próximos. A maioria dos processadores apresenta uma estrutura com cache em níveis. Cache L1, L2, L3... 25
  • 26. Memória secundária É o armazenamento de dados “permanente” e não volátil. HD, DVD, PenDrive... HD 26
  • 27. Dispositivos de Entrada e Saída Comunicação entre o SO e o mundo externo. Podem ser memórias secundárias ou de Interface Homem Máquina. IHM 27
  • 28. Barramento ou bus Os barramentos fornecem a comunicação entre os diferentes componentes. Podendo ser Barramento processador-memória, Barramento de E/S e Barramento backplane. Possuem linhas de controle e linhas de dados. Pipelining Técnica que permite ao processador executar instruções paralelamente porém em estágios diferentes. Como numa linha de montagem. 28
  • 29. Arquitetura RISC vs CISC A linguagem de máquina é o que o processador realmente entende e está diretamente ligado a sua arquitetura, que comumente vão ser RISC ou CISC. RISC – Reduced Instrucion Set Computer Poucas instruções, em geral não chegam a acessar a memória principal, usando geralmente muitos registradores. CISC – Complex Instruction Set Computers Instruções complexas interpretadas por microprogramas. Poucos registradores e dificultam a implementação do pipelinig. 29
  • 30. 30
  • 32. Tradutor Após a programação, as instruções devem ser traduzidas para linguagem de máquina. Quando o tradutor traduz, ele gera o módulo-objeto Montadores e Compiladores Montadores (assembler) geram módulos-objetos não executáveis específicos para cada processador. Compiladores (alto nível) geram programas não executáveis em linguagem de máquina a partir da linguagem de auto nível. 32
  • 33. Interpretador Não geram módulo-objeto. Executam instruções escritas em alto nível imediatamente. A maior desvantagem é o tempo gasto para a tradução, porém são muito flexíveis. 33
  • 34. Linker Gera a partir de vários módulos-objeto um único programa executável. Resolve as referencias externas e realoca a região de memória para carga do programa. Alguns compiladores conseguem resolver estas referencias e isto faz com que o linker não seja usado, passando pelo processo de link dinâmico. Porém neste caso o overhead é muito grande. 34
  • 35. Loader Responsável por carregar na memória principal um programa para ser executado. Absoluto ou Realocável Absoluto quando é necessário apenas conhecer o endereço inicial e o tamanho do módulo. Realocável quando o programa pode ser carregado em qualquer posição da memória. 35
  • 36. Depurador Encontrar os BUG’s do sistema. Permite acompanhar toda a execução de um programa. Recursos • Acompanhar a execução de instrução por instrução • Visualizar o conteúdo de uma variável • Implementar pontos de parada do sistema (breakpoints) • Especificar que quando uma variável for modificada receba uma mensagem (watchpoint) 36
  • 38. 1º Teste de Conhecimento Aula 1 – Conceitos Básicos de SO Aula 2 – Visão Geral de SO Aula 3 – Hardware e Software Obrigatório apenas para alunos que entraram na semana do dia 17, para os que entraram depois é opcional 38
  • 39. Avaliações, trabalhos e afins Testes e Avaliações Objetivo: Avaliar o que o aluno absorveu do conteúdo ministrado, identificar necessidades de reforço do conteúdo e até mesmo necessidades de alteração na forma de abordagem e material. 39
  • 40. Avaliações, trabalhos e afins Passar é fácil! Pode escolher uma questão para não responder O “total” é baseado naquele que tirou a maior nota na prova Pode trazer uma folha escrita a mão (individual) para consulta Imagine uma prova de 10 questões que vale 10 pontos. Se o aluno que acertou mais questões acertar 8 das 10 questões, ele ganha 10, e os demais ganham a nota na proporção de 8 e não de 10. Então se você acertou 4 questões, vai tirar 5. 40
  • 41. Avaliações, trabalhos e afins Avaliações – Desafios do Professor Saber o que os alunos aprenderam certo Saber o que entenderam errado Saber o que eles não entenderam nada 41
  • 42. Avaliações, trabalhos e afins Avaliações – O que atrapalha Ruídos nos dados 42
  • 43. Avaliações, trabalhos e afins Então... A cada duas questões erradas eu elimino uma questão certa Se preocupe em aprender Não estou aqui pra reprovar ninguém 43