;(function() { window.createMeasureObserver = (measureName) => { var markPrefix = `_uol-measure-${measureName}-${new Date().getTime()}`; performance.mark(`${markPrefix}-start`); return { end: function() { performance.mark(`${markPrefix}-end`); performance.measure(`uol-measure-${measureName}`, `${markPrefix}-start`, `${markPrefix}-end`); performance.clearMarks(`${markPrefix}-start`); performance.clearMarks(`${markPrefix}-end`); } } }; /** * Gerenciador de eventos */ window.gevent = { stack: [], RUN_ONCE: true, on: function(name, callback, once) { this.stack.push([name, callback, !!once]); }, emit: function(name, args) { for (var i = this.stack.length, item; i--;) { item = this.stack[i]; if (item[0] === name) { item[1](args); if (item[2]) { this.stack.splice(i, 1); } } } } }; var runningSearch = false; var hadAnEvent = true; var elementsToWatch = window.elementsToWatch = new Map(); var innerHeight = window.innerHeight; // timestamp da última rodada do requestAnimationFrame // É usado para limitar a procura por elementos visíveis. var lastAnimationTS = 0; // verifica se elemento está no viewport do usuário var isElementInViewport = function(el) { var rect = el.getBoundingClientRect(); var clientHeight = window.innerHeight || document.documentElement.clientHeight; // renderizando antes, evitando troca de conteúdo visível no chartbeat-related-content if(el.className.includes('related-content-front')) return true; // garante que usa ao mínimo 280px de margem para fazer o lazyload var margin = clientHeight + Math.max(280, clientHeight * 0.2); // se a base do componente está acima da altura da tela do usuário, está oculto if(rect.bottom < 0 && rect.bottom > margin * -1) { return false; } // se o topo do elemento está abaixo da altura da tela do usuário, está oculto if(rect.top > margin) { return false; } // se a posição do topo é negativa, verifica se a altura dele ainda // compensa o que já foi scrollado if(rect.top < 0 && rect.height + rect.top < 0) { return false; } return true; }; var asynxNextFreeTime = () => { return new Promise((resolve) => { if(window.requestIdleCallback) { window.requestIdleCallback(resolve, { timeout: 5000, }); } else { window.requestAnimationFrame(resolve); } }); }; var asyncValidateIfElIsInViewPort = function(promise, el) { return promise.then(() => { if(el) { if(isElementInViewport(el) == true) { const cb = elementsToWatch.get(el); // remove da lista para não ser disparado novamente elementsToWatch.delete(el); cb(); } } }).then(asynxNextFreeTime); }; // inicia o fluxo de procura de elementos procurados var look = function() { if(window.requestIdleCallback) { window.requestIdleCallback(findByVisibleElements, { timeout: 5000, }); } else { window.requestAnimationFrame(findByVisibleElements); } }; var findByVisibleElements = function(ts) { var elapsedSinceLast = ts - lastAnimationTS; // se não teve nenhum evento que possa alterar a página if(hadAnEvent == false) { return look(); } if(elementsToWatch.size == 0) { return look(); } if(runningSearch == true) { return look(); } // procura por elementos visíveis apenas 5x/seg if(elapsedSinceLast < 1000/5) { return look(); } // atualiza o último ts lastAnimationTS = ts; // reseta status de scroll para não entrar novamente aqui hadAnEvent = false; // indica que está rodando a procura por elementos no viewport runningSearch = true; const done = Array.from(elementsToWatch.keys()).reduce(asyncValidateIfElIsInViewPort, Promise.resolve()); // obtém todos os elementos que podem ter view contabilizados //elementsToWatch.forEach(function(cb, el) { // if(isElementInViewport(el) == true) { // // remove da lista para não ser disparado novamente // elementsToWatch.delete(el); // cb(el); // } //}); done.then(function() { runningSearch = false; }); // reinicia o fluxo de procura look(); }; /** * Quando o elemento `el` entrar no viewport (-20%), cb será disparado. */ window.lazyload = function(el, cb) { if(el.nodeType != Node.ELEMENT_NODE) { throw new Error("element parameter should be a Element Node"); } if(typeof cb !== 'function') { throw new Error("callback parameter should be a Function"); } elementsToWatch.set(el, cb); } var setEvent = function() { hadAnEvent = true; }; window.addEventListener('scroll', setEvent, { capture: true, ive: true }); window.addEventListener('click', setEvent, { ive: true }); window.addEventListener('resize', setEvent, { ive: true }); window.addEventListener('load', setEvent, { once: true, ive: true }); window.addEventListener('DOMContentLoaded', setEvent, { once: true, ive: true }); window.gevent.on('allJSLoadedAndCreated', setEvent, window.gevent.RUN_ONCE); // inicia a validação look(); })();
  • AssineUOL
Topo

Anatel adia edital de leilão do 5G após pedido de vista de conselheiros

Estúdio Rebimboca/UOL
Imagem: Estúdio Rebimboca/UOL

De Tilt, em São Paulo

01/02/2021 13h13Atualizada em 06/02/2021 12h44

Sem tempo, irmão

  • Em reunião sobre edital do 5G, presidente e conselheiro da Anatel pediram vista
  • Termos do leilão só podem ser definidos após posicionamento de todos os conselheiros; por ora, três já votaram
  • Análise inicial descreve obrigações e metas que empresas devem cumprir
  • Leilão do 5G deve ocorrer ainda no primeiro semestre deste ano

A Anatel (Agência Nacional de Telecomunicações), em reunião virtual, adiou a aprovação da proposta de edital para o leilão de frequências do 5G, a internet móvel de quinta geração. O presidente da agência, Leonardo Euler de Morais, e um dos conselheiros pediram vistas do processo. Já foram contabilizados três votos a favor do relatório apresentado pelo conselheiro Carlos Baigorri — além do voto dele próprio, os conselheiros Vicente Aquino e Moisés Moreira já se posicionaram, mas ainda podem mudar até a sessão final.

De acordo com Euler, o tema deve ser votado até o dia 24 de fevereiro. Segundo o regimento da Anatel, os conselheiros podem pedir prorrogação do prazo. Já o leilão está previsto para ser realizado ainda no 1º semestre deste ano.

Mas já é possível ter uma noção das condições envolvidas na licitação. De modo geral, a proposta do conselheiro da Anatel Carlos Baigorri obriga trazer a cobertura 4G ou superior em cidades que ainda não têm este tipo de conexão. Também não há impedimentos de participação de fornecedoras, como a Huawei, além de exigir migração de sinal de TV para uma banda diferente. Por ora, há três votos a favor da análise apresentada por Baigorri.

Como deve ser o leilão 5G

Ao todo serão negociadas quatro faixas de frequências: 700 MHz; 2,3 GHz; 3,5 GHz e 26 GHz. Pense nessas faixas como rodovias no ar por onde circulam os dados, que trafegam por aparelhos conectados. Quando ocorre uma licitação de espectro, é como se essas "estradas" estivessem sendo oferecidas à iniciativa privada.

Dessas, a que foi maior motivo de discussão foi a de 3,5 GHz. Isso porque nessa frequência funciona atualmente a TV parabólica. Quem levar algum lote desta área, terá de auxiliar na distribuição de antenas da banda Ku ,que fica entre 10,7 GHz e 18 GHz. É um processo semelhante com o que aconteceu com o 4G, em que algumas pessoas com o à TV analógica receberam conversores para ter o à TV digital.

Outra questão tem relação com o fato de a rede 5G nessa frequência ter de ser "puro sangue". Nas outras frequências será possível usar a base legada. Então, a operadora que comprar a faixa de 3,5 GHz terá de fazer investimentos pesados —as companhias esperavam que haveria uma transição mais suave da infraestrutura antiga para a nova.

Uma das exigências do governo federal é que quem for operar no espectro de 3,5 GHz deverá também criar uma Rede Segura, uma infraestrutura de fibra óptica para comunicações de órgãos públicos federais.

A proposta atual prevê lotes nacionais na faixa de 700 MHz, que atualmente são usadas para 4G, específicas para 5G (operadoras vão poder juntar faixas que já têm com adicionais para aumentar o espectro). As operadoras interessadas terão ainda como contrapartida a exigência de oferecer 4G em estradas, sobretudo em vias federais. Já a faixa de 2,3 GHz tem como exigência 95% da cobertura de municípios sem 4G, além da ativação do 5G.

A única faixa sem maiores exigências é a de 26 GHz. Esta frequência deve ser usada para operadoras em locais urbanos com grande densidade de o.