fá pessoal tudo bem então vamos dar continuidade aqui ah sobre o assunto sistema de diretórios né de um sistema operacional e só pra gente recapitular né e retomar aqui o fio da meada a gente terminou falando sobre atributos de um ah de um diretório de um arquivo tá eh no final das contas os atributos são basicamente os mesmos num sistema baseado em un né como por exemplo uma distribuição Linux e vai funcionar da mesma forma pro iOS pro Android tá acho que você já entendeu nessa na altura do do campeonato aqui acho que você já
entendeu que esses conceitos eles são Gerais né pros sistemas baseados em outros sistemas a base né na grande maioria vai ser o Unix tá e a gente não trabalha mais com Unix mas todo o legado do Unix né ã vem por exemplo pro Linux que foi baseado no Unix Ah assim como o iOS né que é baseado no Darwin que também é baseado no Unix o Android que é basicamente uma distribuição Linux tá então falar que ah nunca mexi no Linux é mentira né Você tem um um iOS Ou você tem um Android você já
mexeu né O que é diferente né da gente olhar para essa talinha preta como tá aqui na no exemplo do slide é a abstração da da interface gráfica né Ah mas eu eu não eu não digito comandos eu toco com com dedo no num num aplicativo né Eh faço swipe jogo para cima arrasto etc isso tudo é uma abstração do que tá ali por trás tá E os atributos vão ser basicamente os mesmos no Windows lembra o Windows sempre foge a regra tá porque quando a Microsoft né quando o billgates decidiu lá atrás né fazer
comprar o sistema que depois ele no me o dos etc ele eles caminharam num né num caminho diferente mas o conceito ainda assim é o mesmo tá no Windows se você clicar lá com o botão direito propriedades ã né e dá uma olhada lá nos atributos você vai ver que você vai ter um monte de caixinhas né de checkbox que vai tá lá é possível acessar e né quem pode acessar para quem trabalha numa rede e tem por exemplo o Active directory né você vai ter lá possibilidade de configurar um usuário né qual usuário pode
abrir esse arquivo e qual grupo de usuário pode ler esse arquivo Tá qual grupo de usuários ou qual usuário pode salvar esse aplicativo Esse arquivo tá então tem uma série de atributos que são os mesmos só que no Windows é um pouquinho diferente né A forma como vai visualizar mas ali né por debaixo ali da da da abstração do sistema operacional é a mesma que a gente vai ver aqui tá por isso que os exemplos na sua Grand grande maioria e você vai ver ali uma telinha preta do Linux tá porque é onde a gente
consegue ver a essência desse conceito Beleza então só para relembrar aqui ó a gente possui alguns e aliás os arquivos e os diretórios possuem alguns atributos eh que eles já vê de criação tá o próprio sistema operacional já vai atribuir isso para eles como como por exemplo o tamanho né então ah qual o tamanho do arquivo Qual o tamanho do diretório tá tá E aqui no tamanho do diretório tem uma particularidade que eu vou te mostrar na próxima aula prática Tá mas tem lá o tamanho o criador a permissão a data Ah mas data do
quê data de acesso data de criação data de modificação tá é o que eu já comentei numa aula passada que é o que se chama que a gente chama de mactime modification access tá então é um acrônimo pro a data de criação data de modificação a data de acesso daquele diretório ou arquivo Isso serve pro sistema operacional manter um controle e até para você ter um um controle sobre isso e para um administrador de sistema ou para administrador do do so ali manar um log né Então imagina que eh uma um servidor ali uma máquina
foi comprometida sofreu um ataque né um hacker ã entrou ali naquele servidor naquela máquina e tal acessou um arquivo Então como é que a gente consegue saber quais arquivos foram acessados eh né em comparação com a original então o sistema operacional usa isso para manter um log tá então esses aqui são por exemplo alguns atributos que o so já define a gente tem outros atributos tá a gente pode colocar por exemplo senhas né ah e demais atributos que a gente pode olhar ali e depois a gente até dá uma olhada melhor na prática Tá mas
saiba aqui atributos são essas informaçõezinhas que vão servir como ah controle né tanto controle ã de um administrador né e tal ou seu próprio controle né ah qual o arquivo que eu acessei primeiro né Qual o arquivo que eu que eu criei por último qual arquivo que eu criei primeiro você baixou dois arquivos com mesmo com nomes parecidos lá né aí salvou um dois ou sei lá né você organiza lá por data você clica lá na na pastinha lá por por data como é que ele consegue organizar por data porque tem esses atributos tá se
você olhar aqui na nessa nessa caixinha preta aqui né que é um pedaço do terminal aqui de um terminal Linux Ah comando LS Você já conhece né mas o que que foi feito aqui foi feito um comando LS para listar o conteúdo de um diretório o Men L para colocar no formato de lista e o h para colocar aqui no formato de deixar mais humanizado ou seja ser mais fácil de entender as informações né então aqui eu tô vendo aqui ó 480 by 326 by né e aqui você tem aqui lá Total oito né então
tem oito arquivos né entre arquivos e diretórios tem oito elementos dentro desse diretório onde foi feito esse LS tem aqui as permissões né rwx rwx rwx tá Então essas são permissões de acesso de usuário do do dono né de do grupo e outros tá por isso que são 9 bits eu tenho separação de 3 bits para cada uma dessas flags rwx né então R de read w de write e o x né é de Execute talvez deveria ser um e talvez mas escolheram um X lá na na hora da criação então ficou sim tá o
r representa a leitura então quando tem R setado eu posso ler o arquivo tá quando tem o w setado eu consigo escrever no arquivo e quando tem o x setado eu consigo executar Ah mas como que eu executo um arquivo só que dá dois cliques não é o arquivo não é um xz exato só que no Windows né ah os arquivos executáveis são os P xz certo mas para um sistema operacional a extensão né O que vem depois do nome o ponto Qualquer coisa que vem depois do nome é indiferente eu poderia ter um ponto
jpg e ele ser um executável tranquilamente eu poderia ter um PDF e ele ter um executável tanto que e existe uma técnica né E que consiste basicamente em colocar código executável dentro de um PDF E aí quando a pessoa dá dois cliques lá no pdf ele Dana todo o computador lá tá isso existe é uma é um conceito que a gente chama de arquivos poliglotas Tá mas por quê Bom nesse caso dos arquivos poliglotas é é uma outra técnica mas a gente poderia fazer eu vou mostrar já já um arquivo PDF se é um arquivo
executável porque o que manda o arquivo ser executável ou não é a permissão de execução e não a extensão dele tá a extensão dele e eu quero que você lembre disso ela serve única e exclusivamente paraa interface gráfica saber mostrar tzin ali né então por exemplo se é uma imagem você vai ver que tem uma tzin ali de de imagem ou muitas vezes al até troca né aquela tamb pelo uma miniatura da imagem Então você foi lá tirou uma foto sei lá da da praia Pode ser que o seu S vai trocar aquela tzin que
seria uma imagem genérica pela imagem da praia né uma minizinha imagem da praia né pode ser mas o que que é isso isso é interface gráfica trazendo essa facilidade barra experiência para você isso acontece no mobile né Você vai lá na tua galeria lá no teu smartphone você não tem um arquivo genérico você vai ver lá que tem uma um mini uma mini foto da foto que você tirou né uma mini foto da primeira da primeira do primeiro frame do vídeo por exemplo mas isso é por conta da aplicação que está lendo e interpretando aquele
conjunto de bytes conforme a gente já conversou na aula passada daquele arquivo em si tá então se eu pegar a a e sei lá né é que todo né se a gente pegar o Windows ele vai ter lá o visualizador de imagens vai ter lá um player de vídeo Mas se a gente tivesse um sistema operacional se a gente pegar um sistema operacional totalmente capado se eu pegar uma distribuição Linux sem nada zerada ou ir lá e desinstalar o que é possível você vai ver que você não vai conseguir dar dois cliques e dar Play
num vídeo você não vai ver a imagem a imagem até vai né Eh porque isso já tá intrínseco a gente teria que fazer um trabalho muito grande para para tirar esse eh leitor de imagens tá mas se a gente criasse um software nosso que gera arquivo de uma forma e interpreta de uma forma específica né esse esse esse software ser terceirizado né imagina que a gente vai gerar uma um uma imagem nova né Eh que ao invés de ser jpg vai ser x y z e você não prover isso pro sistema operacional ele não vai
conseguir ler vai aparecer lá uma imagem genérica uma imagem vazia tenta criar um arquivo no Windows encher de tranqueira e salvar ponto XY Z você vai ver que vai parecer um tipo um arquivozilla esse arquivo tá então a extensão serve única e exclusivamente para uma comodidade do usuário o temão operacional vai vai ler esta extensão e vai falar tá Qual o software daqui que consegue interpretar esse conjunto de bytes ou seja sei lá né ou essa esse arranjado de informações aqui seja ele como for que consegue ler interpretar Ah é o pdf Beleza então mostra
lá o iconeinstagram Acrobat instalado Então você vai ver lá que o teu PDF vai virar uma miniatur Zinha com a logo do Acrobat Ah não não uso Acrobat Eu uso o outro lá beleza Vai ser uma miniatur Zinha do outro lá tá então só serve para isso então o que diz que um arquivo é um executável né é essa permissão de X no Windows quando você cria um ponto xz o Windows ali né por detrás das Cortinas vai colocar essa permissão de execução Ah tem como tirar tem tem como tirar E aí ele não não
vira um executável Tá mas então quer dizer que só com a se eu colocar x ele vira um ex x entre aspas ele vira um executável não né um executável no Windows ah a gente tem algumas possibilidades né ele teria que ser um Binário um xz é um binário né então lembra lá em C quando você programa em C que você faz lá o teu hello world você faz lá o teu print né para mandar uma mensagem O que que a gente faz para poder executar compila lembra que o compilador faz ele traduz aquele código
de alto nível que você escreveu o teu if o teu print né etc traduz isso para uma linguagem objeto né vai montar isso e transforma isso em binário então aquele arquivo xe ele é um binário tá por isso que a gente chama de binário vai ser zeros e uns que o sistema entende beleza e ele foi compilado em cima de bibliotecas daquele sistema operacional específico né então se você compilar num 64 bits você não vai conseguir rodar provavelmente num 32 bits que ele não vai entender né o tanto de palavras que o 64 bits consegue
processar tá então tem essa diferença além do exe no Windows você vai ter lá os pon Bat os pon comom né você vai ter os arquivos de powershell por exemplo então tem alguns tipos de arquivos que é possível ser executado mesmo que eles não sejam Binário um arquivo ponto Bat se você salvar se você colocar lá um dir e salvar ponto Bat ele vai ser lido vai ser interpretado pelo CMD do Windows pelo Shell do Windows tá E aí você vai ver lá que ele vai abrir uma telinha Preta vai correr um e vai fechar
se você abrir ele dentro no cmd ele vai executar e vai ficar lá parado tá então isso é um arquivo que a gente chama arquivo de lote então né Não quero que você decore isso mas só para lembrar que executáveis não são só x não são só binários tá no Linux a história é a mesma tá então em todos os sistemas baseados em Unix a história é a mesma um executável é um arquivo que tem essa permissão de X porém né eu tenho binários no Linux o binário do Linux é o elf tá hã ef
Elf tá ele é como se fosse o xz lá do Windows é o compilado que se torna binário Tá mas do mesmo jeito eu posso criar arquivos como um arquivo ã um B script por exemplo né Ele é um script assim como o ponto bate lá do Windows e Quem interpreta é o Bash ou a Shell que você chamar aqui do Linux tá ou né dos sistemas baseado em Unix Beleza então é isso que eu queria passar sobre esses atributos tá isso aqui é importante a gente lembrar tá dando sequência aqui a gente falou rapidinho
aqui sobre Ah diretórios tá então diretório é como é o modo como o sistema operacional vai organizar os diferentes arquivos num disco Então quando você vê lá vou criar uma pasta sei lá da minha viagem data underline data tal ou viagem né data tal aquilo lá é uma forma como o sistema operacional né você tá abstraindo né lá no sistema de arquivos você tá abstraindo na forma como você vai ver as informações né organização final dessas informações tá então é a estrutura de dados né Ah então é estrutura de dados que eu tive lá quando
eu vi em C é uma estrutura de dados é é uma estrutura de dados de forma abstraída tá então essa estrutura de dados contém entradas associadas ao arquivo ou aos arquivos que você vai guardar dentro dessa pasta a pasta em si pessoal ela não existe Ah mas eu tô vendo quando eu clico lá no C2 pontos ou quando eu dou um dirou quando eu dou um LS é mas ela não existe tá ela é meramente virtual ela não existe fisicamente o que existe é um é um valor tá é um um um valor de entrada
lá na tabela do sistema de arquivos que vai est nomeado vai ter o rótulo né esse rótulo que você colocou viagem do dia tal mas o diretório em si não existe existe só essa entrada e aí todos os arquivos vão estar Associados a essa entrada que é a informação que eu já vou mostrar já já tá Ah então né Essa estrutura de dados que contém essas entradas associadas aos arquivos dentro dela tá E ela né Se a gente colocar uma permissão nesta pasta né setar atributos para essa pasta todos os arquivos dentro dela vão estar
submetido a eles então se eu tiver um arquivo que tem permissões de escrita por exemplo e eu tirar a permissão de leitura do diretório eu não consigo chegar até o arquivo porque ele está contido dentro desse diretório tá então o diretório né ou pasta que é a mesma coisa passa diretório né enfim é essa estrutura de dados que vai armazenar arquivos lá dentro tá os arquivos são Associados a essas informações que vão ser chamados de diretórios que eu já vou mostrar já já e os atributos dessa pasta vão impactar nos arquivos lá dentro Ok então
quando um um arquivo é aberto quando você dá dois cliques lá no arquivo né o s vai procurar a entrada né Essa a vai pegar o valor dessa entrada e vai procurar na estrutura de dados tentar identificar ali Quais são as parzinhos tá eh Ok então passando aqui aqui agora a gente tem uns conceitos um pouco mais avançados um pouco mais avançados que são os conceitos de user file directory e o Master file directory tá o ufd ou mfd que em disciplinas mais avançadas como perícia forense você vai acabar topando com essas informações vai dar
PR gente vê isso daqui na prática e são duas informações muito importantes tá então se você é usuário num sistema multiusuário assim como a grande maioria dos sistemas né o Windows o Linux e etc você vai ter out existe a possibilidade de ter outros usuários então sei lá no teu computador você pode criar o teu usuário fulano e pode ter usuário ciclano né O que que faz com que eu consiga manter essa organização são esses essas duas informações tá o ufd para cada usuário existe essa entrada de ufd que vai definir aqui o diretório em
particular deste usuário tá o mfd ele é um nível adicional de controle que vai ser indexado pelo nome do usuário e cada entrada tá cada entrada de diretório então o diretório ele vai ser né ah constituído lá né a pasta final vai ser o u FD tá e o diretório em si né o caminho de diretórios vai ser constituído pelo mfd que é o nome do usuário mais a pasta tá então isso aqui vai servir para você ver já já a estrutura de árvore tá Ah bom feita essa introdução a gente vai dar uma pausa
por aqui na próxima aula a gente segue e finaliza essa esse conteúdo Beleza então te vejo já já